modjo
modjo.
Modjo — recorded sales calls: list, read, transcript, AI summaries, notes,
setup & usage
an admin or a manager creates it in Modjo: Settings → Integrations → "Public API", then pastes it into oto.
GET /tags): no call data is touched, nothing is writtenmodjo_workspace(op="users", email="me@…") for my id, then modjo_calls(op="list", user_id=…, date_from="2026-10-05T00:00:00Z", expand=["contacts", "deal"]) — without user_id, the list covers the whole workspacemodjo_calls(op="summaries", call_id="…"), or everything at once: modjo_calls(op="get", call_id="…", expand=["summaries", "next-steps", "notes", "contacts"])modjo_calls(op="transcript", call_id="…") — readable lines by slices of 30,000 characters; pass next_offset back as offsetmodjo_crm(op="accounts", name="Acme") for the id, then modjo_calls(op="list", account_id=…), then op="next_steps" on the callmodjo_crm(op="deal_summary", deal_id=…)modjo_ask(scope_type="call", scope_id="…", question="Did the prospect mention a budget? How much?", answer_schema={"type": "object", "properties": {"mentioned": {"type": "boolean"}, "amount": {"type": "string"}}}) — up to 5 minutesmodjo_reviews(start_date_time="2026-10-01T00:00:00Z", order="asc")modjo_workspace(op="tags") for the id, then modjo_calls(op="add_tag", call_id="…", tag_id=…)modjo_calls(op="upload", media_url="https://…", date="…", participants=[{"email": "me@…", "type": "user"}, {"email": "client@…", "type": "contact"}]) returns a preview; the same call with confirm=True importsuser_id for one personstatus goes processing → completed (or failed); until then transcript, summaries and next steps are empty, and modjo_ask answers 409crm_activity_id when given, creates one otherwise) — hence the preview. At least one user participant must be a licensed member, otherwise Modjo refuses it: the preview says whether they areop="get"), the transcript only through op="transcript"modjo_ask is refused (403) when the feature is not enabled for the workspace — it is switched on by Modjo100 requests per minute for the whole workspace, all keys together, failed requests included. On a 429 the client waits for the window to reset, then retries a read once more; an import or a question to the AI is never replayed.
calls, reviews, the CRM objects Modjo mirrors, and the workspace directory — read; tags of a call and the import of a call — write. Administering members, teams and webhooks is not served here.
this connector accepts multiple comptes: each stored credential becomes a named account (one name per compte), at your level, your team's or your org's.
_account="<name>" on the tool; list them: oto_identity(op='list', connector='modjo') (scope='org' or scope='group' for the org's or team's)oto_identity(op='set', connector='modjo', identity_id='<name>'); rename: op='rename' with new_name_account) and adding upoutils
utilisation
claude plugin marketplace add otomata-tech/oto-plugin — mcp + skill configurés.pipx install oto-cli puis oto modjo …