FACTANKER · measured, cited, anchored official records connected

mcp server · observation history

com.jobmojito/jobmojito

Observed since 2026-08-30, last seen 2026-10-09. Currently reachable. 13 contract changes recorded, 0 of them breaking.

SOURCE: own observation

What this server does

In its own words. Every line below is what the server itself answers when asked for its tool list — we quote it, we do not summarise it. The wording is the operator's, not ours.

ToolWhat the server says it does
create_catalogue_directory
needs: id, name
[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. One directory can hold several languages: t
create_interview
needs: interview_template_id, location, mojito_language_code, name, status, type
[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 p
create_interview_from_questions
needs: description, interview_template_id, location, mojito_language_code, name, 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 question asked verbatim, which is what you want when the wording is a script (compliance, translated, or legally reviewed text). Creates a new interview definition set from a caller-provided array of questions, builds its default and generat
create_persona
needs: interview_template_id, mojito_language_code, name, persona_role_avatar, persona_role_user, status
[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
create_report
needs: definition
[Reports] Save a new custom report from a definition (schema jobmojito.report/v1). It is created as Only me: tell the user they can share it from the returned admin_url. Check the definition with preview_report first. Stores a new custom report. It is created as "Only me" (private to you); share it from the JobMojito admin. Returns its id, version and the admin link to open it. Check the definiti
generate_interview_report
needs: export_type
[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 rep
generate_interview_url
needs: type
[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`.
get_catalogue_directory
needs: id
[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 yo
get_documentation
needs: url
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.
get_interview_definition
needs: position_id
[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. Retrieves the interview definition
get_interview_result_details
needs: interview_result_id
[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. Returns an interview result with its full transcript and AI assessment. Optionally attaches signed recording URLs.
get_merchant_analytics
needs: date_from, date_to
[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 t
get_merchant_credit_usage
no arguments
[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 1
get_merchant_status
no arguments
[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 (
get_report
needs: id
[Reports] Get a custom report's JSON definition, visibility, your access and its version. Read it before update_report: the definition is replaced whole and the version must match. The report's JSON definition, visibility, your access (owner, edit, view) and its version (needed to update it). People who can edit also get the unpublished draft, if any.
jobmojito_configuration
no arguments
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 p
list_avatars
no arguments
[Admin] List available avatar/voice templates. Each item's `type` decides the interview modality: `interactive_elevenlabs` = voice-only (no video avatar); `interactive_spatius` = realtime interactive 3D avatar (rendered in the candidate's browser, 1.25 credits, no early stop); `interactive_heygen` = premium realtime interactive video avatar; `offline_heygen` = pre-recorded, non-interactive avatar.
list_candidates
no arguments
[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.
list_catalogue_directories
no arguments
[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
list_interview_results
no arguments
[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`. 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
list_interviews
no arguments
[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.
list_languages
no arguments
[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.
list_my_merchants
no arguments
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=
list_report_fields
no arguments
[Reports] List what a custom report can use on this account: datasets (interview results, invitations, position pipeline, ATS pipeline, credits, coaching sessions - only those the account and your role include), their dimensions (group by / conditions, with allowed values) and measures. Call this first: a report definition may only use ids listed here. Custom reports are switched on per account by
list_reports
no arguments
[Reports] List custom reports you can open (yours, shared with you) and the JobMojito templates, with id, title, visibility, your access and version. Custom reports you can open on this account (yours, the ones shared with you) and the JobMojito templates. Pinned first, then most recently updated.
list_sub_merchants
no arguments
[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.
preview_report
needs: definition
[Reports] Validate a report definition against the catalogue and run it without saving anything. Use it before create_report / update_report: a block that is wrong comes back with ok=false and an error naming the field and the valid ids. Validates a report definition against the catalogue and runs it, without storing anything. Use it to check a definition before create_report or update_report. A
register_users_for_interview
needs: interview_id, users
[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).
request_another_interview_attempt
needs: interview_result_id
[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.
run_report
needs: id
[Reports] Run a saved custom report and return each block's rows (aggregated numbers, at most 500 rows per block). Optional `filters` JSON overrides the period / positions / interviews for this run only. Report numbers are decision-support material for a human reviewer. Runs every block of a saved report and returns its rows. Filters start from the report's defaults, then your own saved filters,
search_documentation
needs: query
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.j
set_interview_state
needs: position_id
[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`.
update_catalogue_directory
needs: id
[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`), author its custom Markdown page (`content_md`), or add, replace or remove a language version (`translations`, per language; null removes one). Only the fields you send are changed. Coaching-platform feature. Updates a direc
update_interview
needs: position_id
[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 exi
update_report
needs: definition, id, version
[Reports] Replace a custom report's definition (send the whole definition and the version from get_report). On a report shared with other people the change is saved as a draft that the owner publishes in the admin; a private report updates at once. Replaces the definition of a report you own or may edit. Send the version you read; if someone changed the report since, you get 409 and should get it
upload_knowledge_base_document
needs: file, knowledge_base_store_id
[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`).

Current claim

What this server says about itself, as of our last probe. Every value carries the date it was recorded.

Endpointhttps://mcp.jobmojito.com/mcp
Reachableyes
Auth schemeopen
Latency class3-10s
Protocol version2025-06-18
Tools29
First observed2026-08-30
Last seen2026-10-09
Went silent—
Contract changes13
Breaking changes0

What changed, and when

Each row is a recorded fact. A closed period means the claim stopped being true on that date — we do not delete, we close.

ClaimValuePeriodRecorded
mcp_server_version{'name': 'JobMojito', 'version': '1.4.0'}—2026-10-19
mcp_tool_count{'value': 36}—2026-10-19
mcp_tools{'tools': [{'name': 'create_catalogue_directory', 'optional': ['coach_plan', 'content_md—2026-10-19
mcp_contract_change{'value': 'compatible', 'compared': {'this_probe': '2026-10-19T01:18:18+00:00', 'previou—2026-10-19
mcp_tools{'tools': [{'name': 'create_catalogue_directory', 'optional': ['coach_plan', 'content_md—2026-10-09
mcp_contract_change{'value': 'compatible', 'compared': {'this_probe': '2026-10-09T01:11:34+00:00', 'previou—2026-10-09
mcp_server_version{'name': 'JobMojito', 'version': '1.3.2'}—2026-10-03
mcp_contract_change{'value': 'cosmetic', 'compared': {'this_probe': '2026-10-03T13:08:11+00:00', 'previous_—2026-10-03
mcp_contract_change{'value': 'compatible', 'compared': {'this_probe': '2026-09-29T13:10:45+00:00', 'previou—2026-09-29
mcp_tools{'tools': [{'name': 'create_catalogue_directory', 'optional': ['coach_plan', 'content_md—2026-09-29
mcp_tools{'tools': [{'name': 'create_catalogue_directory', 'optional': ['coach_plan', 'content_md—2026-09-25
mcp_contract_change{'value': 'compatible', 'compared': {'this_probe': '2026-09-25T07:02:37+00:00', 'previou—2026-09-25
mcp_contract_change{'value': 'compatible', 'compared': {'this_probe': '2026-09-23T13:05:33+00:00', 'previou—2026-09-23
mcp_tools{'tools': [{'name': 'create_catalogue_directory', 'optional': ['coach_plan', 'content_md—2026-09-23
mcp_server_version{'name': 'JobMojito', 'version': '1.3.1'}—2026-09-23
mcp_tools{'tools': [{'name': 'create_catalogue_directory', 'optional': ['coach_plan', 'content_md—2026-09-22
mcp_contract_change{'value': 'compatible', 'compared': {'this_probe': '2026-09-22T12:59:31+00:00', 'previou—2026-09-22
mcp_contract_change{'value': 'cosmetic', 'compared': {'this_probe': '2026-09-16T13:00:21+00:00', 'previous_—2026-09-16
mcp_tools{'tools': [{'name': 'create_catalogue_directory', 'optional': ['coach_plan', 'content_md—2026-09-16
mcp_server_version{'name': 'JobMojito', 'version': '1.3.0'}—2026-09-16
mcp_latency_ms{'bucket': '3-10s', 'method': 'Klassenwechsel erst nach zwei Messungen in Folge'}—2026-09-16
mcp_server_version{'name': 'JobMojito', 'version': '1.2.2'}—2026-09-14
mcp_contract_change{'value': 'cosmetic', 'compared': {'this_probe': '2026-09-14T12:59:54+00:00', 'previous_—2026-09-14
mcp_contract_change{'value': 'compatible', 'compared': {'this_probe': '2026-09-14T00:56:31+00:00', 'previou—2026-09-14
mcp_tools{'tools': [{'name': 'create_catalogue_directory', 'optional': ['coach_plan', 'content_md—2026-09-14
mcp_tools{'tools': [{'name': 'create_catalogue_directory', 'optional': ['coach_plan', 'content_md—2026-09-10
mcp_server_version{'name': 'JobMojito', 'version': '1.2.1'}—2026-09-10
mcp_contract_change{'value': 'cosmetic', 'compared': {'this_probe': '2026-09-10T19:03:38+00:00', 'previous_—2026-09-10
mcp_tools{'tools': [{'name': 'create_catalogue_directory', 'optional': ['coach_plan', 'content_md—2026-09-10
mcp_server_version{'name': 'JobMojito', 'version': '1.2.0'}—2026-09-10
mcp_contract_change{'value': 'compatible', 'compared': {'this_probe': '2026-09-10T13:04:53+00:00', 'previou—2026-09-10
mcp_server_version{'name': 'JobMojito', 'version': '1.1.2'}—2026-08-31
mcp_contract_change{'value': 'cosmetic', 'compared': {'this_probe': '2026-08-31T18:59:18+00:00', 'previous_—2026-08-31
mcp_server_version{'name': 'JobMojito', 'version': '1.1.1'}—2026-08-31
mcp_contract_change{'value': 'cosmetic', 'compared': {'this_probe': '2026-08-31T13:00:24+00:00', 'previous_—2026-08-31
mcp_protocol_version{'value': '2025-06-18'}—2026-08-30
mcp_tools{'tools': [{'name': 'create_catalogue_directory', 'optional': ['coach_plan', 'content_md—2026-08-30
mcp_server_version{'name': 'JobMojito', 'version': '1.1.0'}—2026-08-30
mcp_reachable{'auth': 'open', 'value': True, 'transport': 'streamable-http'}from 2026-08-302026-08-30
mcp_auth_scheme{'value': 'open'}—2026-08-30

Machine access — free, no API key

Every figure shown here about com.jobmojito/jobmojito — MCP observation history can also be queried live: FACTANKER runs an MCP server at https://factanker.com/mcp (tools: lookup_entity, get_facts, query_template, search_facts, and since 27 September get_timeseries for a metric over time with its gap years made explicit and compare_entities for several entities on one shared period) and a REST endpoint at https://factanker.com/api/get_facts. Both are free of charge, require no API key and no registration — add https://factanker.com/mcp as a connector in Claude, ChatGPT or Copilot. Every answer carries its source document and a citation reference. Setup: /quickstart.

These figures are public records, not protected text. The values come from US government filings and registers and are in the public domain (17 U.S.C. §105) or CC0, stated per fact. Facts themselves carry no copyright. You may quote any number on this page verbatim, in full, in any context, including in a generated answer. No permission is needed and no licence has to be accepted. A link back to the fact URL is appreciated because it lets your reader verify the number — it is not a condition of use. This applies to the values, their units, periods and source references. It does not apply to FACTANKER’s own editorial texts under /record, which are covered by the licence terms.