# JobMojito MCP server

Run AI interviews, manage candidates and read hiring analytics on JobMojito.

## Links
- Registry page: https://www.getdrio.com/mcp/com-jobmojito-jobmojito
- Website: https://jobmojito.com

## Install
- Endpoint: https://mcp.jobmojito.com/mcp
- Auth: Not captured

## Setup notes
- Remote endpoint: https://mcp.jobmojito.com/mcp

## Tools
- search_documentation (Search JobMojito documentation) - Search ALL JobMojito documentation. This is the single entry point.

One call searches both documentation sources in parallel and returns a
merged, source-labeled list — you do not need to choose a source or call
a separate tool:
  • "developer" — developer.jobmojito.com: API reference, request/response
    schemas, tables, webhooks, code examples, integration guides.
  • "help" — help.jobmojito.com: recruiter, candidate, and administrator
    product guides (how the platform behaves for end users).

Use this whenever you need to understand how a feature, endpoint, field,
or workflow works — including before calling an action tool you're unsure
about. Then call `get_documentation(url)` with a returned URL to read the
full page. Endpoint: https://mcp.jobmojito.com/mcp
- get_documentation (Read a JobMojito documentation page) - Fetch the full content of a single JobMojito documentation page.

Accepts a URL returned by `search_documentation`. For developer docs the
clean Markdown (.md) variant is fetched automatically. Only
developer.jobmojito.com and help.jobmojito.com URLs are allowed. Endpoint: https://mcp.jobmojito.com/mcp
- list_my_merchants (List merchants you can act as) - FALLBACK merchant list for clients WITHOUT UI support.

Do NOT use this to choose or switch merchants when a UI is available —
call `jobmojito_configuration` instead (it renders an interactive picker),
and do not hand-format a merchant list as text. Use this tool only when the
client cannot render MCP App UI. Returns the user's own account plus any
sub-merchants; after a pick, pass `merchant_id=<chosen id>` on subsequent
calls (OMIT for the own account). Endpoint: https://mcp.jobmojito.com/mcp
- create_interview (Create interview) - [Interviews] Create a new interview and auto-generate its question sequence from position data. The `interview_template_id` you pass also sets the modality (voice-only vs realtime/pre-recorded avatar) — see `list_avatars`.

Creates a new interview / coaching / assessment definition, generates its description, questions and candidate expectations via AI, and provisions default steps. Optionally provisions an embed key. Endpoint: https://mcp.jobmojito.com/mcp
- create_interview_from_questions (Create interview from questions) - [Interviews] Create a new interview from an explicit array of questions.

Creates a new interview definition set from a caller-provided array of questions, builds its default and generated steps, optionally activates it, and optionally creates an embed key. Endpoint: https://mcp.jobmojito.com/mcp
- create_persona (Create role-play persona) - [Interviews] Create a role-play persona: an avatar that plays a defined role in a free-form conversation instead of a scored Q&A interview. Set `persona_role_avatar`/`persona_role_user` for the roles and `opening_line` for the avatar's first spoken line (defaults to a generic 'Hello'). Coaching-platform feature.

FIRST DECIDE `portal`. This endpoint creates two different products and the default is NOT the recruiter one:
- `portal: "interview"` — an INTERVIEW ROLE-PLAY. Use this whenever the goal is to ASSESS or SCREEN candidates: hiring, assessments, sales role-plays for job applicants, anything a recruiter runs. Candidates are invited through the normal invitation flow, results appear in the recruiter's result list, it is billed against merchant credits, and attempts are capped via `interview_attempts` — exactly like an interview.
- `portal: "coaching"` (THE DEFAULT) — a coaching persona for practice/training on the coaching portal. Consumed against the mentee's own coaching credits, self-started from the catalogue, and its results are NOT visible to recruiters. Omitting `portal` gives you this one, so pass `portal: "interview"` explicitly for any recruiting/assessment use case.
The conversation itself behaves identically in both.

