---
title: "MCP-palvelin: yhdistä Claude, ChatGPT ja Cursor avoimiin työpaikkoihin | Metaintro"
canonical: "https://beta.metaintro.com/fi/developers/mcp"
language: "fi"
author: "Metaintro"
---

MCP-palvelin · ilmainen

# Yhdistä tekoälysi Metaintroon

Anna Claudelle, ChatGPT:lle, Cursorille tai mille tahansa MCP-asiakasohjelmalle pääsy avoimiin työpaikkailmoituksiin, työnantajiin ja markkinadataan. Kun kirjaudut, se voi hoitaa myös omaa työnhakuasi: profiiliasi, ansioluetteloitasi, seuraamiasi työpaikkoja ja seuraavia askeleitasi.

[Lisää asiakasohjelmaasi](#setup)[Selaa työkaluja](#tools)
Kaikki yhteydet ovat ilmaisia. Haku ei vaadi tiliä.

_Kokeile Claude Codessa_

```
claude mcp add --transport http metaintro-public https://www.metaintro.com/api/mcp/public
```

Yhteydet

## Kolme osoitetta, kullakin oma ulottuvuutensa

Osoite ratkaisee, mihin agenttisi pääsee käsiksi. Aloita julkisesta ja kirjaudu, kun haluat agentin hoitavan omaa työnhakuasi.

- Ei kirjautumista ### Julkinen Palvelimen osoite`https://www.metaintro.com/api/mcp/public` Avoimet työpaikkailmoitukset, samankaltaiset työpaikat, työnantajaprofiilit, yrityksen avoimet tehtävät, ketkä rekrytoivat lähelläsi ja työmarkkinat mille tahansa haulle. Vain luku. **Kirjautuminen**: Ei tarvita. Enintään 30 työkalukutsua minuutissa kustakin osoitteesta. **Työkalut**: 7
- Oma tilisi ### Henkilökohtainen Palvelimen osoite`https://www.metaintro.com/api/mcp` Oma työnhakusi: profiili, ansioluettelot, seuratut työpaikat, seuraavat askeleet, hakemuskirjaukset, muistutukset, asiakirjat ja keskustelu Metaintron avustajan kanssa. search_actions ja run_action antavat pääsyn kaikkiin muihin sinulle sallittuihin toimintoihin. **Kirjautuminen**: Kirjaudu OAuthilla tai käytä henkilökohtaista API-avainta kohdasta Asetukset > Agentit. **Työkalut**: 59
- Henkilöstö ### Organisaatio Palvelimen osoite`https://www.metaintro.com/api/mcp/org/<slug>` Ohjaajille ja henkilöstölle, ja vain oman organisaatiosi jäsenille: asiakkaat, työjono, hälytykset, muistiinpanot, tapaamiset, sitoumukset, jäsenten työpaikkataulut, sähköpostilla lähetetyt työpaikkalistat, työllistymis- ja tulosraportit, tehtävät, avoimien työpaikkojen haku sekä Cabinetin työnhaku- ja luonnostyökalut. **Kirjautuminen**: Henkilöstön kirjautuminen. Organisaatiosi tarkka osoite löytyy organisaation kohdasta Asetukset > Agentit. **Työkalut**: 92

Käyttöönotto

## Lisää se asiakasohjelmaasi

Useimmat asiakasohjelmat hoitavat kirjautumisen itse: lisää osoite ja hyväksy kirjautuminen selaimessa. Käytä julkista osoitetta, jos haluat etsiä ilman tiliä.

```
## ClaudeAvaa Claude-sovelluksessa tai claude.ai-sivustolla Asetukset ja sitten Liittimet, ja valitse Lisää mukautettu liitin. Anna nimeksi Metaintro ja liitä jokin osoitteista.## ChatGPTAvaa ChatGPT:ssä Asetukset ja sitten Liittimet, ja luo mukautettu liitin jollakin osoitteista. Valitse OAuth, kun sinulta kysytään kirjautumistapaa.> Tilauksestasi riippuen mukautetut liittimet voivat vaatia kehittäjätilan tai työtilan ylläpitäjän hyväksynnän.Oma työnhakusi, kirjautuen: `https://www.metaintro.com/api/mcp`Vain haku, ei kirjautumista: `https://www.metaintro.com/api/mcp/public`
```

Asenna CursoriinAsenna VS Codeen
Asentaa henkilökohtaisen yhteyden. Asiakasohjelma pyytää sinua kirjautumaan.

### Käytätkö mieluummin API-avainta?

Luo henkilökohtainen avain kohdassa Asetukset > Agentit ja lähetä se Authorization: Bearer -otsakkeessa. Kuka tahansa, jolla on avain, voi toimia sinuna, joten pidä se poissa jaetuista tiedostoista ja keskusteluista.

[Luo avain](/fi/settings/agents)

Työkaluluettelo

## Kaikki työkalut siten kuin agenttisi ne näkee

Nimet ja kuvaukset ovat täsmälleen sitä, mitä palvelin lähettää agenteille, joten ne pysyvät englanniksi. MCP Appsia tukevat asiakasohjelmat näyttävät tulokset vuorovaikutteisina työpaikkakortteina.

**Julkiset työkalut7**

- `search_jobs`LukuTyöpaikkakortit Search jobs Search live job postings from employer career sites and job boards by what the person is looking for, with optional filters for title, location, remote work and pay. Returns up to 10 job cards a page; page with offset or cursor. Each job opens at https://www.metaintro.com/job/<id>; read one in full with get_job, and its employer with get_company and the job's companySlug.
- `get_job`LukuTyöpaikkakortit Read a job posting Read one job posting in full, by the id a search returned: description, requirements, pay, location and the employer's apply link.
- `get_market_insights`Luku Read the job market for a search Summarize the live job market for a search: how many jobs match, the median listed pay, the most common work arrangement and the top requested skills, with how the search was understood. Takes the same query and filters as search_jobs.
- `get_company`Luku Read a company Read an employer's profile by its slug (companySlug on a job): what it does, size, how it is hiring (open roles, 30-day change, departments, locations, remote share, how long roles stay open), observed pay bands, work arrangement, benefits and recent events. Its page is https://www.metaintro.com/company/<slug>.
- `list_company_jobs`LukuTyöpaikkakortit List a company's open jobs List an employer's open jobs by its slug, newest first. Page with cursor.
- `find_similar_jobs`LukuTyöpaikkakortit Find similar jobs Find live jobs like one job, by the id a search returned: the same kind of role in the same place (or remote, when the job is remote), as up to 10 job cards. Use it when a job is closed, a near miss, or the person wants more like it.
- `get_local_demand`Luku Read local job demand Read which kinds of roles are hiring most in a place (city, region, country): open jobs by role category, with total open jobs, employers and sectors. When a place has too few role types it widens to the region, the country or worldwide; scope and locationLabel say which. Use it when someone does not yet know what to look for.

**Henkilökohtaiset työkalut59**

- `chat`Kirjoitus Chat with Metaintro Send a text message to Metaintro’s personal assistant. Omit threadId to start a conversation; pass the returned threadId to continue. Uses the same assistant and tools as the app for job discovery, résumé building and tailoring, interview preparation, and profile help. Returns the reply and artifacts. Requires write access because the assistant can update your data. Use the messaging actions for shared conversations; your approval preference applies. If interrupted, read_thread before retrying; never resend blindly.
- `whoami`Luku Who am I Who this agent acts as, what its key may do, and the organizations where the person works as staff (with each one's slug and id, which the case manager tools take). Call it first.
- `search_actions`Luku Search actions Find any action this agent can run beyond the named tools: everything a job seeker or a case manager can do in Metaintro. Returns each action's name, whether it reads, writes or needs a person's approval, and its inputSchema. Run one with run_action.
- `get_action_request`Luku Check a waiting action Read one action your agent asked for that waits for you: whether it is still waiting, approved and done, declined or expired, and its result once it ran. Takes the request id a held call returned.
- `run_action`Kirjoitus Run an action Run one action that search_actions found, with its input. It runs as you, with the same access you have in the app. Your approvalMode from whoami determines whether a write runs immediately or waits for approval. Reads run immediately.
- `get_my_profile`Luku Read my profile Read your master profile: experience, skills, education, preferences, and its version number (pass it as expectedVersion when you change it).
- `update_profile_section`Kirjoitus Replace a profile section Replace one section of your master profile. Read the profile first and pass its version as expectedVersion; a stale version is refused so nothing newer is overwritten.
- `update_profile_fields`Kirjoitus Change profile fields Change individual fields of your master profile with set, append, remove or upsert operations. Pass the profile's current version as expectedVersion.
- `list_profile_changes`Luku List profile changes List earlier versions of your master profile, newest first, with who or what changed it.
- `get_search_preferences`Luku Read my search preferences Read the saved search filters and last search your job matching runs on. Pay and dealbreakers are in your profile.
- `update_dealbreakers`Kirjoitus Set dealbreakers Set the things a job must not have. Pass the profile's current version as expectedVersion.
- `update_compensation`Kirjoitus Set pay expectations Set the pay you are looking for. Pass the profile's current version as expectedVersion.
- `get_master_resume`Luku Read my master résumé Read your primary résumé, the one Metaintro tailors from, with its content and design.
- `list_resumes`Luku List my résumés List the résumés you built in Metaintro.
- `get_resume`Luku Read a résumé Read one résumé you built, by its id.
- `update_resume`Kirjoitus Edit a résumé Change a résumé's content. Pass the updatedAt you read as expectedUpdatedAt so an edit made elsewhere is not overwritten. Set createVersion to keep the old text as a version.
- `list_uploaded_resumes`Luku List uploaded résumé files List the résumé files you uploaded.
- `create_resume`Kirjoitus Build a résumé from my profile Build a résumé from your existing master profile. To create or tailor one conversationally, use chat.
- `export_resume`Kirjoitus Export a résumé as PDF Export one of your résumés as a PDF for you to download. This does not submit an application.
- `set_master_resume`Kirjoitus Choose my master résumé Choose which of your résumés is the primary résumé used for tailoring.
- `duplicate_resume`Kirjoitus Copy a résumé Make an editable copy of one of your résumés.
- `list_resume_versions`Luku List résumé versions Read the saved versions of one of your résumés before restoring or editing it.
- `get_resume_download`Luku Download an uploaded résumé Get a download URL for one of your uploaded résumé files. Treat the returned URL as private.
- `search_jobs`LukuTyöpaikkakortit Search jobs Search live job postings from employer career sites and job boards by what the person is looking for, with optional filters for title, location, remote work and pay. Returns up to 10 job cards a page; page with offset or cursor. Each job opens at https://www.metaintro.com/job/<id>; read one in full with get_job, and its employer with get_company and the job's companySlug.
- `get_job`LukuTyöpaikkakortit Read a job posting Read one job posting in full, by the id a search returned: description, requirements, pay, location and the employer's apply link.
- `get_market_insights`Luku Read the job market for a search Summarize the live job market for a search: how many jobs match, the median listed pay, the most common work arrangement and the top requested skills, with how the search was understood. Takes the same query and filters as search_jobs.
- `get_company`Luku Read a company Read an employer's profile by its slug (companySlug on a job): what it does, size, how it is hiring (open roles, 30-day change, departments, locations, remote share, how long roles stay open), observed pay bands, work arrangement, benefits and recent events. Its page is https://www.metaintro.com/company/<slug>.
- `list_company_jobs`LukuTyöpaikkakortit List a company's open jobs List an employer's open jobs by its slug, newest first. Page with cursor.
- `find_similar_jobs`LukuTyöpaikkakortit Find similar jobs Find live jobs like one job, by the id a search returned: the same kind of role in the same place (or remote, when the job is remote), as up to 10 job cards. Use it when a job is closed, a near miss, or the person wants more like it.
- `get_local_demand`Luku Read local job demand Read which kinds of roles are hiring most in a place (city, region, country): open jobs by role category, with total open jobs, employers and sectors. When a place has too few role types it widens to the region, the country or worldwide; scope and locationLabel say which. Use it when someone does not yet know what to look for.
- `list_matched_jobs`Luku List jobs matched to me List the jobs Metaintro matched to you. Set newOnly to see only ones you have not opened. Page with cursor.
- `get_next_steps`Luku What to do next Read what needs doing in your job search, most urgent first: interviews in the next two days (INTERVIEW), reminders that are due (REMINDER), application deadlines within a week (DEADLINE), postings that closed while you were applying (CLOSED_POSTING), applications with no news for 14 days (NO_ACTIVITY) and applications started but not confirmed (UNCONFIRMED_APPLICATION). Each item names its tracked job. Also returns how many jobs sit in each stage, your weekly momentum and, in a program, this week's goals. Call it at the start of a session.
- `list_my_jobs`Luku List my jobs List every job and lead you are tracking, grouped by stage.
- `get_my_job`Luku Read one of my jobs Read one tracked job or lead in full, with its notes, contacts, interviews, offer and reminders.
- `check_resume_fit`Kirjoitus Check my résumé against a job Score how well your base résumé fits a tracked job and save the score and its details on the job. savedJobId comes from list_my_jobs. Refused until you have uploaded a résumé.
- `save_job`Kirjoitus Save a job or lead Start tracking a job or a lead. Saving the same job again updates supplied fields, including title and company, and records another save activity. idempotencyKey does not deduplicate saves; read the tracked job before retrying a call whose outcome is unknown.
- `update_my_job`Kirjoitus Update a tracked job Move a tracked job to another stage, or change its pay, location, note or interview.
- `add_job_note`Kirjoitus Add a note to a job Add a note to a tracked job or lead.
- `record_application`Kirjoitus Record an application Record that you applied to a tracked job: how, when, and with which résumé.
- `set_job_reminder`Kirjoitus Set a job reminder Set a reminder on a tracked job, such as a follow-up date.
- `get_weekly_work_search`Luku Read my weekly work search Read one week of your work search activity, as unemployment programs ask for it. Only for people an organization enrolled in its work-search program (whoami's workSearchProgram.enrolled); anyone else is refused, so don't offer it to them.
- `export_weekly_work_search`Kirjoitus Export my weekly work search Export one week of your work search as CSV (week is current or that week's start date, YYYY-MM-DD), to attach to an unemployment claim's weekly certification. Same program rule as get_weekly_work_search.
- `set_email_preferences`Kirjoitus Change my emails and notifications Turn Metaintro's emails and push notifications on or off. similarJobsEnabled emails new jobs like the ones you saved (Metaintro's job alerts); careerDigestEnabled the career digest; caseThreadEmailEnabled email from your case manager's conversation; pushNotificationsEnabled phone notifications; marketingEnabled, partnerIntrosEnabled and onboardingEmailsEnabled the rest. Send only the switches to change; it returns them all.
- `get_memory`Luku Read what Metaintro remembers Read the things Metaintro's chat has remembered about you and your search.
- `list_threads`Luku List my conversations List your conversations, newest first. Page with cursor.
- `read_thread`Luku Read a conversation Read the messages in one of your conversations, including your case manager's. Page with cursor.
- `record_job_contact`Kirjoitus Save a job contact Save a contact on a tracked job. This records information; it does not contact the person.
- `record_interview`Kirjoitus Record an interview Record an interview and its details on a tracked job. Use chat for interview preparation.
- `record_offer`Kirjoitus Record a job offer Record offer terms on a tracked job. This does not accept or decline an offer with the employer.
- `record_follow_up`Kirjoitus Record a follow-up Record a follow-up you already made on a tracked job. This does not send a message.
- `update_job_reminder`Kirjoitus Update a job reminder Update or complete an existing reminder for a tracked job.
- `list_application_materials`Luku List application materials Read the résumé and supporting documents prepared for a tracked job.
- `get_job_document`Luku Read an application document Read a saved application document such as a cover letter or interview notes.
- `save_job_document`Kirjoitus Save an application document Save document content on one of your tracked jobs, using the version fields in the schema to avoid overwriting newer work.
- `export_job_document`Kirjoitus Export an application document Export a prepared document for your own use. This does not send it to an employer.
- `check_job_availability`Kirjoitus Check whether a job is open Check the availability of a job you are tracking before applying.
- `get_case_manager`Luku Read my case manager's status See who your case manager is on a conversation and whether a request to them is open.
- `message_case_manager`Kirjoitus Message my case manager Request a message to your case manager in one of your conversations. Your approval setting decides whether it waits for you; pass reason so you can tell what you are approving. Pass a stable clientMessageId so a retry sends it once.
- `request_case_manager`Kirjoitus Ask for my case manager Ask your case manager to join a conversation, with an optional message and priority.

Lisää toimintoja työkaluilla search_actions ja run_action183

**Organisaation työkalut92**

- `whoami`Luku Who am I Who this agent acts as, what its key may do, and the organizations where the person works as staff (with each one's slug and id, which the case manager tools take). Call it first.
- `search_actions`Luku Search actions Find any action this agent can run beyond the named tools: everything a job seeker or a case manager can do in Metaintro. Returns each action's name, whether it reads, writes or needs a person's approval, and its inputSchema. Run one with run_action.
- `get_action_request`Luku Check a waiting action Read one action your agent asked for that waits for you: whether it is still waiting, approved and done, declined or expired, and its result once it ran. Takes the request id a held call returned.
- `run_action`Kirjoitus Run an action Run one action that search_actions found, with its input. It runs as you, with the same access you have in the app. Your approvalMode from whoami determines whether a write runs immediately or waits for approval. Reads run immediately.
- `search_jobs`LukuTyöpaikkakortit Search jobs Search live job postings from employer career sites and job boards by what the person is looking for, with optional filters for title, location, remote work and pay. Returns up to 10 job cards a page; page with offset or cursor. Each job opens at https://www.metaintro.com/job/<id>; read one in full with get_job, and its employer with get_company and the job's companySlug.
- `get_job`LukuTyöpaikkakortit Read a job posting Read one job posting in full, by the id a search returned: description, requirements, pay, location and the employer's apply link.
- `get_market_insights`Luku Read the job market for a search Summarize the live job market for a search: how many jobs match, the median listed pay, the most common work arrangement and the top requested skills, with how the search was understood. Takes the same query and filters as search_jobs.
- `get_company`Luku Read a company Read an employer's profile by its slug (companySlug on a job): what it does, size, how it is hiring (open roles, 30-day change, departments, locations, remote share, how long roles stay open), observed pay bands, work arrangement, benefits and recent events. Its page is https://www.metaintro.com/company/<slug>.
- `list_company_jobs`LukuTyöpaikkakortit List a company's open jobs List an employer's open jobs by its slug, newest first. Page with cursor.
- `find_similar_jobs`LukuTyöpaikkakortit Find similar jobs Find live jobs like one job, by the id a search returned: the same kind of role in the same place (or remote, when the job is remote), as up to 10 job cards. Use it when a job is closed, a near miss, or the person wants more like it.
- `get_local_demand`Luku Read local job demand Read which kinds of roles are hiring most in a place (city, region, country): open jobs by role category, with total open jobs, employers and sectors. When a place has too few role types it widens to the region, the country or worldwide; scope and locationLabel say which. Use it when someone does not yet know what to look for.
- `list_members`Luku List members List an organization's members you may see, with stage, status, case manager, last contact and next action. Filter and sort; page with cursor.
- `find_member`Luku Find a member Find members of an organization by name or email.
- `get_member`Luku Read a member Read one member's record in an organization.
- `get_member_profile`Luku Read a member's profile Read a member's master profile.
- `get_member_brief`Luku Read a member's brief Read the latest brief on a member: where their search stands and what to do next. Use it as a handoff summary.
- `generate_member_brief`Kirjoitus Write a fresh member brief Write a fresh brief on a member from their current record, for a handoff or a meeting.
- `get_what_matters`Luku Read what matters to a member Read the lines on what matters most in a member's search. Until staff save their own list, they come from the latest brief.
- `set_what_matters`Kirjoitus Set what matters to a member Replace the lines on what matters most in a member's search. Send every line to keep, with source STAFF for any line you wrote or changed.
- `list_member_activity`Luku List a member's activity List a member's timeline: notes, check-ins, outreach, applications and stage changes. Page with cursor.
- `add_member_note`Kirjoitus Add a note on a member Add a note to a member's record. Every note is stored the same way; type is recorded only in the audit log.
- `log_check_in`Kirjoitus Log a check-in Log a check-in you had with a member: the day, how, which direction, a note and the next follow-up date.
- `list_check_ins`Luku List check-ins List an organization's check-ins, by status and owner.
- `log_outreach`Kirjoitus Log outreach Record contact with an employer or anyone else on a member's behalf: the channel, the direction, what was said and when.
- `update_pipeline_stage`Kirjoitus Move a member's stage Move a member to another pipeline stage: intake, searching, résumé building, applying, interviewing, offer or placed.
- `update_member_status`Kirjoitus Change a member's status Change a member's status in the organization. Depending on the person's approval setting it may wait for approval; pass reason so they can tell what they are approving.
- `assign_case_manager`Kirjoitus Assign a case manager Assign a member to a case manager. Depending on the person's approval setting it may wait for approval; pass reason so they can tell what they are approving.
- `list_case_managers`Luku List case managers List an organization's active case managers by name, up to 100 a page, with each one's caseload. Narrow it with search (part of a name or email) or staffIds; pass nextCursor back as cursor for the next page.
- `list_job_lists`Luku List job lists sent List the job lists sent to a member, newest first, with how many roles reached each status. Pass nextCursor back as cursor for older lists; read one list's roles with get_job_list.
- `get_job_list`Luku Read a job list Read one job list in full: each role, its status and feedback, and the attachments sent with it.
- `update_role_status`Kirjoitus Update a role's status Record where a member stands on a role from a job list you sent them.
- `get_member_job_board`Luku Read a member's jobs Read every job and lead a member is tracking, by stage.
- `move_member_job`Kirjoitus Move a member's job Move a job on a member's My jobs board to another stage: SAVED, APPLYING, APPLIED, INTERVIEWING or OFFERED, or close it as ACCEPTED, REJECTED, WITHDRAWN or NO_REPLY. Activity records you as the one who moved it. id is the job's id from get_member_job_board. Pass provenance when the change comes from something the member said or sent: a note on why, the channel, when they told you (reportedAt) and when it actually happened (occurredAt, which dates the event). The member can see this record.
- `add_member_job_note`Kirjoitus Add a note to a member's job Add a note to a job on a member's board. The member and your team see it, signed with your name. savedJobId is the job's id from get_member_job_board. Pass provenance when the change comes from something the member said or sent: a note on why, the channel, when they told you (reportedAt) and when it actually happened (occurredAt, which dates the event). The member can see this record.
- `record_member_application`Kirjoitus Record a member's application Record that a member applied to a job on their board: how, when (appliedAt) and with which résumé. Moves a saved job to APPLIED. id is the job's id from get_member_job_board. Pass provenance when the change comes from something the member said or sent: a note on why, the channel, when they told you (reportedAt) and when it actually happened (occurredAt, which dates the event). The member can see this record.
- `set_member_job_reminder`Kirjoitus Set a reminder on a member's job Set a reminder on a job on a member's board, such as a follow-up date. The member sees it. id is the job's id from get_member_job_board. Pass provenance when the change comes from something the member said or sent: a note on why, the channel, when they told you (reportedAt) and when it actually happened (occurredAt, which dates the event). The member can see this record.
- `update_member_job_reminder`Kirjoitus Update a reminder on a member's job Complete, cancel or snooze a reminder on a member's job. Snooze needs snoozedUntil. id is the job's id from get_member_job_board. Pass provenance when the change comes from something the member said or sent: a note on why, the channel, when they told you (reportedAt) and when it actually happened (occurredAt, which dates the event). The member can see this record.
- `record_member_job_contact`Kirjoitus Record a contact on a member's job Add or update a person on a member's job: a recruiter, hiring manager or referrer. Pass contactId to update one. id is the job's id from get_member_job_board. Pass provenance when the change comes from something the member said or sent: a note on why, the channel, when they told you (reportedAt) and when it actually happened (occurredAt, which dates the event). The member can see this record.
- `record_member_interview`Kirjoitus Record an interview on a member's job Add or update an interview round on a member's job: when, format and outcome. id is the job's id from get_member_job_board. Pass provenance when the change comes from something the member said or sent: a note on why, the channel, when they told you (reportedAt) and when it actually happened (occurredAt, which dates the event). The member can see this record.
- `record_member_offer`Kirjoitus Record an offer on a member's job Record or update an offer on a member's job: pay, start date, decision deadline and outcome. id is the job's id from get_member_job_board. Pass provenance when the change comes from something the member said or sent: a note on why, the channel, when they told you (reportedAt) and when it actually happened (occurredAt, which dates the event). The member can see this record.
- `archive_member_job`Kirjoitus Archive a member's job Take a job off a member's board. restore_member_job puts it back. id is the job's id from get_member_job_board. Pass provenance when the change comes from something the member said or sent: a note on why, the channel, when they told you (reportedAt) and when it actually happened (occurredAt, which dates the event). The member can see this record.
- `restore_member_job`Kirjoitus Restore a member's job Put an archived job back on a member's board. id is the job's id from get_member_job_board. Pass provenance when the change comes from something the member said or sent: a note on why, the channel, when they told you (reportedAt) and when it actually happened (occurredAt, which dates the event). The member can see this record.
- `log_off_list_application`Kirjoitus Log an application Record an application a member made to a job that was not on a list you sent.
- `get_work_queue`Luku Read my work queue Read the organization's work queue: what is waiting on staff, block by block. Each block holds its first rowsPerBlock rows (25 unless you ask for up to 50), its total (null when only a lower bound is known) and whether more are waiting.
- `list_reply_queue`Luku List members waiting on a reply List members whose newest message waits on a staff reply.
- `read_member_thread`Luku Read a member's conversation Read one of a member's conversations. Page with cursor.
- `add_staff_note`Kirjoitus Add a staff-only note Add a note on a member's conversation that only staff see. The member never sees it.
- `list_tasks`Luku List tasks List an organization's tasks, by status and owner.
- `create_task`Kirjoitus Create a task Create a task, optionally for a member, with a due date.
- `update_task_status`Kirjoitus Change a task's status Change a task's status.
- `list_placements`Luku List placements List an organization's placements (a member's path to a specific job: SOURCING, INTERVIEWING, OFFER, PLACED), newest first, with the member and counts by stage. Filter by stage or memberId; page with page and pageSize (up to 100).
- `list_placement_options`Luku List placements to link List recent placements as short labels (role • company, and the member's name) with their ids, to link a task to one as placementId.
- `record_placement`Kirjoitus Record a placement Record a member's path to a specific job: roleTitle and companyName, the stage (SOURCING unless you say otherwise; PLACED when they were hired), notes and where the role came from (source). Placements are what an organization's outcomes are counted from, so record a hire as PLACED.
- `move_placement_stage`Kirjoitus Move a placement's stage Move a placement to SOURCING, INTERVIEWING, OFFER or PLACED. Pass occurredAt when it happened earlier than now, such as the member's start date. Moving to PLACED counts the member as placed and resolves the placement's stalled alert.
- `update_placement`Kirjoitus Update a placement Correct a placement's role, company, stage, notes or source. Send every field you want to keep; read it with list_placements first.
- `get_outcomes_overview`Luku Read outcomes at a glance Read an organization's outcomes for a period: caseload, new members, members placed, check-ins completed, staff contacts, median reply time, members gone quiet and how many sit at each stage. window sets the period: from and to as YYYY-MM-DD (at most 366 days apart), timeZone as an IANA name such as America/Chicago, unit (day, week or month) for the trend, and weekStart (0 for Sunday, 1 for Monday). Each figure comes with the previous period of the same length, so say what changed. A case manager without broad access sees their own caseload (scope caseload); sample true means the numbers are demonstration data.
- `get_placements_report`Luku Read the placements report Read placements for a period: members placed, placements and offers, median days to placed, open placements by stage, top employers and the most recent placements. window sets the period: from and to as YYYY-MM-DD (at most 366 days apart), timeZone as an IANA name such as America/Chicago, unit (day, week or month) for the trend, and weekStart (0 for Sunday, 1 for Monday). Each figure comes with the previous period of the same length, so say what changed. A case manager without broad access sees their own caseload (scope caseload); sample true means the numbers are demonstration data.
- `get_pipeline_report`Luku Read the pipeline report Read how members move through the pipeline in a period: members at each stage, moves forward and backward, and median days to placed. window sets the period: from and to as YYYY-MM-DD (at most 366 days apart), timeZone as an IANA name such as America/Chicago, unit (day, week or month) for the trend, and weekStart (0 for Sunday, 1 for Monday). Each figure comes with the previous period of the same length, so say what changed. A case manager without broad access sees their own caseload (scope caseload); sample true means the numbers are demonstration data.
- `get_engagement_report`Luku Read the engagement report Read how engaged members were in a period: how many were active, what they did (searched, wrote a message, saved a job, applied, had an interview, got an offer) and the searches they ran most. window sets the period: from and to as YYYY-MM-DD (at most 366 days apart), timeZone as an IANA name such as America/Chicago, unit (day, week or month) for the trend, and weekStart (0 for Sunday, 1 for Monday). Each figure comes with the previous period of the same length, so say what changed. A case manager without broad access sees their own caseload (scope caseload); sample true means the numbers are demonstration data.
- `get_case_work_report`Luku Read the case work report Read the staff's case work in a period: check-ins, contacts by channel, job lists sent, outreach, reply times and each staff member's share. window sets the period: from and to as YYYY-MM-DD (at most 366 days apart), timeZone as an IANA name such as America/Chicago, unit (day, week or month) for the trend, and weekStart (0 for Sunday, 1 for Monday). Each figure comes with the previous period of the same length, so say what changed. A case manager without broad access sees their own caseload (scope caseload); sample true means the numbers are demonstration data.
- `list_promises`Luku List what you promised a member List the promises staff made to a member, open and kept, each with its owner and due date, and whose turn it is in the conversation. Read it before a meeting so nothing promised is forgotten.
- `add_promise`Kirjoitus Record a promise to a member Record something you promised a member, such as sending three warehouse roles by Friday, with a due date (YYYY-MM-DD, or null) and a stable submissionId so a retry records it once. It becomes the member's next action until it is kept.
- `set_promise_kept`Kirjoitus Mark a promise kept Mark a promise to a member kept, or open again with kept false. promiseId comes from list_promises.
- `list_alerts`Luku List alerts List an organization's alerts, newest first: unanswered replies (THREAD_REPLY), overdue or due next actions, members gone quiet, sent job lists with no answer, stalled stages, new members and job card outcomes or feedback. Filter by status (OPEN, ACKNOWLEDGED, RESOLVED) or eventType; page with cursor. Alert types you muted are left out.
- `acknowledge_alert`Kirjoitus Acknowledge an alert Acknowledge an alert: you have seen it and it stays open until it is resolved.
- `resolve_alert`Kirjoitus Resolve an alert Resolve an alert once what it asked for is done. Needs permission to manage the organization.
- `snooze_alert`Kirjoitus Snooze an alert Hide an alert until a date and time (until, ISO 8601), such as the day after a scheduled check-in.
- `list_recommendations`Luku List recommendations for a member List the recommendations on a member's record: prompts to try next, jobs to save, check-ins, follow-up tasks and profile corrections. Filter by status (OPEN, RESOLVED) or threadId. Staff see them on the member's record.
- `recommend_for_member`Kirjoitus Add a recommendation for a member Add a recommendation to a member's record for the team to act on: type NEXT_PROMPT, SAVED_JOB, CHECK_IN, FOLLOW_UP_TASK or PROFILE_CORRECTION, a short title, a description, an optional link (url) and due date (dueAt).
- `resolve_recommendation`Kirjoitus Resolve a recommendation Resolve a recommendation once it is done. recommendationId comes from list_recommendations.
- `update_check_in_status`Kirjoitus Change a check-in's status Mark a scheduled check-in COMPLETED, NO_SHOW or RESCHEDULE, or back to SCHEDULED. id comes from list_check_ins. To record what was said, use log_check_in.
- `update_task`Kirjoitus Update a task Change a task's title, description, member, priority, due date or status. Send every field you want to keep; read it with list_tasks first.
- `list_member_threads`Luku List a member's conversations List a member's recent conversations you may see, newest first, and which one is their case conversation (the one staff and the member share). Read one with read_member_thread.
- `open_case_thread`Kirjoitus Open a member's case conversation Return the member's case conversation, starting it if they have none yet. Returns its threadId and whether it was created. Job list rounds and staff messages go here.
- `get_member_work_search`Luku Read a member's work-search weeks Read a member's weekly work-search record for an unemployment program, newest week first (12 unless you pass limit, up to 52): activities, applications and whether each week met the requirement. Only where the organization keeps work-search evidence.
- `export_member_work_search`Kirjoitus Export a member's work-search record Export a member's work-search activities as CSV, for a program's weekly certification. Needs permission to export data. Depending on the person's approval setting it may wait for approval; pass reason naming the member.
- `log_job_list`Kirjoitus Log a job list sent outside Metaintro Record a job list you already gave a member some other way (email, WhatsApp, in person): the roles (title, employer, location, pay, apply link), when it was sent and a note. Nothing is sent. To send roles to a member from Metaintro, use start_job_list_round.
- `add_job_list_roles`Kirjoitus Add roles to a logged job list Add roles to a job list you logged with log_job_list. Nothing is sent.
- `start_job_list_round`Kirjoitus Start a job list for a member Start the next job list round to email a member; it returns the round's jobListId. Each call starts a new round and carries over roles not yet sent, so first call preview_job_list_round without jobListId: when it returns a round, add to that one. Then add roles with add_job_list_round_role, read it with preview_job_list_round and send it with send_job_list_round. threadId is the member's case conversation, from open_case_thread.
- `add_job_list_round_role`Kirjoitus Add a role to a job list round Add a role to an unsent job list round: title, employer, location, pay (comp), the apply link (applyUrl, required, checked before it is added; a closed posting is refused), why it fits the member (whyFits) and any catch (catchNote). A role already in the round (same employer, title, location, pay and posted date) is kept as it is and returns duplicate: true; only a new apply link replaces the old one, so get whyFits and catchNote right the first time. Use roles from search_jobs or find_similar_jobs and name the evidence in whyFits. threadId is the member's case conversation, from open_case_thread.
- `preview_job_list_round`Luku Preview a job list round Read the email a job list round will send: subject, the roles that will go and the ones skipped or held, the member's constraints it was checked against, and contentHash. Show it to the case manager before sending. round is null when nothing is waiting to send. threadId is the member's case conversation, from open_case_thread.
- `send_job_list_round`Kirjoitus Send a job list round Email a job list round to the member, signed with your name. Pass the contentHash from preview_job_list_round; if the list changed since, it is refused and you preview again. Depending on the person's approval setting it may wait for approval; pass reason naming the member and the roles. threadId is the member's case conversation, from open_case_thread.
- `show_results`Luku show results Cabinet: Show what has already been found and learned for one job seeker: what we know about them and what is still missing, the questions to ask them, what their recent job searches found and why, and the newest reply drafted for them. Use it first for any question about one person, such as why they have no new jobs, what to ask them, what was found for them, or what was drafted. It reads what exists and starts no new work.
- `get_status_report`Kirjoitus get status report Cabinet: Write a new status report on the job seekers: what changed, who is waiting, and who to focus on first. The report the case manager is reading is already in the conversation. Call this only when the case manager asks for a report: a fresh one, one since a date, or one about one person. For a question about one person, use show_results instead. It takes up to half a minute.
- `find_jobs`Kirjoitus find jobs Cabinet: Look for jobs for some of the job seekers, or for everyone. Use it when the case manager asks to find, search for, or look for work for somebody. Each search runs on its own and takes a few minutes.
- `draft_replies`Kirjoitus draft replies Cabinet: Draft the next message to some of the job seekers, or to everyone. Use it when the case manager asks to draft, write, reply to, or check in with somebody. Nothing is sent: each draft waits until the case manager asks to send it.
- `send_replies`Kirjoitus send replies Cabinet: Send the drafted replies to some of the job seekers, or to everyone with a draft waiting. Use it only when the case manager asks to send, such as send it, send Marisol's draft, or send the replies. Each person gets the newest draft written for them in the last two weeks, as it was written, with its roles. A draft goes nowhere when somebody already replied after it, or when the person wrote after it.
- `check_progress`Luku check progress Cabinet: How a search or a draft placed in this chat is going: who is finished, and what came of it. Use it when the case manager asks how it is going, or whether it is done.
- `cancel_request`Kirjoitus cancel request Cabinet: Stop a search or a draft placed in this chat. Work already running stops at its next step, and what it wrote stays.
- `list_job_seekers`Luku list job seekers Cabinet: Who is on the caseload and where each one stands: their stage, how long since anybody reached them, what is booked next, what they want, and what blocks them. Narrow it to the people a question is about.
- `read_activity`Luku read activity Cabinet: Who on the caseload did something over the last days, or did not, person by person. It reads the whole caseload at once, however many people are on it. Use it for questions such as who searched for jobs this week, who has not applied in a month, who has been most active, who did nothing at all, or what Andy and Lena did lately. It answers with how many matched, and lists up to 100 of them with everything each did, when, and the jobs they searched for. Leave activity out to look at everything.
- `count_activity`Luku count activity Cabinet: How many people on the caseload did each thing over the last days, and how many times, with the job titles they searched for most. It reads the whole caseload at once. Use it for questions such as how many people applied this month, what people are searching for, how activity changed week by week, or which stage or city is most active.

Lisää toimintoja työkaluilla search_actions ja run_action271

Kehotteet

## Valmiit työnkulut

MCP-kehotteita tukevat asiakasohjelmat näyttävät nämä komentoina. Valitse yksi, niin agenttisi aloittaa työnkulun yllä olevilla työkaluilla.

### Julkinen

- `find_jobs_that_fit`Find jobs that fit A short list of live jobs that fit what you want, with what still needs checking. Argumentit: role, location (valinnainen)
- `explore_careers`Explore jobs near me What is hiring where you live, and which of those roles suit you. Argumentit: location

### Henkilökohtainen

- `plan_my_day`Plan my job search today What needs doing today: interviews, due reminders, deadlines, stale applications and new matches.
- `find_jobs_that_fit`Find jobs that fit A short list of live jobs that fit what you want, with what still needs checking. Argumentit: role, location (valinnainen)
- `explore_careers`Explore jobs near me What is hiring where you live, and which of those roles suit you. Argumentit: location
- `tailor_resume_for_job`Tailor my résumé to a job A copy of your master résumé tailored to one job, ready to export. Argumentit: jobId
- `prepare_for_interview`Prepare for an interview A briefing on the company and role, likely questions and stories from your experience. Argumentit: savedJobId
- `weekly_review`Review my week What you did this week, what came of it and what to change next week.

### Organisaatio

- `triage_my_caseload`Triage my caseload Who needs you first today and the one action that moves each of them.
- `prepare_member_meeting`Prepare for a member meeting A one-page briefing on a member: where their search stands and what to agree next. Argumentit: memberId
- `find_jobs_for_member`Find jobs for a member Live roles that fit a member, checked against what matters to them, ready to send as a job list. Argumentit: memberId
- `report_outcomes`Report our outcomes A short outcomes report for a period: placements, engagement and case work, with what changed. Argumentit: period (valinnainen)

Sisäänrakennettu turvallisuus

## Agenttisi toimii sinuna, ja vain sinuna

Samat säännöt pätevät jokaisessa yhteydessä ja jokaisessa asiakasohjelmassa.

- ### Toimii yhtenä henkilönä Yhteys toimii sisäänkirjautuneena henkilönä, tämän käyttöoikeuksilla eikä millään muulla.
- ### OAuth ja käyttöalueet Kirjaudu OAuth 2.1:llä, jossa on dynaaminen asiakasrekisteröinti ja PKCE, tai henkilökohtaisella avaimella. Lukeminen ja kirjoittaminen ovat erillisiä käyttöalueita: mcp.read ja mcp.write.
- ### Sinä päätät, mikä odottaa Hyväksyntäasetuksesi ratkaisee, toteutuvatko agentin toiminnot heti, jäävätkö vain arkaluonteiset odottamaan vai jäävätkö kaikki odottamaan. Pidätetyt toiminnot odottavat kohdassa Asetukset > Agentit, kunnes hyväksyt tai hylkäät ne.
- ### Organisaatiot pysyvät erillään Organisaation osoite ulottuu vain kyseisen organisaation jäseniin. Pääsy kaikkiin muihin organisaatioihin estetään.
- ### Kaikki kirjoitustoiminnot kirjataan Jokainen muutos kirjataan agentin tekemäksi henkilön puolesta, ja voit katkaista minkä tahansa agentin yhteyden kohdassa Asetukset > Agentit.
- ### Dataa, ei ohjeita Työpaikkailmoitukset, yrityssivut ja viestit tulevat agentillesi luettavana datana, eivät koskaan noudatettavina ohjeina.

Rajat

## Rajat ja protokolla

Rajat lasketaan avainkohtaisesti minuutissa. Julkisen osoitteen raja lasketaan verkko-osoitekohtaisesti.

**Julkiset työkalukutsut**
: 30 minuutissa

**Lukutoiminnot**
: 240 minuutissa

**Kirjoitustoiminnot**
: 60 minuutissa

**Keskustelu avustajan kanssa**
: 12 minuutissa

**Cabinet-työkalut**
: 12 minuutissa

**Siirtotapa**
: Streamable HTTP, tilaton

**Protokolla**
: 2026-07-28 ja vuoden 2025 versiot

**Tulokset**
: Työpaikkakortit, JSON-teksti ja jäsennelty sisältö

Usein kysytyt kysymykset

## Kysymyksiä MCP-palvelimesta

**Onko se ilmainen?**

Kyllä. Jokainen yhteys on ilmainen: julkinen haku, oma työnhakusi ja organisaatioiden työkalut. Pyyntörajat pitävät palvelun nopeana kaikille.

**Tarvitsenko tilin?**

Et hakuun. Julkisella osoitteella voit etsiä työpaikkoja ja työnantajia ilman kirjautumista. Jos haluat hoitaa omaa profiiliasi, ansioluetteloitasi ja hakemuksiasi, kirjaudu ilmaisella Metaintro-tilillä.

**Mitkä asiakasohjelmat toimivat?**

Mikä tahansa asiakasohjelma, joka tukee etä-MCP-palvelimia Streamable HTTP:n kautta, kuten Claude, Claude Code, ChatGPT, Cursor, VS Code ja Codex. Claude ja ChatGPT näyttävät tulokset vuorovaikutteisina työpaikkakortteina; muut asiakasohjelmat saavat samat tulokset JSON-muodossa.

**Voiko se lähettää työhakemuksia puolestani?**

Ei. Se kirjaa tekemäsi hakemukset, jotta seurantasi pysyy ajan tasalla, eikä koskaan lähetä hakemusta itse. Kaikki, mitä se lähettää puolestasi, kuten viesti asiakasvastaavallesi, noudattaa hyväksyntäasetustasi, joka voi pidättää sen, kunnes hyväksyt sen.

**Miten tämä eroaa työpaikka-API:sta?**

Työpaikka-API on REST-päätepiste omalle koodillesi: yksi avain, työpaikkahaku, 60 pyyntöä minuutissa. MCP-palvelin on tehty tekoälyagenteille: ne löytävät työkalut itse, ja kirjautumisen jälkeen ne voivat hoitaa myös omaa työnhakuasi eivätkä vain etsiä työpaikkoja.

Aloita nyt

## Etsi avoimia työpaikkoja agenttisi kautta – yksi rivi riittää

Lisää julkinen osoite nyt. Kirjaudu myöhemmin, kun haluat agentin hoitavan omaa työnhakuasi.

[Yhdistä tilisi](/fi/settings/agents)[Takaisin Kehittäjät-sivulle](/fi/developers)

[Palaa navigointiin](#main-navigation)