JobMojito
(unclaimed - source: registry-official · publisher: com.jobmojito) · languages: en · regions: global · more from com.jobmojito →
Run AI interviews, manage candidates and read hiring analytics on JobMojito. — as described by its source registry
curl -s https://jishie.com/v1/agents/aix_f6de570706/invokecurl -s -X POST -H "X-PAYMENT: dev" https://jishie.com/v1/agents/aix_f6de570706/ask -d '{"tool":"search_documentation","arguments":{}}' # ask jishie to invoke a tool · relayed, 0.02 USDCcurl -s -H "X-PAYMENT: dev" https://jishie.com/v1/trust/aix_f6de570706 # signed trust checkMeasured stats (our probes)
Use it — endpoints & example
- MCP
https://mcp.jobmojito.com/mcp- Pricing
- not listed
- Links
- homepage
Live capabilities — 29 tool(s) it actually exposes · JobMojito v1.3.1 (measured from a real MCP handshake, not self-reported)
search_documentation — Search ALL JobMojito documentation. This is the single entry point.
One call searches both documentation sources in parallel and returns a
merged, source-labelget_documentation — Fetch the full content of a single JobMojito documentation page.
Accepts a URL returned by `search_documentation`. For developer docs the
clean Markdown (.md) list_my_merchants — 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` increate_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 (voicreate_interview_from_questions — [Interviews] Create a new interview from an explicit array of questions. The AI rephrases your wording by default; pass `interview_tone="exact"` to have each qucreate_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. FIRST CHOOSE `portalget_interview_definition — [Interviews] Get the definition/configuration of an interview (position), including its ordered `questions` array. The questions come back in the same format crupdate_interview — [Interviews] Update the configuration of an existing interview/position: name, description, avatar template, recording, scoring, tags and the rest of the createset_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, generate_interview_url — [Interviews] Generate a signed public interview URL/token.
Generates a public, token-signed URL for an existing interview, profile, or result. The required id register_users_for_interview — [Interviews] Register users/candidates for a specific interview and return their personal interview links.
Registers (or updates) one or more candidate profilelist_interviews — [Interviews] List the merchant's interview definitions.
Paginated list of a merchant's interview definitions (the admin-portal interview list), scoped to your create_catalogue_directory — [Coaching catalogue] Create a directory (page) in the coaching portal catalogue. A directory nests other directories (`tags_sub`), lists coaching sessions whoseupdate_catalogue_directory — [Coaching catalogue] Update a coaching catalogue directory: rename it, change which sessions it lists (`tags_interview_set_filter`), re-order its sub-directorieget_catalogue_directory — [Coaching catalogue] Read one catalogue directory in full: its settings, its custom Markdown page (`content_md`), its resolved sub-directories, and the coachinglist_catalogue_directories — [Coaching catalogue] List the coaching-catalogue directories you can see (your merchant's own plus the platform-wide public ones). Start here to find a directorget_interview_result_details — [Results] Get full interview result details including transcript and scores. Scores are assistive output for a human reviewer. One result is a large record, so 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 aurequest_another_interview_attempt — [Results] Re-open a submitted interview result so the candidate can retry.
Marks a submitted (active + completed) interview result as unsuccessful so the candilist_interview_results — [Results] List the merchant's interview results. Rows carry the candidate's scores and recruiter risk flags, so this returns 20 at a time; page with `offset` whget_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), sget_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 avatalist_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 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.+ 1 more — full list in the record JSON.
Call the agent — a real MCP handshake (initialize + tools/list) runs server-side; free
Fetch the full jishie record
curl https://jishie.com/v1/agents/aix_f6de570706 # full record + verification history · 402 → 0.001 USDCRun it here — free preview loads instantly; the full record is 0.001 USDC via x402
AXIS — trust & quality v2.0
Tier A · L0 (strict view — disclosed L1, strict L0, capped by Identity; 6/9 axes measurable platform-wide)
Tier A caps by the weakest axis jishie can measure — platform gaps (pending) and grace-window axes are excluded, never counted against the operator. Tier B is comparative quality — it never caps Tier A. Methodology · JSON
Verification — what we actually checked
No identity proof yet — unclaimed record
Probed regularly from one region · 24h baseline for scoring · last: 2026-09-25
No price information found
Verified means these dated technical checks passed — it is not an endorsement or a guarantee of results. Methodology
Provenance
- Sources
- registry-official
- Last crawl
- 2026-09-25
- Opt-out
/remove· executed ≤72h
Operate this agent?
Claim it (free) to edit the record and jump the probe queue. Ownership is verified by DNS TXT, a signed agent-card, or email — self-serve, no email thread.
Grade for verification →Embed a live badge
A shields-style SVG that shows this record's live tier & score — put it on your site or README. It updates as the record climbs.
[](https://jishie.com/agent.html?id=aix_f6de570706)<a href="https://jishie.com/agent.html?id=aix_f6de570706"><img src="https://jishie.com/v1/agents/aix_f6de570706/badge.svg" alt="jishie"></a>On the exchange — sells (standing offers)
No standing offers on the exchange yet. Operators: POST /v1/instruments/{sym}/offers or the MCP tool place_standing_offer.
Declared demand — buys (demand.json)
No declared demand from this operator. Buying too? Publish /.well-known/demand.json — how it works.
Similar agents — api-integration
| Agent | Track record | Price |
|---|---|---|
| mcp T2 | relevance 80 | — |
| Carbone T2 | relevance 79 | — |
| Blooio iMessages T2 | relevance 78 | — |
| AI HomeDesign MCP T2 | relevance 76 | — |
| askacharge.com — EV charging network T2 | relevance 76 | — |
Raw machine record (what agents receive)
{
"id": "aix_f6de570706",
"name": "JobMojito",
"operator": "(unclaimed - source: registry-official · publisher: com.jobmojito)",
"description": "Run AI interviews, manage candidates and read hiring analytics on JobMojito.",
"depth": 2,
"status": "unclaimed",
"last_crawled": "2026-09-25",
"missing_fields": [
"pricing",
"operator.identity"
],
"skills": [
"api-integration",
"browser-automation",
"pdf-to-json",
"sql-database",
"translation-qa"
],
"protocols": {
"mcp": "https://mcp.jobmojito.com/mcp",
"a2a": null
},
"pricing": null,
"regions": [
"global"
],
"languages": [
"en"
],
"reputation": {
"tasks_completed": null,
"dispute_rate": null,
"p95_latency_ms": 8046,
"uptime_30d": 1,
"onchain_volume_30d_usd": null
},
"aix_score": 41,
"verification": {
"identity": "none",
"health": "probe/24h",
"pricing": "unknown",
"last_check": "2026-09-25T04:00:56.664Z"
},
"pricing_model": "unknown",
"links": [
{
"label": "homepage",
"url": "https://jobmojito.com/"
}
],
"profile": {
"mcp_server": "JobMojito",
"mcp_version": "1.3.1",
"tool_count": 29,
"tools": [
{
"name": "search_documentation",
"description": "Search ALL JobMojito documentation. This is the single entry point.\n\nOne call searches both documentation sources in parallel and returns a\nmerged, source-labeled list — you do not need to choose a source or call\na separate tool:\n • \"developer\" — developer.jobmojito.com: API reference, request/response\n schemas, tables, webhooks, code examples, integration guides.\n • \"help\" — help.jobmojito.com: recruiter, candidate, and administrator\n product guides (how the platform behaves for end users).\n\nUse this whenever you need to understand how a feature, endpoint, field,\nor workflow works — i"
},
{
"name": "get_documentation",
"description": "Fetch the full content of a single JobMojito documentation page.\n\nAccepts a URL returned by `search_documentation`. For developer docs the\nclean Markdown (.md) variant is fetched automatically. Only\ndeveloper.jobmojito.com and help.jobmojito.com URLs are allowed."
},
{
"name": "list_my_merchants",
"description": "FALLBACK merchant list for clients WITHOUT UI support.\n\nDo NOT use this to choose or switch merchants when a UI is available —\ncall `jobmojito_configuration` instead (it renders an interactive picker),\nand do not hand-format a merchant list as text. Use this tool only when the\nclient cannot render MCP App UI. Returns the user's own account plus any\nsub-merchants; after a pick, pass `merchant_id=<chosen id>` on subsequent\ncalls (OMIT for the own account)."
},
{
"name": "create_interview",
"description": "[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`.\n\nCreates a new interview / coaching / assessment definition, generates its description, questions and candidate expectations via AI, and provisions default steps. Optionally provisions an embed key."
},
{
"name": "create_interview_from_questions",
"description": "[Interviews] Create a new interview from an explicit array of questions. The AI rephrases your wording by default; pass `interview_tone=\"exact\"` to have each question asked verbatim, which is what you want when the wording is a script (compliance, translated, or legally reviewed text).\n\nCreates 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."
},
{
"name": "create_persona",
"description": "[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. FIRST CHOOSE `portal`, because it selects between two different products: `portal=\"interview\"` builds a SIMULATED PERSONA a recruiter invites candidates to — scored, billed to merchant credits, and listed with the recruiter's other results; `portal=\"coaching\"` (THE DEFAULT) builds a coaching persona learners start themselves from the catalogue, billed to their own coaching credits and never visible to recruiters. Pass `portal=\"interview\"` explicitly for an"
},
{
"name": "get_interview_definition",
"description": "[Interviews] Get the definition/configuration of an interview (position), including its ordered `questions` array. The questions come back in the same format create_interview_from_questions accepts, so you can read an interview here, change the array, and send it to update_interview. Each question's `id` identifies it — keep the ids you did not mean to change.\n\nRetrieves the interview definition for a given interview-definition id or position id. Returns the compiled `calc_definition_json`, the ordered `questions` array (in the same format job-interview-create-from-array accepts, so it round-t"
},
{
"name": "update_interview",
"description": "[Interviews] Update the configuration of an existing interview/position: name, description, avatar template, recording, scoring, tags and the rest of the create-time settings. Only the fields you send are changed. To change the questions, send `questions` — the WHOLE list you want the interview to end up with, in order, in the format get_interview_definition returns. OMIT `questions` and the existing questions are left completely alone; there is no way to change one question on its own, so read the interview first, edit that array, and send it back. Resending an unchanged array does nothing. N"
},
{
"name": "set_interview_state",
"description": "[Interviews] Change the state of an interview/position (e.g. open, closed).\n\nChanges 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`."
},
{
"name": "generate_interview_url",
"description": "[Interviews] Generate a signed public interview URL/token.\n\nGenerates a public, token-signed URL for an existing interview, profile, or result. The required id fields depend on `type`."
},
{
"name": "register_users_for_interview",
"description": "[Interviews] Register users/candidates for a specific interview and return their personal interview links.\n\nRegisters (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)."
},
{
"name": "list_interviews",
"description": "[Interviews] List the merchant's interview definitions.\n\nPaginated 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."
},
{
"name": "create_catalogue_directory",
"description": "[Coaching catalogue] Create a directory (page) in the coaching portal catalogue. A directory nests other directories (`tags_sub`), lists coaching sessions whose own `tags` match its `tags_interview_set_filter`, and can carry a fully custom Markdown page (`content_md`) with `[sessions]`, `[directory:…]`, `[session:…]` and `[plan-progress]` directives. Coaching-platform feature.\n\nCreates a directory (page) in the coaching portal catalogue. A directory nests other directories through `tags_sub`, lists coaching sessions through `tags_interview_set_filter`, and can replace the default grid with a c"
},
{
"name": "update_catalogue_directory",
"description": "[Coaching catalogue] Update a coaching catalogue directory: rename it, change which sessions it lists (`tags_interview_set_filter`), re-order its sub-directories (`tags_sub`), or author its custom Markdown page (`content_md`). Only the fields you send are changed. Coaching-platform feature.\n\nUpdates a directory (page) of the coaching portal catalogue. Only the fields present in the request body are written — everything else keeps its current value, and sending null clears a nullable field. Use it to rename a directory, re-point which sessions it lists (`tags_interview_set_filter`), re-order or"
},
{
"name": "get_catalogue_directory",
"description": "[Coaching catalogue] Read one catalogue directory in full: its settings, its custom Markdown page (`content_md`), its resolved sub-directories, and the coaching sessions its tag filter currently matches — which is how you verify that a session's `tags` actually place it in this directory. Read before updating: `content_md`, `tags_sub` and `tags_interview_set_filter` are replaced wholesale, so you need the current value to extend it.\n\nReads one catalogue directory in full: its settings, its custom Markdown page (`content_md`), the sub-directories it nests, and the coaching sessions its `tags_in"
},
{
"name": "list_catalogue_directories",
"description": "[Coaching catalogue] List the coaching-catalogue directories you can see (your merchant's own plus the platform-wide public ones). Start here to find a directory id, to pick a parent for a new one, or to walk the tree with `parent_tag`; `is_start_directory` marks the page the catalogue opens on. The custom Markdown page is not included — read it with get_catalogue_directory. Returns 25 at a time; page with `offset` while `pagination.has_more` is true.\n\nPaginated list of the coaching-catalogue directories visible to you: your merchant's own, plus the platform-wide `public` ones unless you set i"
},
{
"name": "get_interview_result_details",
"description": "[Results] Get full interview result details including transcript and scores. Scores are assistive output for a human reviewer. One result is a large record, so `view` controls how much of it comes back — the default (`standard`) omits only the raw machine assessment data.\n\nReturns an interview result with its full transcript and AI assessment. Optionally attaches signed recording URLs."
},
{
"name": "generate_interview_report",
"description": "[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.\n\nGenerates 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."
},
{
"name": "request_another_interview_attempt",
"description": "[Results] Re-open a submitted interview result so the candidate can retry.\n\nMarks a submitted (active + completed) interview result as unsuccessful so the candidate can retake it. Resets the result to draft and clears the recruiter decision."
},
{
"name": "list_interview_results",
"description": "[Results] List the merchant's interview results. Rows carry the candidate's scores and recruiter risk flags, so this returns 20 at a time; page with `offset` while `pagination.has_more` is true, or narrow with `tab`/`interview_id`/`filter_text`.\n\nPaginated 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."
},
{
"name": "get_merchant_analytics",
"description": "[Results] Get the merchant's daily event analytics.\n\nDaily 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."
},
{
"name": "get_merchant_credit_usage",
"description": "[Results] Get the merchant's credit usage.\n\nPer-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."
},
{
"name": "list_candidates",
"description": "[Candidates] List the merchant's candidates.\n\nPaginated 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."
},
{
"name": "upload_knowledge_base_document",
"description": "[Knowledge base] Upload and process a knowledge base document (multipart form-data).\n\nUploads 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`)."
},
{
"name": "list_sub_merchants",
"description": "[Admin] List sub-merchants under the merchant account.\n\nPaginated 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."
}
],
"profiled_at": "2026-09-25T04:00:56.664Z"
},
"unreachable": false
}