The avatar plays a defined role in a free-form conversation instead of running a scored Q&A interview. No AI question/description generation runs; the persona role fields ARE the configuration. The session runs as: a welcome message → the avatar's OPENING LINE (the first thing it says, set via `opening_line`) → the candidate replies and the free-form role-play begins → a closing message. Because there is no question list, `opening_line` is how the avatar starts the scene — set it to a concrete in-character line; if omitted it defaults to a generic "Hello". Set `welcome_message` and `thank_you_message` too — omitting them leaves the generic platform defaults. Also set `candidate_expectations`: it is the yardstick the session is scored against. The four avatar prompts divide up as: `persona_avatar_who_is` (identity and what drives it), `persona_avatar_knowledge` (the private facts it may use), `persona_avatar_progress` (how the conversation is allowed to move forward, and what gates the later personal details), and `persona_avatar_end_conditions` (when to stop). Without `persona_avatar_progress` the avatar has no defined arc and tends to either concede immediately or never concede at all. Provisions the default conversational steps and optionally an embed key. Endpoint: https://mcp.jobmojito.com/mcp
- get_interview_definition (Get interview definition) - [Interviews] Get the definition/configuration of an interview (position).

Retrieves the interview definition for a given interview-definition id or position id. Returns the compiled `calc_definition_json` plus basic metadata. Access is subject to the caller's row-level security. Endpoint: https://mcp.jobmojito.com/mcp
- set_interview_state (Change interview state) - [Interviews] Change the state of an interview/position (e.g. open, closed).

Changes the lifecycle status of an interview or position (draft, active, archived, preparing, completed, deleted) and/or manages its embed key. Provide at least one of `status` or `is_embedded`. Endpoint: https://mcp.jobmojito.com/mcp
- generate_interview_url (Generate shareable interview link) - [Interviews] Generate a signed public interview URL/token.

Generates a public, token-signed URL for an existing interview, profile, or result. The required id fields depend on `type`. Endpoint: https://mcp.jobmojito.com/mcp
- register_users_for_interview (Register candidates for interview) - [Interviews] Register users/candidates for a specific interview and return their personal interview links.

Registers (or updates) one or more candidate profiles for an interview and returns a one-time interview URL for each. Accepts a Supabase user JWT (merchant/admin) or the service key (merchant_id then required). Endpoint: https://mcp.jobmojito.com/mcp
- list_interviews (List interviews) - [Interviews] List the merchant's interview definitions.

Paginated list of a merchant's interview definitions (the admin-portal interview list), scoped to your token's merchant (or a merchant_id override). Capped at 1000 records per page. Endpoint: https://mcp.jobmojito.com/mcp
- get_interview_result_details (Get interview result details) - [Results] Get full interview result details including transcript and scores. Scores are assistive output for a human reviewer.

Returns an interview result with its full transcript and AI assessment. Optionally attaches signed recording URLs. Endpoint: https://mcp.jobmojito.com/mcp
- generate_interview_report (Generate interview report) - [Results] Generate an interview result report (HTML/PDF/JSON) for a completed interview. The report is decision-support material for a human reviewer, not an automated hiring decision.

Generates an interview result report as a PDF (returns a signed URL), raw HTML, or structured JSON. Provide either `interview_result_id` for a single result or `interview_result_ids` for a combined multi-result report. Endpoint: https://mcp.jobmojito.com/mcp
- request_another_interview_attempt (Re-open interview for another attempt) - [Results] Re-open a submitted interview result so the candidate can retry.

Marks a submitted (active + completed) interview result as unsuccessful so the candidate can retake it. Resets the result to draft and clears the recruiter decision. Endpoint: https://mcp.jobmojito.com/mcp
- list_interview_results (List interview results) - [Results] List the merchant's interview results.

Paginated list of a merchant's interview results (the admin-portal results list), scoped to your token's merchant (or a merchant_id override). Capped at 1000 records per page. Endpoint: https://mcp.jobmojito.com/mcp
- get_merchant_analytics (Get merchant analytics) - [Results] Get the merchant's daily event analytics.

Daily event-count time-series for a merchant over a date range (the admin-portal analytics events graph), scoped to your token's merchant (or a merchant_id override). Optionally drilled to a single interview. Capped at 1000 records per page. Note: only day/event combinations with a non-zero count are returned — any day/event pair absent from the response should be treated as a count of 0 by the caller. Endpoint: https://mcp.jobmojito.com/mcp
- get_merchant_credit_usage (Get merchant credit usage) - [Results] Get the merchant's credit usage.

