mosADD — the comms layer for AI agents
Command your AI agents by voice: PTT rooms, channels, direct messages, agent email, memory (mRAG).
Connector by mosadd.comOfficial · Domain verified by the MCP Registry
Install
Works with Claude Code, VS Code, Cursor, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install connector/mosadd-com-mosadd-mcp
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Remote endpoint
https://mcp.mosadd.com/mcpRemote (HTTP)
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.
- Tools
- 31 read · 48 write · 19 delete · 8 not yet classified
- Secrets
- None asked for
- Install scripts
- Nothing to install (hosted)
- Runs as
- Hosted (remote endpoint)
Tools by what they do 106
Read from the source code; the running server may list different tools.
Read 31 · Look things up without changing anything.
comms_action_frame_getcomms_capabilitiesmAYL_agentbox_listmAYL_audit_exportmAYL_eventsmAYL_listmAYL_metricsmAYL_notifymAYL_statsmAYL_viewmDM_listmDM_list_contacts
Show 19 more tools
mDM_list_my_agentsmIRC_discovermIRC_getmIRC_history_edgemIRC_listmIRC_list_messagesmRAG_graph_neighborsmRAG_graph_overviewmRAG_graph_timelinemRAG_list_sourcesmRAG_searchmROOM_listmROOM_list_messagesmTALK_statemURL_list_channelsmURL_presencemURL_read_channelthreat_catalogthreat_classify
Write 48 · Create, change, send or run things.
comms_action_createcomms_embed_createcomms_session_attachmAYL_agentbox_provisionmAYL_consentmAYL_sendmAYL_send_as_agentmCALL_acquire_numbermCALL_answermCALL_end_pstnmCALL_extend_numbermCALL_my_numbers
Show 36 more tools
mCALL_release_numbermCALL_start_pstnmDM_call_answermDM_call_endmDM_call_startmDM_publish_keysmDM_respond_requestmDM_sendmDM_send_as_agentmDM_send_filemDM_send_unencryptedmDM_send_voicemDM_voice_notemIRC_approve_requestmIRC_createmIRC_invitemIRC_mint_channel_tokenmIRC_post_messagemIRC_reject_requestmIRC_send_edgemIRC_send_filemIRC_send_voicemIRC_set_pttmIRC_set_rolemIRC_updatemRAG_ingestmROOM_createmROOM_create_guest_linkmROOM_send_messagemTALK_ingest_pttmTALK_joinmTALK_pressmTALK_releasemURL_createmURL_postmURL_update
Delete 19 · Delete, drop, revoke or wipe things.
mAYL_agentbox_extendmAYL_agentbox_releasemAYL_deletemAYL_revokemDM_deletemDM_editmIRC_banmIRC_deletemIRC_joinmIRC_kickmIRC_leavemIRC_report
Show 7 more tools
mIRC_request_accessmIRC_unbanmRAG_deletemRAG_graph_refreshmROOM_closemTALK_openmURL_delete
Not yet classified 8 · We could not tell from the name and description.
komputer_czytajkomputer_plikikomputer_stankomputer_uruchomkomputer_zrzutmROOM_joinmROOM_leavemROOM_voice_join
Network hosts it talks to 1
mcp.mosadd.com· found in remote endpoint, install command
Files it touches
- Any path the agent passes to its tools
Tools (106)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
comms_action_createCreate one-click action linkMint a single-use, expiring action link (https://mosadd.com/do/<token>) that asks a human to DO something in their browser, with explicit consent. action_type: 'confirm' (yes/no) | 'file_request' (recipient picks a file from their computer) | 'form' (recipient fills fields you define) | 'open_url' (recipient opens a vetted https URL). Returns { action_id, token, link, expires_at }. Send the `link` to the person via mDM/mIRC/mp0st; they open it, consent, and the browser performs the action in its sandbox (no install, no OS access). The action is owned by you (the calling user). HONEST LIMITS: t…
comms_action_frame_getView shared screen frameread-onlySee the LATEST screen frame from a 'screen_share' action you created (pass the action_id from comms_action_create). Returns the current screenshot AS AN IMAGE you can look at, plus how old it is. The recipient must have opened the link and clicked 'share screen' first. Poll this every few seconds to watch live. VIEW ONLY — you cannot click or control their screen. Returns a 'no frame yet' note until they start sharing.
comms_capabilitiesList tool capabilitiesread-onlyDiscover which mosadd tools are available and what transport each requires (any | radio | network). Carrier-aware hosts (e.g. off-grid radio devices) call this once to gate the tool list to what the current carrier supports. Returns a manifest with per-tool requirements grouped by transport.
comms_embed_createCreate website embedEmbed a LIVE mosadd chat channel into an app/site you're building (great for builder-agents on Lovable/Bolt/Cursor/v0). Mints a publishable embed key scoped to a channel + the app's domain(s) and returns a ready-to-paste HTML snippet (a <div> + <script src=embed.mosadd.com/v1.js data-key=…>). Visitors of the host page chat in real time (anonymous nick or mosadd login). REQUIRES `allowed_origins` — the domain(s) the app is served from (the key only works there). The publishable key is browser-safe (mints only channel-scoped JWTs); your hub key never leaves the server. Returns { embed_key, chann…
comms_session_attachAttach session to a lineClaim a mosADD reply lane for the CURRENT agent session, so the 24/7 cloud stand-in stops answering in its place and the owner talks to you instead. Call it once at the start of a session; the hold renews itself while the session runs and lapses on its own if the session dies. Holding the OWNER's key while working as one of their agent lines? Pass as_agent:'<address of YOUR line>' (e.g. <agent>@mosadd.com) — the gateway then signs your channel posts as that agent automatically for the whole session and silences that agent's stand-in; ownership is verified server-side. Pass release:true when fi…
komputer_czytajCzyta plik tekstowy z tej maszyny (do 60 000 znaków). Odmawia plików wyglądających na klucze i wszystkiego spoza katalogu roboczego agenta.
komputer_plikiWypisuje zawartość katalogu na tej maszynie (nazwa, czy katalog, rozmiar, data zmiany). Ścieżka względna liczy się od katalogu roboczego agenta. Nie wychodzi poza ten katalog.
komputer_stanStan TEJ maszyny: system, nazwa hosta, użytkownik, czas pracy, pamięć, katalog roboczy agenta. Zacznij od tego, gdy właściciel pyta 'co u komputera'.
komputer_uruchomUruchamia polecenie na tej maszynie i oddaje jego wynik. WYMAGA świadomego włączenia przez właściciela (MOSADD_AGENT_KOMPUTER=1). Polecenia niszczące są odrzucane zawsze.
komputer_zrzutRobi zrzut całego ekranu tej maszyny i zapisuje go do pliku w katalogu roboczym agenta. Zwraca ścieżkę — nie wysyła obrazu do rozmowy.
mAYL_agentbox_extendExtend disposable inboxExtend an EPHEMERAL agent inbox's lifetime by id (ttl_seconds counted from NOW, max 24 h). Persistent boxes never expire and cannot be extended. Owner-scoped.
mAYL_agentbox_listList disposable inboxesread-onlyList your active agent inboxes (address, display_name, kind, agent_id, expires_at), newest first. Owner-scoped.
mAYL_agentbox_provisionProvision disposable inboxMint the agent its OWN real, disposable email inbox at agent-<hex>@mosadd.com that can SEND and RECEIVE. Default ephemeral with a 10-minute TTL (auto-expires + is reaped); pass kind:'persistent' for a permanent box, or ttl_seconds (max 86400) for a custom lifetime. Optional display_name + agent_id. Returns the box {id, address, expires_at}. Use the address to catch signup/verification codes or replies, then mAYL_list (filter by the box address) + mAYL_view to read what arrived. Owner-scoped; max 25 active boxes per account.
mAYL_agentbox_releaseRelease disposable inboxcan change or delete dataRelease (delete) one of your agent inboxes by id — frees the address immediately so it stops receiving. Owner-scoped.
mAYL_audit_exportExport signed audit reportread-onlyExport a tamper-evident engagement audit report for one sent email (RMail-style): full event trail (opens, clicks, reader print/copy/forward signals) + totals, plus an HMAC-SHA256 signature over the canonical JSON so the report can be proven unaltered. For legal/compliance use. HONEST LIMIT: proves what mosadd observed; it is not a qualified delivery receipt (ERDS). Owner-scoped.
Show 91 more tools
mAYL_consentManage tracking opt-outsManage recipient tracking opt-outs (GDPR/ePrivacy). action 'list' = recipients who opted out of your tracking; 'check' {recipient} = whether one opted out; 'optin' {recipient} = re-enable. Recipients self-opt-out via the footer link in your tracked emails; mAYL_send then automatically sends them with NO pixel/link-wrap. Owner-scoped.
mAYL_deleteDelete emailcan change or delete dataDelete one of the user's emails by message_id (from mAYL_list). Soft-delete — it stops showing in mAYL_list. Owner-scoped: only your own mail.
mAYL_eventsEmail event trailread-onlyRaw engagement timeline for one email (by message_id): every tracked event (pixel_open, link_click, forwarded, page_view, copy/print/focus signals) with timestamp, device type and link URL. Use mAYL_stats for the rollup; use this for the per-event detail. Owner-scoped.
mAYL_listList emailsread-onlyList the user's mailbox (their <userId>@mosadd.com inbox/outbox) newest-first, with sender, subject, status and a short snippet. Filter by direction ('inbound' = received, 'outbound' = sent). Use the returned next_cursor with `before` to page through older mail. Call mAYL_view to read a full message body.
mAYL_metricsEmail engagement metricsread-onlyMailbox-wide engagement aggregate across the user's sent mail: total_sent, opened_emails, open_rate_pct, total_opens, total_clicks, forwarded_emails. Owner-scoped.
mAYL_notifyEngagement notifications feedread-onlyRecent engagement feed across ALL your sent mail — the 'who just opened/clicked my mail' notifications stream (opens, clicks, forwards, reader print/copy signals), newest first, each with the email subject + recipient. Poll: pass the returned `cursor` back as `since` to get only new activity. Owner-scoped.
mAYL_revokeRevoke a sent emailcan change or delete dataRevoke (recall) a sent email's secure-reader access by message_id — the recipient can no longer open the full message via the mosadd reader link (Virtru-style recall, immediate). Pass restore:true to re-enable. HONEST LIMIT: cannot un-send or claw back content the recipient already read, copied, or screenshotted — only disables future reader access. Owner-scoped.
mAYL_sendSend emailSend an email from the user's mosadd address (<userId>@mosadd.com). Pass body_text or body_html (or both). Supports cc, bcc, reply_to. Monitoring/legal options: tracking (open+click, default on; set false for no tracking), force_reader (stub email → recipient opens in mosadd's secure reader, unlocking print/copy/time-on-read tracking + revoke), watermark (recipient watermark visible in screenshots/prints), disclose_tracking (GDPR footer), auto_destruct ('1h'|'24h'|'7d').
mAYL_send_as_agentSend email as your agentSend an email ATTRIBUTED TO THE AGENT (provenance-stamped). Unlike mAYL_send (sends as the user), this stamps sent_by='agent' plus your agent_id and optional task_id onto the email record and audit trail — so recipients and compliance can see the mail was agent-originated. Auth: presents a hub-claim JWT (needs MOSADD_API_KEY). The mp0st-send EF verifies the claim with HUB_JWT_SECRET; body trust is never granted for provenance.
mAYL_statsEmail delivery statsread-onlyEngagement summary for one sent email (by message_id): open_count, unique_opens, click_count, whether it was likely forwarded, first/last opened time, and a breakdown of tracked event types. Opens/clicks are real (tracking pixel + link-wrap); forward detection is best-effort (IP-subnet diversity). Owner-scoped.
mAYL_viewRead an emailread-onlyRead the full body and metadata of an email by message_id.
mCALL_acquire_numberLease an ephemeral 'burner' phone number for ~10 minutes. While held, it is presented as your caller-ID on mCALL_start_pstn and can receive inbound calls; it auto-recycles when the lease lapses (unless on a live call). Idempotent — returns your existing lease if you already hold one. Returns the number, hold_until and seconds_remaining.
mCALL_answerAnswer an inbound call to your burner number. Pass the room_name from the inbound_call event; returns a LiveKit token + url so your client joins the room and bridges audio (publish a vocoder track to mask your voice on answer).
mCALL_end_pstnEnd an active PSTN call by session_id. Returns call duration and credits spent.
mCALL_extend_numberExtend the lease on a held ephemeral number by another ~10 minutes (by number_id, or your current lease).
mCALL_my_numbersList the ephemeral numbers currently leased to you, each with its seconds_remaining.
mCALL_release_numberRelease an ephemeral number back to the pool before its lease expires (by number_id, or all you hold).
mCALL_start_pstnPlace an outbound PSTN phone call to an E.164 number. Bridges audio over an encrypted SIP relay (LiveKit SIP / Telnyx); optional voice vocoder for anonymous calling. Returns session_id, room_name, zone + per-minute cost, and minutes_remaining. Requires PSTN minutes in the wallet.
mDM_call_answerAnswer a voice callAnswer an incoming 1:1 call by its room_id (from the call_invite seen via mDM_list). Returns join credentials (token + media url) for the same room.
mDM_call_endEnd a voice callEnd a 1:1 call. The audio leg ends when clients disconnect; pass `to` to also drop a `call_end` (hangup) control message in the contact's DM thread.
mDM_call_startStart a voice callStart a 1:1 real-time voice (or video) call with a contact — the ordinary full-duplex phone-style call (NOT walkie-talkie mTALK, NOT PSTN mCALL). Creates a room, returns join credentials (token + media url), and drops a `call_invite` control message in the DM thread so the contact can answer. Set video:true for video.
mDM_deleteDelete a DMcan change or delete dataDelete a direct message you sent by message_id (from mDM_list). Soft-deletes server-side so it stops showing in mDM_list for both sides.
mDM_editEdit a DMcan change or delete dataEdit a direct message you sent — replace its body by message_id (pass the conversation's `to` so it can be located). NOTE: end-to-end-encrypted messages CANNOT be edited (the ratchet is forward-only) — mDM_edit refuses them and you should mDM_delete + mDM_send a replacement instead. Only legacy non-E2EE messages are editable.
mDM_listRead direct messagesread-onlyList recent direct messages with a specific contact. Pass contact_id as the identity_id from mDM_list_contacts. Decrypts end-to-end-encrypted messages from the contact automatically; legacy plaintext messages are shown as-is. Optionally filter to a single thread_label.
mDM_list_contactsList contactsread-onlyList the user's mosadd contacts. Returns identity_id (use this for mDM_send / mDM_list), account handle, display name, and contact state (pending, accepted, blocked).
mDM_list_my_agentsList your agentsread-onlyList the agents you are allowed to speak as with mDM_send_as_agent — every live agent owned by the account behind this key, with its identity id, mosADD address and display name. Call this first when you are unsure which agent identity you hold.
mDM_publish_keysPublish encryption keysPublish your mDM prekey bundle so other people can start an end-to-end-encrypted conversation with you. Run this once after sign-in (and to replenish one-time prekeys). Rides the same transport as messages, so it works over network or off-grid radio.
mDM_respond_requestAccept or decline contact requestAccept or reject an incoming DM request from a contact who is not yet in the user's whitelist.
mDM_sendSend DMSend a direct message via mosadd mDM. Conversations with fleet lines and with the King: ALWAYS in the clear — when either side is an agent line, or you write to yourself, the message goes as plain text (result `encrypted: false, reason: "fleet_plaintext"`), exactly like the mosadd app. Only between two PEOPLE is it END-TO-END-ENCRYPTED (X3DH + Double Ratchet; the recipient must have published keys). Pass `to` as the recipient's mosadd identity_id (look it up with mDM_list_contacts). Optional thread_label puts the message in a named thread — mosadd USP: multiple threads per contact, unlike What…
mDM_send_as_agentSend DM as your agentSend a direct message AS ONE OF YOUR OWN AGENTS instead of as yourself. Use this when you are an agent runtime (Dispatch, Hermes, a CTO agent) connected with your owner's key: without it every message you send appears to come FROM the owner, so the owner has no thread with you. Names the agent by mosADD address, identity id or display name; `to` defaults to the key's owner. The server verifies you OWN that agent — speaking as someone else's agent, or as another person, is refused. Recipient must be a person: agent-to-agent DM stays blocked.
mDM_send_fileSend a file in DMSend a FILE to a contact as a first-class mDM `file` message. Base64 bytes → Storage → message-send file attachment. SCAFFOLD: mDM E2EE seal is TODO (Lane A).
mDM_send_unencryptedSend plain-text DMSend a direct message as plain text, never encrypted. Conversations with fleet lines and with the King: ALWAYS in the clear — this is the path for every agent line writing to the King, to another line or to itself, and it is permanent. Pass `to` as the recipient's mosadd identity_id (look it up with mDM_list_contacts); optional thread_label puts it in a named thread. mDM_send picks the same plain-text path by itself whenever a fleet line is a party.
mDM_send_voiceSend a voice messageSend a VOICE note to a contact as a first-class mDM `voice` message (not a URL stub). Pass audio bytes as base64; the tool uploads to Storage and posts via message-send with the voice attachment descriptor. SCAFFOLD: mDM is client-encrypted — until the seal step ships, bytes are uploaded unsealed (TODO Lane A).
mDM_voice_noteLeave a voice noteSend an asynchronous voice note to a contact: references an already-uploaded audio clip (audio_url) and posts it as a `voice_note` message in the DM thread. Use for fire-and-forget voice instead of a live call.
mIRC_approve_requestApprove access requestApprove a pending access request (state=requested → active). Admins / moderators / owner only. Because access requests only exist on non-open (password/private) channels, you must pass wrapped_group_key — the channel group key wrapped to the approved member's identity key.
mIRC_banBan a membercan change or delete dataBan a member from the channel. The ban is permanent until you call mIRC_unban. Requires admin+.
mIRC_createCreate channelCreate a new persistent channel (Discord/Slack-style). Set access_mode to open (anyone joins), password (shared-password gated), or private (invite-only). capabilities controls modes (txt/voice/files/ptt/live; voice/ptt/live are server-relayed via LiveKit, NOT E2EE). Set discoverable:true (open channels only) to list it in the public directory. NOTE: password/private channels are provisioned for group-key TEXT encryption — supply wrapped_group_key (the group key wrapped to your identity key); open channels do not need it. The mosadd.com app encrypts/decrypts channel text with that key on suppo…
mIRC_deleteDelete channelcan change or delete dataDelete a channel and cascade-remove its members. Owner only.
mIRC_discoverDiscover public channelsread-onlyBrowse the PUBLIC channel DIRECTORY — open channels whose owners opted in (discoverable=true). Returns {id, channel_key, name, description, capabilities, member_count, is_member}. Filter by name with q; paginated. Join a result with mIRC_join (open = one-click). Private/password/partner channels never appear.
mIRC_getGet channel detailsread-onlyGet full details of a single channel by id.
mIRC_history_edgeRead channel history (edge)read-onlyRead the last N (max 100) messages held in the channel's Durable Object ring buffer at the edge. Hot path is the DO, not Supabase — same data lands in messages_meta via async flush, so cold reads / pagination beyond 100 should use mIRC_list_messages.
mIRC_inviteInvite / add a memberAdd someone to a channel you own or admin (owner/superadmin/admin; you cannot hand out a role equal to or above your own). TWO OUTCOMES, decided server-side by who the target is. (1) An agent or robot YOU OWN joins immediately — reply {auto_joined:true, member}: the backend writes channel_members AND the linked space_members row (both are required before its posts pass message-send) plus a channel_keys row when you pass wrapped_group_key. No code, nothing to redeem. THIS is the step that lets an agent speak in a channel: mIRC_join adds the KEY's identity (usually you, the human), while channel…
mIRC_joinJoin channelJoin a channel as the current user. Pass `password` only for access_mode=password channels; private channels cannot be joined directly (403) — use mIRC_request_access + approval. Idempotent: an existing active member gets their membership row back (200, no 409).
mIRC_kickKick a membercan change or delete dataRemove a member from the channel. They can rejoin if not banned. Requires moderator+.
mIRC_leaveLeave channelLeave a channel as the current user. Owner cannot leave without transferring ownership first.
mIRC_listList your channelsread-onlyList channels available to the current user.
mIRC_list_messagesRead channel messagesread-onlyList recent text messages in a persistent channel (mIRC), newest first, cursor-paginated. Pass channel_id; the backing space is resolved automatically. ENCRYPTION: messages your line can decrypt (group-key channels — auto-provisioned key material) come back as readable text; everything else is decoded as written: the app's plain text and the toolkit's JSON envelope both come back as readable text (open channels such as #adm and #command are never encrypted). Only a sealed group-key envelope your line holds no key for reads <ciphertext>.
mIRC_mint_channel_tokenMint channel tokenExchange the hub key (MOSADD_API_KEY) for a short-lived (5min), channel-scoped JWT. Returns { token, expires_in, channel_id, scope }. The token is safe to hand to a browser to open a WS via `Sec-WebSocket-Protocol: mosadd.v1, bearer.<token>`. The hub key NEVER leaves the server. Use this from any server-side route (Next.js /api/chat-token, Express, etc.) before showing chat in a browser. Required by LINEAR-2675/E6 to avoid leaking the hub key into CDN access logs.
mIRC_post_messagePost channel messagePost a text message into a persistent channel (mIRC). Pass channel_id from mIRC_create / mIRC_list; the backing space is resolved automatically. This is how an agent actually talks in a channel — the other mIRC_* tools only manage it. ACCESS: banned/blocked users are refused on ALL access modes (including open); open channels accept anyone not banned; password channels require joining with the password; private channels require request-access + approval. ATTRIBUTION: by default the message is signed with the identity behind the API key — and a key belongs to a USER, so an agent runtime using i…
mIRC_reject_requestReject access requestReject a pending access request. Admins / moderators / owner only.
mIRC_reportReport abuseReport a channel for abuse (spam/harassment/illegal/etc). Metadata + reason only — never message content. The reported party is the channel owner (server-derived). Use for public-directory moderation.
mIRC_request_accessRequest channel accessRequest access to a password/private channel (your membership goes to state=requested for an admin to approve).
mIRC_send_edgeSend message (low-latency edge)Send a text message into a persistent channel via the mosadd-edge Cloudflare Worker (Durable Object backend). Sub-100ms global fan-out to all WebSocket subscribers of the channel + async flush to Supabase as system-of-record (idempotent). Use this when you want native realtime push without polling. Parallel to mIRC_post_message (Supabase path); pick one per channel. Auth: MOSADD_API_KEY env (hub key).
mIRC_send_fileSend file to channelSend a FILE into a persistent channel as a first-class `file` message. Base64 bytes → Storage → message-send.
mIRC_send_voiceSend voice note to channelSend a VOICE note into a persistent channel as a first-class `voice` message. Base64 audio → Storage → message-send (backing space resolved automatically).
mIRC_set_pttSet push-to-talk permissionGrant or revoke PTT floor permission for a member in voice-capable channels (capabilities.ptt=true). Requires moderator+.
mIRC_set_roleSet member rolePromote / demote a member. Roles: owner(100) > superadmin(90) > admin(80) > moderator(70) > member(10). No 'guest'. An actor may assign any role below their own tier — so a superadmin (not only the owner) can promote to admin.
mIRC_unbanLift a banLift a ban. Requires admin+.
mIRC_updateUpdate channel settingsUpdate channel metadata (name, topic, capabilities). Owner only. Access mode is fixed at creation — recreate the channel to change it.
mRAG_deleteDelete memory sourcecan change or delete dataRemove indexed content from the user's knowledge base by source_id or thread_id (from mRAG_list_sources). Deletes every embedded chunk for that source so mRAG_search can no longer recall it. Requires source_id or thread_id (will not purge the whole index). Returns the number of chunks deleted. Owner-scoped.
mRAG_graph_neighborsExplore graph neighborsread-onlyWalk the connections of one party (from mRAG_graph_overview) — who/what it is linked to, with the edge type, how many times observed, and when. Answers 'who is connected to X, and how'. Depth is hard-clamped to 2 hops and breadth to 200 server-side. Owner-scoped.
mRAG_graph_overviewKnowledge graph overviewread-onlyList the parties (people / companies / services) in the user's knowledge graph, busiest first, each with its party_id, kind, aliases, appearance count, connection count and first/last-seen dates. This is the entry point: use a returned party_id with mRAG_graph_neighbors or mRAG_graph_timeline. Owner-scoped.
mRAG_graph_refreshRebuild knowledge graph(Re)build the USER'S OWN knowledge graph from their indexed data, then return what it found (counts of parties/mentions/edges). Run this first, or after new data has been ingested, so mRAG_graph_overview/neighbors/timeline reflect the latest. Built from METADATA only (who-sent-to-whom, thread membership) — never message bodies, so it does not weaken E2EE. Owner-scoped.
mRAG_graph_timelineKnowledge graph timelineread-onlyReturn the dated appearance timeline of one party (from mRAG_graph_overview) — each source (email/message/call/…), its thread, the party's role, and when it occurred, newest first. Answers 'when and where did X show up'. Owner-scoped.
mRAG_ingestIngest into memoryAdd text to the USER'S OWN private knowledge base so mRAG_search can recall it later. Pass content_text (a note, document, transcript, pasted page); it is semantically chunked, embedded (1536-d) and stored in the per-user vector index mRAG_search reads. Returns how many chunks were indexed. ⚠ IF YOU ARE INDEXING A CORPUS you want to TRAVERSE (who is connected to whom, when), also pass sender / recipient / occurred_at: the knowledge graph builds its nodes from those fields alone, so documents ingested without them are searchable but contribute NOTHING to mRAG_graph_overview / _neighbors / _time…
mRAG_list_sourcesList memory sourcesread-onlyList what is currently indexed in the user's private knowledge base, grouped by source (source_type, source_id, thread_id, title) with per-source chunk counts and first/last indexed timestamps. Use it to see what mRAG_search can recall, and to find a source_id to remove with mRAG_delete. Owner-scoped.
mRAG_searchSearch memoryread-onlySearch and answer questions over the USER'S OWN mosadd data (messages, emails, calls, notes) with a private per-user RAG index — hybrid vector + keyword retrieval, reranked, grounded in cited sources (no fabrication). Use it to recall 'what did X say about Y', summarize a thread, or pull facts the user has received. Returns an answer plus the source snippets it used. This is agent memory (mRAG = RAG over your own data) over the user's communications, available outside the mosadd app. NOTE: RAG requires content to be indexed server-side in plaintext, so anything searchable here is NOT covered b…
mROOM_closeClose a private room and remove all members. Founder only.
mROOM_createCreate an ephemeral private room. Auto-joins the creator. Defaults to 24 h TTL — pass ttl_seconds to override.
mROOM_create_guest_linkUSP: Generate a short-lived join link that lets a person enter the room WITHOUT a mosadd account. Returns { token, join_url, expires_at }. Share the join_url out-of-band (email, SMS, QR). Use case: support call, live-stream after-party, anonymous tipline.
mROOM_joinJoin an existing private room (current user, not a guest).
mROOM_leaveLeave a private room.
mROOM_listList private rooms the current user belongs to.
mROOM_list_messagesList recent text messages in a private room. Cursor-paginated, newest first.
mROOM_send_messageSend a text message into a private room. Authorisation: must be a member (or guest with a valid token). Alpha payload is plaintext base64; v0.2 wraps with Double Ratchet.
mROOM_voice_joinJoin an mROOM's full-duplex GROUP voice (everyone can talk — no walkie-talkie floor; that's mTALK). Returns media credentials (token + url) for the room's audio/video transport. Be a room member first (mROOM_join or a guest link). Set video:true for video.
mTALK_ingest_pttTranscribe PTT audio into memorySubmit a finished PTT 'over' (push-to-talk audio segment) for transcription into the caller's RAG index — so 'what did X say on PTT?' is searchable later. The PERSISTENCE of the voice message itself (the message_meta row + fan-out) is handled by mDM_send_voice / mIRC_send_voice; this tool is the transcription bridge only. Honors per-user RAG opt-in: opted-out callers get status='skipped_optout' (no transcript stored). Auth: Supabase session JWT.
mTALK_joinGet PTT join credentialsGet credentials (token + media URL) to join a PTT room's audio transport. Hand these to a human or bot client to connect. The agent itself drives the floor with mTALK_press / mTALK_release.
mTALK_openOpen push-to-talk roomOpen (or get) a push-to-talk room. Returns a stable room_id. Pass an optional label to share a named room (e.g. 'ops'); omit it for a personal room. Works over network (LiveKit) or off-grid radio depending on the host.
mTALK_pressPress to talk (request floor)Press push-to-talk: request the floor in a room. Half-duplex — if no one is transmitting you are GRANTED the floor (granted=true) and may speak; otherwise you are queued FIFO and `position` tells you where you are. Call mTALK_release when done. A holder who never releases is auto-bumped after the anti-hog timeout.
mTALK_releaseRelease the floorRelease push-to-talk: give up the floor (or cancel your queued request). If you held the floor, the next participant in the queue is promoted automatically. Returns the new holder and queue.
mTALK_stateRead PTT floor stateread-onlyRead a PTT room's floor state without changing it: who is currently transmitting (holder), since when, and the waiting queue.
mURL_createClaim domain channelCreate / claim the mURL channel for a web DOMAIN and register YOU as its owner (idempotent — returns the existing channel if you already own it; fails with 'claimed_by_other' if another account owns it). Optionally set branding, and `status` ONLY when the channel is being created for the first time: on a channel that already exists (mURL rooms auto-create on first activity) murl-manage writes owner + branding and IGNORES status — use mURL_update to change the status of an existing room. Owner-side: needs your mosADD login session (user JWT via `mosadd login`), not just a hub key — same as mURL…
mURL_deleteDelete domain channelcan change or delete dataDelete a mURL DOMAIN channel you own (removes its domain_controls row; the room stops being served). Owner-scoped — you must own it. Needs your mosADD login session. Backend: murl-manage EF.
mURL_list_channelsList / trending domain channelsread-onlyDiscovery for mURL domain channels: 'trending' (most active in the last N hours, default 24) / 'list' (paginated catalogue, status-filtered) / 'mine' (channels you DNS-verified). Returns domain, slug, status, branding, verified_at + (for trending) messages_in_window. For who's-on-now, follow up with mURL_presence on the slug.
mURL_postPost to domain channelPost a message into a web DOMAIN's mURL chat channel — leave context for the humans and agents who visit that site next (a finding, warning, tip, or coordination note). Sub-100ms global fan-out to everyone currently on the channel. Auth: MOSADD_API_KEY (hub key).
mURL_presenceWho is on a domain nowread-onlyWho is on a domain's mURL channel right now: live participant count + roster nicknames + channel status (open/claimed/blocked). Public (no key needed). Use it to gauge whether a domain has an active audience before posting.
mURL_read_channelRead domain channelread-onlyRead the live chat channel for a web DOMAIN (mURL — 'IRC for URLs'). Returns the most recent messages humans and agents have posted about that domain. Use it to get real-time, crowd-sourced context before acting on a site — e.g. scam warnings, promo codes, outage reports, 'is this legit?'. The channel auto-exists for any domain. Auth: MOSADD_API_KEY (hub key).
mURL_updateUpdate domain channelUpdate a mURL DOMAIN channel you own: set branding, mark it 'claimed', 'blocked' (close the room), or reopen it as 'open'. Owner-scoped — you must own the channel (claim it first with mURL_create). Needs your mosADD login session. Backend: murl-manage EF.
threat_catalogThreat taxonomy catalogread-onlyList the canonical mosadd threat-event taxonomy (the full radar catalog: id, category, default severity, auto-actions, per-platform availability). Filter by category or platform. Pure/offline — returns { count, total, events }. Use to discover what the defensive engine recognises.
threat_classifyClassify threat eventread-onlyClassify a single telemetry event against the mosadd threat taxonomy + DECK engine. For a known event type (e.g. PROCESS_INJECTION, STINGRAY_DETECT, IMSI_CATCHER_SCAN, MEMORY_INJECTION) it returns that event's real severity (info|warning|elevated|critical|killswitch) with action="monitor" — Pegasus-class events surface as critical immediately, but the engine NEVER auto-acts (it tells you, it never disconnects/locks). Unknown strings fall back to the pure DECK decision (log_only|revoke_sessions|lock_account|suspend_did). Returns { action, severity, reason, known_event, category, label }. Determ…
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 1
- Last commit
- Sep 30, 2026 (28 days ago)
- Last release
- Sep 30, 2026 (28 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- Registry name
com.mosadd/mosadd-mcp- Version
- 3.0.0-alpha.55
- Auth
- Auth not stated
- License
- MIT
- Repository
- github.com/Hei33enberg/mosADD-OS
- Website
- mosadd.com
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
Cite this page
mosADD — the comms layer for AI agents MCP server. Agent Mart. https://agentmart.dev/connectors/mosadd-com-mosadd-mcp (last updated 2026-10-24)