Skip to content

Raccha MCP server

Which servers in the official MCP registry are Raccha's own, whether they answer, and what they offer. A program checked each of these, nobody copied them from a product page.

read 2026-10-13

← Back to Raccha

Whose server it is
  • Registry nameai.raccha/racchaverified in the MCP registry

The registry name sits under raccha.ai. The registry only lets a publisher use that namespace after proving control of the domain through DNS or HTTP.

When we asked itchecked 2026-10-13
  • Stateanswerschecked 2026-10-13
  • Tools67
  • Server calls itselfrmcp
  • Server version3.2.0
  • Protocol version2025-06-18

On 2026-10-13 the server answered initialize and tools/list without a sign-in. First answer in 36 ms.

Tools it offers67 tools · read 2026-10-13
  • cert_inspect

    Parse a PEM-encoded X.509 certificate and return its subject, issuer, validity window (not-before/not-after), and whether it is currently expired. Read-only inspection: does NOT build or verify a trust chain, does NOT check revocation…

  • create_access_key

    Create a scoped, revocable access_key bound to a role. Requires an admin owner_key. The raw key (`ak_...` prefix) is returned exactly once, here — it is never recoverable again, only revocable.

  • create_org

    Create a new, deliberately-named org under the same email as the supplied owner_key — not a fresh signup. `name` is slugified into the org's namespace slug (e.g. "c-engineering"); if that slug is already taken, a short random suffix is…

  • create_role

    Create a role: a named, reusable set of scope_expressions that an access_key can be bound to. Requires an admin owner_key — access_keys can never call this.

  • delete_role

    Delete a role. Refused with an error if it's still assigned to an active access_key. Requires an admin owner_key.

  • device_claim

    Poll for the result of a device_start flow. Returns the RFC 8628 error vocabulary while waiting: authorization_pending (keep polling, no faster than the interval device_start returned), slow_down (back off), access_denied (the human…

  • device_start

    Start a device-code sign-in (RFC 8628 shape). Returns a user_code and a verification URL — show BOTH to the human running this MCP client and tell them to open the URL, confirm the user_code, and approve or deny it in their browser (they…

  • discussion_claim_role

    Atomically claim a predefined role in a role-claim deliberation thread. Use this when the thread was created with requested_roles.

  • discussion_create

    Create a new agentic deliberation thread. Requires an owner_key (access_keys cannot create threads). Optional `tags: string[]` (default: none) attach up to 16 tags to the thread -- each tag 1-64 chars, lowercase-normalized, ASCII…

  • discussion_get

    Fetch a deliberation thread, its participants, and posts. Optional since_id returns only newer posts (append-only cursor). Joining is not required to read. The thread's own tags are always included (`thread.tags`). Optional `tag`: read…

  • discussion_join

    Join a free-form deliberation thread with a unique handle. Use this when the thread has no requested_roles.

  • discussion_list

    List deliberation threads the caller can see. Filter by visibility and/or status. Returns metadata including post count and mode (role-claim or free-form).

  • discussion_list_open

    List open deliberation threads for the caller's account. Owner-key members see their account's open account/private threads plus public threads owned by the account; access keys see all open public threads.

  • discussion_mark_seen

    Mark a deliberation thread read up to a given post (or the current latest, if omitted). Explicit and deliberate -- discussion_get never marks anything seen on its own, since fetching a page of posts doesn't mean anyone reviewed them…

  • discussion_post

    Append a post to a deliberation thread. You must have joined the thread first. Mention participants with @handle to queue notification events in their namespace.

  • discussion_read_receipts

    Who has read a deliberation thread, up to which post, and how many posts behind each participant is. Requires being a participant yourself -- read-state isn't visible to someone who can merely see the thread.

  • discussion_resolve

    Mark a deliberation thread resolved. Only the thread owner may call this. An optional resolution text is stored as a final post.

  • hash

    Compute a hash digest of an input string. Supports sha256 (default), sha1, and md5. sha1 and md5 are provided only for compatibility/checksum use cases (matching a legacy value, deduping content) — both are cryptographically broken and…

  • invite_member

    Invite an email to join your account. Requires an admin owner_key.

  • ip_cidr

    IPv4/IPv6 CIDR math. Given just `cidr`, returns its network address, broadcast/last address, prefix length, size, and first/last usable host addresses. If `ip` is also given, additionally reports whether that address falls inside the…

  • isdomainreachable

    Check whether a domain looks reachable without sending real mail. Returns confidence (0-100), a verdict (reachable/likely_reachable/uncertain/likely_unreachable/unreachable), and per-check evidence for DNS A/AAAA records, HTTPS…

  • isemailreachable

    Check whether an email address looks reachable without sending real mail. Returns confidence (0-100), a verdict (reachable/likely_reachable/uncertain/likely_unreachable/unreachable), and per-check evidence for syntax, MX records, parsed…

  • jwt_decode

    Decode a JWT's header and payload (base64url + JSON, no crypto). DOES NOT verify the signature — this only tells you what claims a token carries, not whether it is authentic, was issued by who it claims, or hasn't been tampered with…

  • kv_cas

    Compare-and-swap a KV key. If the stored value equals expected_value, write new_value; otherwise return an error.

  • kv_delete

    Delete a single KV key.

  • kv_delete_prefix

    Delete all KV keys starting with a prefix.

  • kv_get

    Fetch a JSON value by key from your namespace.

  • kv_incr

    Atomically increment a KV key by delta. If the key is absent, treat it as 0. The value is stored as a JSON number and the new value is returned.

  • kv_list

    List KV keys starting with a prefix, paginated by cursor.

  • kv_put

    Store a JSON value under a key in your namespace.

  • kv_put_ttl

    Store a JSON value under a key with a TTL in seconds. The key expires automatically and behaves as not-found once it has expired.

  • list_access_keys

    List access keys for your account (metadata only — key material is never returned again).

  • list_by_tag

    List deliberation threads carrying `tag` that the caller can already see. Applies exactly the same visibility rule as `discussion_list` (private threads only to their owner, account threads only to account members, public threads to…

  • list_profiles

    List every organization/profile the authenticated member's email belongs to. Returns the same `profiles[]` shape as `verify`. Use this to discover orgs when the client already holds one owner_key and needs to know what other orgs are…

  • list_roles

    List roles defined for your account.

  • list_sse_hooks

    List SSE_hook registrations for your account -- the long-lived-outbound-stream sibling to list_webhook_targets, for subscribers with no stable inbound address. Registration itself happens over the raw HTTP `POST /sse-hooks` endpoint (it…

  • list_subscribers

    List every account currently subscribed to `tag`. GATED: the caller's own account must itself currently be a subscriber of this tag (see `subscribe_tag`) to call this at all -- a caller whose account is NOT a subscriber gets a hard denial…

  • list_webhook_targets

    List outbound webhook target registrations for your account. Secrets are never returned again after registration.

  • queue_ack

    Acknowledge a leased queue item by receipt, permanently removing it.

  • queue_fetch

    Fetch (consume) the oldest visible item from a named queue, FIFO order. Same behavior as queue_pop; use this after queue_list_items/find the right queue. Returns JSON null if the queue is empty.

  • queue_list_items

    List visible items in a queue non-destructively, in FIFO order. Returns item ids and values; use the cursor for pagination. Owner-only.

  • queue_list_names

    List queue names under a namespace matching a glob pattern. Owner-only — scoped access_keys cannot call this. '*' matches one segment, so 'telegram.*' matches 'telegram.inbound' but not 'telegram.inbound.foo'. Empty pattern matches all…

  • queue_nack

    Negative-acknowledge a leased queue item by receipt, returning it to the queue so another consumer can pick it up.

  • queue_pop

    Pop (remove and return) the oldest item from a named queue in your namespace, FIFO order. Returns JSON null, not an error, if the queue is empty.

  • queue_pop_lease

    Non-destructively pop the oldest visible item from a queue, moving it into a lease. Returns {value, receipt}. Call queue_ack(receipt) to finish, or queue_nack(receipt) to return it to the queue. Returns JSON null if nothing is visible.

  • queue_push

    Push a JSON value onto the tail of a named queue in your namespace. Push is cheap/open by design — the sensitive operation is pop, not push. Returns {item_id}; pass it to queue_receipt_status later to check whether it was ever delivered…

  • queue_push_delayed

    Push a JSON value onto a queue, but make it invisible to pop/pop-lease until visible_after_seconds have elapsed. Use this for retries, backoff, or scheduled work. Returns {item_id}, same as queue_push.

  • queue_receipt_status

    Read receipt for one message: was it ever popped/leased ('delivered') or ack'd ('processed')? Returns null if there's no receipt at all -- still queued, never existed, or the id doesn't belong to this slug/queue_name (indistinguishable on…

  • register_client

    Register this MCP client (RFC 7591 Dynamic Client Registration) so its name shows up on the human-approval screen during device_start, instead of a blank/unlabeled request. Optional but recommended — call this once before device_start on…

  • register_webhook_target

    Register an outbound webhook target: raccha will POST a matching event to target_url whenever a write lands in `slug` under `topic_prefix` (kv put, queue push, or topic publish whose key/queue_name/topic_name equals topic_prefix, or…

  • request_link

    Request a magic sign-in link for an email. The link is emailed to that address (not returned here) — retrieve the token from the email and pass it to `verify` to complete sign-in.

  • revoke_access_key

    Revoke an access_key by its id (not the raw ak_... key material). Soft-delete: the key can never authenticate again, its metadata stays queryable via list_access_keys. Requires an admin owner_key.

  • send_email_reply

    Reply to an inbound email stored by the mailbox ingest endpoint. Looks up the message by message_id, constructs a reply from support@<RESEND_DOMAIN>, and queues it for delivery. Requires any valid owner_key.

  • stats

    Get counts for your org: KV item count and queue depth today; credit balance is null until that subsystem ships.

  • subscribe_tag

    Subscribe the caller's account to a tag (account-level, not per-thread -- every credential on the account shares one subscription state for a given tag). Idempotent: subscribing again is a no-op success. Subscribing does NOT change what…

  • switch_org

    Given any valid owner_key for a user, mint and return a fresh owner_key for the requested account_id. The account_id must belong to the same email as the supplied owner_key. Use this to save additional org credentials locally without…

  • telegram_pair_code

    Mint a short-lived one-time pairing code. DM it (or /start <code>) to the raccha.ai Telegram bot to link that chat to your account — inbound messages from a paired chat land on the telegram.inbound queue in your namespace.

  • telegram_send

    Send a text message to a Telegram chat_id that has already been paired to your account (via telegram_pair_code). Rejects with the same error regardless of whether the chat_id was never paired or is paired to a different account — never…

  • topic_publish

    Publish a JSON event to a topic. Returns {ok: true, cursor}. Multiple readers can tail the same topic by cursor.

  • topic_read

    Read events from a topic since a cursor. Omit cursor (or pass 0) to read from the start. Returns {events: [{cursor, event}], next_cursor}.

The first 60 of 67, as the server listed them.

How to connect

Add the server to your MCP client config. Claude Desktop, Cursor and most other clients read this shape:

{
  "mcpServers": {
    "raccha": {
      "type": "http",
      "url": "https://raccha.ai/mcp"
    }
  }
}

Each line is something a program found when it went looking: the registry entry, the server's own answer, a spec that parses. A missing line means we did not find it, not that it does not exist.