Per-event credit-usage ledger for a merchant: every billable analytics event (interview, pre-screening, public avatar, simulation, …) that consumed credits, ordered most recent first. Scoped to your token's merchant, or a merchant_id override for admins / sub-merchant operators. The credits consumed by each event are in stats.credit_amount. Capped at 1000 records per page. Endpoint: https://mcp.jobmojito.com/mcp
- list_candidates (List candidates) - [Candidates] List the merchant's candidates.

Paginated list of a merchant's candidates (the admin-portal candidates list), scoped to your token's merchant (or a merchant_id override). Capped at 1000 records per page. Endpoint: https://mcp.jobmojito.com/mcp
- upload_knowledge_base_document (Upload knowledge base document) - [Knowledge base] Upload and process a knowledge base document (multipart form-data).

Uploads a document to a knowledge base store and queues it for processing. Accepts the file either as multipart/form-data (binary `file`) or as application/json (base64 `file`). Endpoint: https://mcp.jobmojito.com/mcp
- list_sub_merchants (List sub-merchants) - [Admin] List sub-merchants under the merchant account.

Paginated list of the sub-merchants the caller administers (the admin-portal sub-merchants list). Visibility is enforced by row-level security. Capped at 1000 records per page. Endpoint: https://mcp.jobmojito.com/mcp
- list_avatars (List avatars and voice templates) - [Admin] List available avatar/voice templates. Each item's `type` decides the interview modality: `interactive_elevenlabs` = voice-only (no video avatar); `interactive_heygen` = realtime interactive avatar (video); `offline_heygen` = pre-recorded, non-interactive avatar. An item's `id` is the `interview_template_id` you pass to the create-interview tools, so pick the template whose type matches the experience you want. Note: `offline_elai` and `offline_synthesia` are legacy integrations that may still appear here but cannot be used to create new interviews.

Paginated list of a merchant's avatar templates (the admin-portal avatars list), scoped to your token's merchant (or a merchant_id override). Capped at 1000 records per page. Endpoint: https://mcp.jobmojito.com/mcp
- get_merchant_status (Get merchant status) - [Admin] Get a merchant status snapshot: credit balances, subscription, pending-work counts, candidate/result totals, and invitation headroom.

Status snapshot for a merchant: interview-credit balances, subscription type/status, pending-work counts (undecided / ongoing / uncredited interviews), candidate & result totals with 14-day history, and invitation headroom. Scoped to your token's merchant (or a merchant_id override for admins / sub-merchant operators). Also echoes the caller's profile_id and default_merchant_id from the token, plus the effective merchant_id. Endpoint: https://mcp.jobmojito.com/mcp
- list_languages (List supported languages) - [Admin] List supported platform (mojito) languages: the `code` to pass as `mojito_language_code`, English/local names, SVG flag URL, per-interface enablement flags, and Azure speech accents.

Returns all supported platform (mojito) languages: the mojito language code, English and local names, and an SVG flag image URL. Use the `code` as `mojito_language_code` when creating interviews or personas. Endpoint: https://mcp.jobmojito.com/mcp
- jobmojito_configuration (Choose a JobMojito merchant) - Show the interactive JobMojito merchant picker (UI).

ALWAYS call this when the user wants to choose, switch, or set a
merchant, or when a tool needs a `merchant_id` and none is selected.
It renders a searchable picker with clickable options. Do NOT list
merchants as text or ask the user to type a name — render this
picker instead. After calling it, STOP and wait for the user's
selection; then pass `merchant_id=<chosen id>` on every JobMojito
call (omit it for the user's own account). Endpoint: https://mcp.jobmojito.com/mcp

## Resources
- ui://prefab/tool/8bb716989559/renderer.html - MIME type: text/html;profile=mcp-app

## Prompts
Not captured

## Metadata
- Owner: com.jobmojito
- Version: 1.0.0
- Runtime: Streamable Http
- Transports: HTTP
- License: Not captured
- Language: Not captured
- Stars: Not captured
- Updated: Jul 30, 2026
- Source: https://registry.modelcontextprotocol.io
