MCP tools reference
Every private-beta Juno MCP tool, its input schema, and a ready-to-send tools/call example — generated live from the MCP tool manifest.
Create study
create_study Brief Juno to create a research study from plain-language guidance: describe what the user wants to learn, and Juno designs the interview — objectives, screener questions, and the questions the interviewer will ask. When documents are part of the brief, upload them over REST first and pass their file_ids here. Authoring runs in the background: returns a job handle; poll get_authoring_status until the study and its brief are ready. New studies start in Test mode so the user can simulate the interview shape before Go live. Test mode uses no credits, provides no analysis or exports, and is not for real participants.Update study refine_study Update a study with further plain-language instructions from the user, in Test mode or Live mode. The refine_study tool name is retained for wire compatibility. When new documents are part of the update, upload them over REST first and pass their file_ids here. Each update creates a new design version and returns a job handle; poll get_authoring_status.Check study job get_authoring_status Track a study Juno is authoring. create_study and refine_study return a job_id; poll this tool until status is 'ready', at which point study_id and the authored brief (title, objectives, and interview questions) are populated. 'failed' means authoring did not complete — brief Juno again.Simulate interview simulate_study In Test mode, simulate the interview before the user selects Go live: Juno plays both sides — the interviewer runs the study's real interview, and a synthetic participant answers it — producing a sample transcript. Optionally steer the participant with a persona description. Returns a job handle; poll get_simulation_status to watch the transcript grow turn by turn. Simulation uses no credits, provides no analysis or exports, and is not real participant research. The current tool does not enforce mode=test; callers must honor that contract.Check simulation get_simulation_status Track a simulation started with simulate_study and read its sample transcript. The response carries the turns produced so far, so you can render the conversation while it runs; once status is 'completed' the transcript is final. Simulated interviews are a Test-mode action — never counted, analysed, or exported as real participant interviews.Set study mode set_study_mode Set the established mode wire field. 'test' means Test mode: no credits, analysis, exports, or real participant research. 'live' means Live mode: participant interviews deduct credits and enable analysis and exports; setting it is the API equivalent of Go live. 'paused' and 'closed' are technical collection states. The first Go live runs validation and needs studies:golive; other changes need studies:write. Returns the settled value plus the invite link.Get invite link get_interview_link Get the study's invite link — the durable URL the user shares with participants — plus its current lifecycle value. In Test mode it opens the safe preview; after Go live it admits real participants to Live mode.Check your API key whoami Verify the private-beta API key Juno issued and see what it can do: its organisation, API data environment, and scopes. The key environment is separate from a study's Test mode or Live mode. Any valid key may call this; no specific scope is required.List studies list_studies List your organisation's studies, newest first. A study is one research project: an AI-moderated interview Juno designs and runs, plus the analysis built from the answers. Page through newest created first. Page by passing the next_cursor from the previous response.Get study get_study Fetch one study, including its current brief — the study design Juno authored: title, objectives, and the questions the interviewer asks. The brief is null until an authoring job has completed. Org-scoped; 404 if not found.Start export start_export In Live mode, export completed participant interviews as CSV — transcripts and answers with the organisation's PII-redaction settings applied. Test-mode simulations cannot be exported. Returns a job handle; poll get_export_status, then download from GET /v1/api/exports/{job_id}/download.Check export status get_export_status Track an export started with start_export. Poll until ready is true, then download the CSV from the REST endpoint GET /v1/api/exports/{job_id}/download. 'failed' means the export did not complete — start a new one.List interviews list_interviews List participant interviews, newest first — use this to learn when interviews happen. Each entry carries the interview's state, timings, and the values captured from the participant's invite link, plus a link into Juno. Transcripts and participant identity are deliberately not included; use start_export for full data. Filter by study_id and status, and page by passing the next_cursor from the previous response. Check is_test before acting: Test-mode rehearsals are listed too.Get interview get_interview Fetch one interview by id. Same projection as list_interviews: state, timings, invite-link values, and a permalink — no transcript or participant identity. Org-scoped; 404 if not found.Create participant link create_participant_link Create an invite link carrying what you already know about the people who will open it — company, role, the systems they use. Juno briefs the interviewer with it so the interview does not ask for details you supplied. By default the link is for a group: send one link to everyone in that segment. Set audience='person' when the context identifies one individual and you want the finished interview matched back to their record; that link then belongs to whoever opens it first. The context is recorded on the resulting interview and returned by list_interviews.