Run the Grok Build CLI as MCP tools: agent runs with live progress, code review, web research.
Connect Runs on your machine
claude mcp add grok-build-mcp-server -e GROK_BINARY=<GROK_BINARY> -e GROK_MCP_PERMISSION_CEILING=<GROK_MCP_PERMISSION_CEILING> -e GROK_MCP_DEFAULT_PERMISSION=<GROK_MCP_DEFAULT_PERMISSION> -e GROK_MCP_DEFAULT_MODEL=<GROK_MCP_DEFAULT_MODEL> -e GROK_MCP_DEFAULT_EFFORT=<GROK_MCP_DEFAULT_EFFORT> -e GROK_MCP_TIMEOUT_MS=<GROK_MCP_TIMEOUT_MS> -e GROK_MCP_STATE_DIR=<GROK_MCP_STATE_DIR> -e GROK_MCP_MAX_CONCURRENT_RUNS=<GROK_MCP_MAX_CONCURRENT_RUNS> -e STRUCTURED_CONTENT_ENABLED=<STRUCTURED_CONTENT_ENABLED> -- npx -y [email protected]
{
"mcpServers": {
"grok-build-mcp-server": {
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"GROK_BINARY": "<GROK_BINARY>",
"GROK_MCP_PERMISSION_CEILING": "<GROK_MCP_PERMISSION_CEILING>",
"GROK_MCP_DEFAULT_PERMISSION": "<GROK_MCP_DEFAULT_PERMISSION>",
"GROK_MCP_DEFAULT_MODEL": "<GROK_MCP_DEFAULT_MODEL>",
"GROK_MCP_DEFAULT_EFFORT": "<GROK_MCP_DEFAULT_EFFORT>",
"GROK_MCP_TIMEOUT_MS": "<GROK_MCP_TIMEOUT_MS>",
"GROK_MCP_STATE_DIR": "<GROK_MCP_STATE_DIR>",
"GROK_MCP_MAX_CONCURRENT_RUNS": "<GROK_MCP_MAX_CONCURRENT_RUNS>",
"STRUCTURED_CONTENT_ENABLED": "<STRUCTURED_CONTENT_ENABLED>"
}
}
}
}
{
"mcpServers": {
"grok-build-mcp-server": {
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"GROK_BINARY": "<GROK_BINARY>",
"GROK_MCP_PERMISSION_CEILING": "<GROK_MCP_PERMISSION_CEILING>",
"GROK_MCP_DEFAULT_PERMISSION": "<GROK_MCP_DEFAULT_PERMISSION>",
"GROK_MCP_DEFAULT_MODEL": "<GROK_MCP_DEFAULT_MODEL>",
"GROK_MCP_DEFAULT_EFFORT": "<GROK_MCP_DEFAULT_EFFORT>",
"GROK_MCP_TIMEOUT_MS": "<GROK_MCP_TIMEOUT_MS>",
"GROK_MCP_STATE_DIR": "<GROK_MCP_STATE_DIR>",
"GROK_MCP_MAX_CONCURRENT_RUNS": "<GROK_MCP_MAX_CONCURRENT_RUNS>",
"STRUCTURED_CONTENT_ENABLED": "<STRUCTURED_CONTENT_ENABLED>"
}
}
}
}
{
"servers": {
"grok-build-mcp-server": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"GROK_BINARY": "<GROK_BINARY>",
"GROK_MCP_PERMISSION_CEILING": "<GROK_MCP_PERMISSION_CEILING>",
"GROK_MCP_DEFAULT_PERMISSION": "<GROK_MCP_DEFAULT_PERMISSION>",
"GROK_MCP_DEFAULT_MODEL": "<GROK_MCP_DEFAULT_MODEL>",
"GROK_MCP_DEFAULT_EFFORT": "<GROK_MCP_DEFAULT_EFFORT>",
"GROK_MCP_TIMEOUT_MS": "<GROK_MCP_TIMEOUT_MS>",
"GROK_MCP_STATE_DIR": "<GROK_MCP_STATE_DIR>",
"GROK_MCP_MAX_CONCURRENT_RUNS": "<GROK_MCP_MAX_CONCURRENT_RUNS>",
"STRUCTURED_CONTENT_ENABLED": "<STRUCTURED_CONTENT_ENABLED>"
}
}
}
}
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools
This server runs locally, so its tools are listed by your MCP client once it starts.
Environment variables
| Name | Description |
|---|---|
GROK_BINARYOptional | Path to the grok executable. Only needed when grok is not on PATH. |
GROK_MCP_PERMISSION_CEILINGOptional | Highest permission level any call may request. Granted once at registration and never prompts again. |
GROK_MCP_DEFAULT_PERMISSIONOptional | Permission level used when a call specifies none. Must be at or below the ceiling. |
GROK_MCP_DEFAULT_MODELOptional | Model used when a call omits one. |
GROK_MCP_DEFAULT_EFFORTOptional | Reasoning effort used when a call omits one. |
GROK_MCP_TIMEOUT_MSOptional | Wall-clock kill for a single run, in milliseconds. |
GROK_MCP_STATE_DIROptional | Directory for background job records. Defaults to $XDG_STATE_HOME/grok-mcp. |
GROK_MCP_MAX_CONCURRENT_RUNSOptional | Background runs alive at once. Use off, none, or unlimited for no cap. |
STRUCTURED_CONTENT_ENABLEDOptional | Emit structuredContent alongside _meta. Off by default because some clients mishandle it. |
Details
| Package | [email protected] (NPM, stdio) |
| First published | 20 Aug 2026 |
| Last updated | 20 Aug 2026 |
| Registry name | io.github.Nuruvala/grok-build-mcp-server |
More developer tools servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
