call-grokbot
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@call-grokbotAsk my bot 'Research Bot' to reply exactly PONG, send once and check until finished."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
call-grokbot
Ask your existing Grok Bots from Codex and Claude Code. A local stdio MCP server sends one self-contained task, reads incremental replies, and can interrupt a contacted bot. Your bot keeps its existing conversation, memory, and connected tools.
Unofficial. Not affiliated with, endorsed by, or supported by Cursor / Anysphere, xAI / Grok, OpenAI, or Anthropic. The Grok Bot RPC is undocumented and may change. No public model-inference endpoint is provided.
Before you start
Install Node.js 22.13+, npm, and Git.
Install and sign in to the client you want to use: Codex or Claude Code. Your coding client's account is separate from the Cursor login below.
Install the official Cursor CLI.
Have a Grok Bot account and at least one existing bot. Use the exact bot name shown in your app; this package does not create bots.
Choose the plugin guide for Codex or
Claude Code. Both plugins include the
consult skill and start the MCP server with a pinned npx package. You do
not need a global call-grokbot install, a source checkout, an npm account,
or a personal API key.
macOS browser authentication uses the official CLI's login Keychain entries. Linux and Windows use the official CLI's auth file. Do not copy tokens into MCP configuration. Real-account plugin tests passed on macOS; Linux and Windows have CI coverage, but their real-account login flows have not been verified.
Related MCP server: codex-claude-bridge
Codex plugin quickstart
1. Install the plugin in your terminal
codex plugin marketplace add ZensHQ/call-grokbot --ref v0.1.1
codex plugin add call-grokbot@call-grokbot
codex plugin listConfirm that call-grokbot@call-grokbot is installed and enabled. These are
terminal commands. If your Codex installation does not recognize plugin,
update to a version that supports plugin commands. See the
official Codex plugin documentation.
2. Sign in to the bot account in your terminal
npx --yes call-grokbot@0.1.1 login
npx --yes call-grokbot@0.1.1 doctorlogin runs the official Cursor CLI's agent login. In the browser, select
the account that owns your bot and complete any security check. doctor
should report "authenticated": true, "authMode": "browser", and
"cursorCliFound": true, without printing credentials.
3. Open a new Codex session and call the skill
Start Codex from the project you want to work in:
codexType this in the Codex conversation, not in your terminal:
$call-grokbot:consult List my existing bots. Do not send any message.Choose an exact name from the result. In the example below, replace
Research Bot with your bot's actual name:
$call-grokbot:consult Ask my existing bot "Research Bot" to reply exactly PONG.
Send the task once. If it is running, use check until it finishes; do not resend.This sends a real message to that bot's existing conversation. A successful
check means you received PONG and the task reached finished; an initial
acknowledgement is not enough. For a real task, replace the PONG request with
one self-contained brief containing the relevant facts, constraints, allowed
actions, and desired output.
Claude Code plugin quickstart
1. Install the plugin in your terminal
claude plugin marketplace add ZensHQ/call-grokbot
claude plugin install call-grokbot@call-grokbot --scope user
claude plugin listConfirm that call-grokbot@call-grokbot is enabled. User scope makes it
available to your Claude Code projects on this machine. If you are already
inside Claude Code, the interactive equivalents are:
/plugin marketplace add ZensHQ/call-grokbot
/plugin install call-grokbot@call-grokbotIn the interactive install panel, choose Install for you (user scope). See the official Claude Code plugin documentation for other installation scopes.
2. Sign in to the bot account in your terminal
npx --yes call-grokbot@0.1.1 login
npx --yes call-grokbot@0.1.1 doctorComplete the official Cursor CLI browser sign-in with the account that owns
your bot. Confirm "authenticated": true, "authMode": "browser", and
"cursorCliFound": true in the doctor result. If you already signed in for
the Codex plugin on this machine, both plugins share that official CLI
session; run npx --yes call-grokbot@0.1.1 doctor to check it instead of
signing in again.
3. Check the connection, then open a new Claude Code session
In your terminal:
claude mcp list
claudeThe health check should show plugin:call-grokbot:call-grokbot as connected.
Allow the server to finish connecting before your first request. If a session
was open before installation, start a new one so it loads the plugin and skill.
Type this in the Claude Code conversation:
/call-grokbot:consult List my existing bots. Do not send any message.Replace Research Bot below with an exact existing name from the result:
/call-grokbot:consult Ask my existing bot "Research Bot" to reply exactly PONG.
Send the task once. If it is running, use check until it finishes; do not resend.This is a real message in your bot's conversation. Verify both PONG and
finished. For normal work, provide the relevant content in the brief: the
bot cannot automatically see your Claude Code session or project files.
Setup troubleshooting
Symptom | What to do |
| Plugin installs do not add a global executable. Use |
| Install the official Cursor CLI linked above. For a nonstandard location, set |
| Run the pinned |
The skill or MCP tools are missing | Confirm the plugin is installed and enabled with |
Claude Code says the tools are unavailable or the server is still connecting | Wait for MCP startup and check |
A bot is missing or a request returns 403 | Confirm the exact bot name and the browser account you signed in to. A valid login does not guarantee access to the undocumented bot RPC; see Recovery and boundaries. |
Optional: direct MCP configuration
Use this instead of the plugin when you only need the four MCP tools. Do not
install both paths in the same client, or you will get duplicate tools. This
path does not include consult; ask the coding assistant to use the
call-grokbot tools in an ordinary prompt.
First complete the same terminal login and doctor check:
npx --yes call-grokbot@0.1.1 login
npx --yes call-grokbot@0.1.1 doctorFor Codex, register the server from your terminal:
codex mcp add call-grokbot -- npx --yes call-grokbot@0.1.1For a bot allowlist and longer tasks, configure the same entry in
~/.codex/config.toml:
[mcp_servers.call-grokbot]
command = "npx"
args = ["--yes", "call-grokbot@0.1.1"]
startup_timeout_sec = 30
tool_timeout_sec = 660
env = { CALL_GROKBOT_AGENTS = "Research Bot" }For Claude Code, register the server from your terminal:
claude mcp add --transport stdio --scope user call-grokbot -- npx --yes call-grokbot@0.1.1Or use this .mcp.json in a trusted project instead of the user-scope entry:
{
"mcpServers": {
"call-grokbot": {
"command": "npx",
"args": ["--yes", "call-grokbot@0.1.1"],
"env": {
"CALL_GROKBOT_AUTH_MODE": "browser",
"CALL_GROKBOT_AGENTS": "Research Bot"
}
}
}
}Replace Research Bot with an exact existing name. Open a new client session
after changing MCP configuration.
Optional: global or source installation
For a global command, install npm install --global call-grokbot@0.1.1.
You can then use call-grokbot login, doctor, and the other subcommands
directly instead of the pinned npx form.
To run from source:
git clone https://github.com/ZensHQ/call-grokbot.git
cd call-grokbot
npm ci
npm run build
node dist/cli.js login
node dist/cli.js doctorUse node /absolute/path/to/call-grokbot/dist/cli.js for source commands.
For JSON/TOML MCP configuration, set command to node and args to
["/absolute/path/to/call-grokbot/dist/cli.js"].
Four tools
Tool | Purpose |
| List existing bots visible to the account, the optional allowlist, and local contacts. Sends no message. |
| Send once to an exact existing bot. A nonexistent or ambiguous name is refused; no bot is created. |
| Read unread replies and wait for an existing task. Never resends a message. |
| Stop a contacted bot's current turn. It may include work started in the app; completed actions are not undone. |
agent may be omitted only when the allowlist contains one bot.
wait_seconds defaults to 45, accepts 0–600, and returns an initial
snapshot at zero. A result contains status: "running" | "finished" and an
optional reply. running means call check; do not repeat ask.
finished requires the live bot state and turn completion evidence, not just
the first acknowledgement. An interrupted turn may finish without a reply.
An ask result may include earlierReplies from prior unread messages; keep
them separate from the answer to the new task. check advances the local
cursor, so a second check does not repeat already consumed replies. Cursor
values remain decimal strings, including values beyond JavaScript's safe integer
range. Internal tool steps are not returned as replies.
Example prompt:
Ask Research Bot to compare the two attached deployment approaches. Include the latency measurements and budget constraints from this conversation. Request three tradeoffs and one recommendation. Research only; make no changes.
Authentication expiry and logout
npx --yes call-grokbot@0.1.1 auth status
npx --yes call-grokbot@0.1.1 auth refresh
npx --yes call-grokbot@0.1.1 logoutDefault authentication is browser, even when CURSOR_API_KEY is set.
If the browser is on another computer, run login with NO_OPEN_BROWSER=1
to have the official CLI print its login URL.
auth refresh opens another official browser sign-in. The
installed official CLI's browser session has a fixed lifetime (the session
observed in testing was about 60 days); its refreshToken field is not a
verified silent-refresh mechanism. This project does not invent an OAuth
refresh endpoint or promise endless unattended browser authentication.
Each authenticated request reads the latest official credentials. A successful
re-login is picked up without restarting the MCP server. Expired, revoked or
missing credentials stop the tool and tell you to sign in again. doctor
reports expiry without displaying tokens; ask/check also warn within five
minutes of browser-session expiry. Logout signs out the shared
official Cursor CLI session; other programs using that login must also sign
in again. Local contacts remain, so account-specific read cursors can resume.
Logout does not stop cloud bot work or undo completed actions.
An optional explicit CALL_GROKBOT_AUTH_MODE=api-key mode supports unattended
short-token renewal. It reads CALL_GROKBOT_API_KEY, CURSOR_API_KEY, an explicit
CURSOR_API_KEY_FILE, then CURSOR_SERVICE_ACCOUNT_KEY. It exchanges the key
for a short-lived session, shares concurrent exchanges, renews before expiry,
and retries an authenticated read once when a new token is obtained.
The tested personal key had both Sign in to the Cursor CLI and SDK and
Run agents enabled; the minimal grant set is not established. Service-account
access to personal bots is not verified. No key is stored by this package.
Configuration
Variable | Default | Meaning |
|
|
|
| auto-detect | Absolute path to the official |
| all existing bots | Comma-separated names, or a JSON array of names / |
|
| Default tool wait, capped by the maximum |
|
| Maximum allowed tool wait |
|
| Timeout per unary HTTP request |
|
| Quiet interval after confirmed completion |
| empty | Comma-separated tool names to omit |
| OS state directory | Local contacts and cross-process locks |
|
| Official origin or a loopback test server; other hosts are refused |
Default state is $XDG_STATE_HOME/call-grokbot or
~/.local/state/call-grokbot, and %LOCALAPPDATA%/call-grokbot on Windows.
State contains only bot identifiers, cursors, timestamps, and pending message
receipts. It is partitioned by the authenticated subject and origin. POSIX
files use 0600 and directories 0700; Windows access follows the user profile ACL.
Raw tokens, keys, conversation text, and browser cookies are never saved here.
Recovery and boundaries
Unconfirmed send: the message ID is saved before dispatch. Use
checkto inspect delivery and replies. Messages and interrupts are never retried automatically, even after timeouts or HTTP 5xx. Do not resend blindly.Cancellation / stream error: the unread cursor is preserved. If a message was sent, its pending receipt survives and
checkcan resume it.Pending task: a second
askis refused untilcheckobserves completion. Per-bot file locks also prevent two local clients interleaving sends.Corrupt state or transcript reset: fail closed. Back up
state.jsonand resolve the affected contact only after checking the real conversation.Permission 403: a valid login does not guarantee access to this undocumented RPC. No alternate account, bot creation or permission expansion is attempted.
These tools operate on the account's real bot conversations. A bot cannot see your IDE context unless you include it; included code and text leave your machine for the service. Bot replies may contain untrusted external material. An allowlist limits this client, not the account permissions of the login. No browser debugging port, saved browser-cookie extraction, HTTP/SSE listener, approval bypass, or Grok model subscription proxy is used.
Development and tests
npm ci
npm run check
npm test
npm run typecheck
npm pack --dry-runTests cover credential rotation, expiry/logout, API-key renewal concurrency, account isolation, large cursors, fragmented Connect frames, read retries, non-retried writes, pending-send recovery, cancellation, cross-process state writes, interrupts during a waiting ask, and MCP discovery / schemas / calls.
For an opt-in real test against a dedicated existing bot:
CALL_GROKBOT_LIVE_AGENT="Your Test Bot" npm run test:liveIt sends a real PONG message, verifies incremental read and confirmed completion, and invokes interrupt after completion. It never modifies a bot profile. Live artifacts are gitignored and contain no credentials. See verification notes for the exact tested boundaries.
By Zens AI. MIT. See NOTICE.md for independent implementation and references.
Available Tools
4 toolsaskA
Send one self-contained task to an existing Grok Bot. Never creates or renames bots. running means use check, not another ask. Messages enter the account's real conversation.
| Name | Required | Description | Default |
|---|---|---|---|
| agent | No | Exact existing Grok Bot name. May be omitted for a single configured bot. | |
| message | Yes | ||
| wait_seconds | No | Maximum seconds to wait for a confirmed turn completion. 0 returns an initial snapshot. |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | No | |
| agent | Yes | |
| reply | No | |
| status | Yes | |
| messageId | No | |
| sessionId | Yes | |
| messageSent | No | |
| earlierReplies | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare openWorldHint=true and idempotentHint=false; the description adds the substantive consequence behind those flags — 'Messages enter the account's real conversation' — which tells the agent that every ask leaves a visible turn in real state. 'Never creates or renames bots' further constrains blast radius. It does not describe what happens to the turn if wait_seconds expires, leaving that to the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four short sentences, zero filler, with the core action and the two behavioral constraints front-loaded before the routing hint. Nothing is repeated from the schema or annotations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists so return shape needn't be explained, and annotations carry the safety profile; what remains genuinely useful — scope, real-conversation side effect, and the check routing — is all present. A brief note on interrupt as the abort path would close the last gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 67% and already documents agent (exact existing name, omissible) and wait_seconds (max wait, 0 returns a snapshot). The description adds meaning the schema lacks for the undocumented message parameter: 'self-contained' signals no conversational carry-over and 'one task' signals no batching in a single call.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a precise verb and resource ('Send one self-contained task to an existing Grok Bot') and immediately bounds scope with 'Never creates or renames bots,' which separates it from the listing/creation sibling. The 'one ... task' phrasing also signals a single dispatch per call, so the agent can tell it apart from check without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly routes the polling case away: 'running means use check, not another ask' names both the alternative and the condition that selects it. It does not cover when to prefer interrupt, or when to omit the agent versus specifying one, so it stops short of full when/when-not coverage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
checkA
Read new replies and wait for the previous task. Advances this machine's cursor. Never resends messages; use after running or an unconfirmed send.
| Name | Required | Description | Default |
|---|---|---|---|
| agent | No | Exact existing Grok Bot name. May be omitted for a single configured bot. | |
| wait_seconds | No | Maximum seconds to wait for a confirmed turn completion. 0 returns an initial snapshot. |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | No | |
| agent | Yes | |
| reply | No | |
| status | Yes | |
| messageId | No | |
| sessionId | Yes | |
| messageSent | No | |
| earlierReplies | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already disclose readOnlyHint=false, openWorldHint=true, and non-idempotency, and the description is consistent with that state-mutating profile by explicitly stating that it advances this machine's cursor. 'Never resends messages' adds a valuable non-obvious guarantee about repeat behavior. What is missing is what happens when the wait times out or returns nothing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three compact clauses with the core action and the cursor side-effect front-loaded, and no filler. The terseness of 'wait for the previous task' is slightly ambiguous, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the description need not explain return values, and with all parameters optional and fully documented, the remaining burden is behavioral. Cursor advancement and non-resend semantics cover the important risks for a polling tool; the gap is only timeout/empty-result behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both the agent and wait_seconds parameters are already fully documented in the schema, including the 0-means-snapshot case. The description adds only the notion of waiting for a task, which does not extend parameter meaning beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description supplies the meaning the vague name 'check' lacks: it reads new replies, waits on the previous task, and advances this machine's cursor. The non-resend guarantee further pins down that only unseen messages come back. It stops short of distinguishing itself from the siblings ask, interrupt, and list, so an agent still has to infer which one to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'use after running or an unconfirmed send' is a concrete triggering condition, which is more than most tools offer. However, no exclusion or alternative is named, so the boundary against 'ask' or 'list' is left implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
interruptADestructiveIdempotent
Stop the contacted bot's current turn, including work started in its app. Conversation and memory remain. Cannot undo completed actions.
| Name | Required | Description | Default |
|---|---|---|---|
| agent | No | Exact existing Grok Bot name. May be omitted for a single configured bot. |
Output Schema
| Name | Required | Description |
|---|---|---|
| agent | Yes | |
| sessionId | Yes | |
| interrupted | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructiveHint=true and idempotentHint=true, but the description adds genuinely non-obvious effects: conversation and memory are preserved, and work started inside the bot's app is also halted. Only the absence of error conditions (e.g., no active turn) keeps it from a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three terse sentences, each carrying distinct information (what stops, what persists, irreversibility), with the core action front-loaded and zero filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, and the description covers the key state consequences of interrupting. It is close to complete, though it omits what happens when no turn is active.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is a single parameter with 100% schema description coverage, including the note that it may be omitted for a single configured bot. The description adds nothing about the agent parameter, so the schema-supplied baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Stop') and resource ('the contacted bot's current turn'), plus scope ('including work started in its app'). It is clearly distinguishable from siblings ask, check, and list, which are read/query oriented.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the nature of an interrupt operation, and 'Cannot undo completed actions' hints at caution, but the description never states when to choose this over simply asking the bot something else or checking status first. No alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
listARead-only
List existing available bots (filtered by the optional allowlist), configured names and contacts on this machine. Sends no message.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| available | Yes | |
| contacted | Yes | |
| configured | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the bar is lower. The description usefully adds that no message is sent and that the data is local to this machine, but says nothing about the allowlist's effect on results or what happens when the allowlist is empty.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences with the resource named up front and the reassurance ('sends no message') placed last where it does the most routing work. Slight awkwardness in 'existing available bots ... configured names and contacts' costs a point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With zero parameters and an output schema that already defines return shape, the description needs only purpose and scope, both of which are present. Only the unexplained allowlist mechanism and the lack of sibling differentiation keep it from full marks.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has zero parameters (baseline 4), yet the description references 'the optional allowlist' as a filter with no corresponding input — likely ambient configuration. That mention is meaningful context but risks confusing an agent looking for a parameter that does not exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (list) and concrete resources (bots, configured names and contacts on this machine), which repairs the generic tool name 'list'. It does not, however, contrast itself with the siblings (check, ask, interrupt), so an agent must infer the routing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Sends no message' implicitly steers the agent away from ask, the sibling that presumably does dispatch messages, and 'on this machine' scopes it locally. But there is no explicit when-to-use or when-not statement, and the distinction from check is left entirely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
v0.1.1- First observed
ask - First observed
check - First observed
interrupt - First observed
list
TDQS
Scored across 4 tools
Each tool maps to a distinct action: list discovers bots, ask sends work, check reads results, and interrupt stops work. The descriptions explicitly clarify the ask/check boundary, so an agent can select the right tool reliably.
All four names are single lowercase imperative verbs in a consistent style: list, ask, check, interrupt. There is no mixing of camelCase, snake_case, or verb/noun patterns.
Four tools is a well-scoped set for a focused bot interaction client, with each tool covering a distinct part of the loop: discovery, sending, polling, and interruption. No tool feels redundant or missing from the core count.
The surface covers the essential lifecycle: list bots, send a task, check replies, and interrupt running work. A minor gap is the lack of explicit bot detail or historical conversation retrieval beyond new replies, but the core workflow is complete.
Maintenance
Related MCP Connectors
Use Claude, ChatGPT, Grok Bot or Muse from the agent you are in: hand it a task, get the work back.
Shared workspace where Claude, ChatGPT, Codex and Grok share files, tasks, decisions and handoffs.
Shared task layer for AI agents: tasks, handoffs and decisions that persist across tools.
Let your AI sessions talk to each other — messaging, tasks, sessions, and alerts
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables Codex to delegate coding tasks to Grok Build CLI, with Codex handling planning and review while Grok executes.63MIT
- AlicenseNot gradedqualityBmaintenanceEnables delegating bounded tasks from Codex to Claude Code, including read-only reviews, isolated branch edits, long-running background work, and approval handling.353 npmMIT
- AlicenseAqualityBmaintenanceEnables any MCP client such as Cursor, Claude Code, or Codex to dispatch tasks to a Cursor Grok Bot running on its cloud computer, poll for its replies, and interrupt an in-progress run. It also lists the bots available for contact, without routing replies through an extra model.41MIT
- AlicenseNot gradedqualityBmaintenanceEnables Claude or other MCP-compatible models to delegate tasks to Grok Bot on a cloud computer, automatically waking it if needed and returning execution results for multi-turn collaboration.1MIT