GitHub
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
作者による説明(英語の原文)
Run the Grok Build CLI as MCP tools: agent runs with live progress, code review, web research.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
GROK_BINARY, GROK_MCP_PERMISSION_CEILING, GROK_MCP_DEFAULT_PERMISSION, GROK_MCP_DEFAULT_MODEL, GROK_MCP_DEFAULT_EFFORT, GROK_MCP_TIMEOUT_MS, GROK_MCP_STATE_DIR, GROK_MCP_MAX_CONCURRENT_RUNS, STRUCTURED_CONTENT_ENABLED必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"grok-build": {
"command": "npx",
"args": [
"-y",
"grok-build-mcp-server"
],
"env": {
"GROK_BINARY": "your-value",
"GROK_MCP_PERMISSION_CEILING": "your-value",
"GROK_MCP_DEFAULT_PERMISSION": "your-value",
"GROK_MCP_DEFAULT_MODEL": "your-value",
"GROK_MCP_DEFAULT_EFFORT": "your-value",
"GROK_MCP_TIMEOUT_MS": "your-value",
"GROK_MCP_STATE_DIR": "your-value",
"GROK_MCP_MAX_CONCURRENT_RUNS": "your-value",
"STRUCTURED_CONTENT_ENABLED": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add grok-build --env GROK_BINARY=your-value --env GROK_MCP_PERMISSION_CEILING=your-value --env GROK_MCP_DEFAULT_PERMISSION=your-value --env GROK_MCP_DEFAULT_MODEL=your-value --env GROK_MCP_DEFAULT_EFFORT=your-value --env GROK_MCP_TIMEOUT_MS=your-value --env GROK_MCP_STATE_DIR=your-value --env GROK_MCP_MAX_CONCURRENT_RUNS=your-value --env STRUCTURED_CONTENT_ENABLED=your-value -- npx -y grok-build-mcp-server動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"grok-build": {
"command": "npx",
"args": [
"-y",
"grok-build-mcp-server"
],
"env": {
"GROK_BINARY": "your-value",
"GROK_MCP_PERMISSION_CEILING": "your-value",
"GROK_MCP_DEFAULT_PERMISSION": "your-value",
"GROK_MCP_DEFAULT_MODEL": "your-value",
"GROK_MCP_DEFAULT_EFFORT": "your-value",
"GROK_MCP_TIMEOUT_MS": "your-value",
"GROK_MCP_STATE_DIR": "your-value",
"GROK_MCP_MAX_CONCURRENT_RUNS": "your-value",
"STRUCTURED_CONTENT_ENABLED": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"grok-build": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"grok-build-mcp-server"
],
"env": {
"GROK_BINARY": "your-value",
"GROK_MCP_PERMISSION_CEILING": "your-value",
"GROK_MCP_DEFAULT_PERMISSION": "your-value",
"GROK_MCP_DEFAULT_MODEL": "your-value",
"GROK_MCP_DEFAULT_EFFORT": "your-value",
"GROK_MCP_TIMEOUT_MS": "your-value",
"GROK_MCP_STATE_DIR": "your-value",
"GROK_MCP_MAX_CONCURRENT_RUNS": "your-value",
"STRUCTURED_CONTENT_ENABLED": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
GROK_BINARY envGROK_MCP_PERMISSION_CEILING envGROK_MCP_DEFAULT_PERMISSION envGROK_MCP_DEFAULT_MODEL envGROK_MCP_DEFAULT_EFFORT envGROK_MCP_TIMEOUT_MS envGROK_MCP_STATE_DIR envGROK_MCP_MAX_CONCURRENT_RUNS envSTRUCTURED_CONTENT_ENABLED envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月8日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント Nuruvala で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.2.5)がレジストリに届いたのは3 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:GitHub, Desktop Commander, Cloudflare MCP
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
MCP server for terminal commands, file operations, and process management
Cloudflare MCP servers
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
An MCP stdio server that exposes the Grok Build CLI (grok) as tools you can call from Claude Code, Cursor, VS Code, or any other MCP client.
Claude Code ──stdio/MCP──▶ grok-build-mcp-server ──spawn──▶ grok CLI ──▶ xAI API
It is a thin process wrapper. It does not reimplement agent logic and does not talk to the xAI API directly — all the intelligence stays in the grok CLI. What this server adds is faithful argument construction, robust process supervision, and clean MCP-shaped output.
Status: 0.2.2. The tool surface is complete. The server runs real headless Grok agents in the
foreground or detached in the background, streams progress while they run, stops a run on request,
reviews git diffs, researches questions on the web, lists the sessions those runs created, and
reports session, usage, and cost. See CHANGELOG.md for what shipped and
ROADMAP.md for what was considered and rejected.
A long agent run is visible while it happens, rather than a silent wait ending in a wall of text. When your client sends a progressToken, the server runs Grok with --output-format streaming-json and forwards a notification per event:
#5 list_dir .
#6 read_file README.md #7 read_file — completed #8 thinking: the user asked me to list files, read README.md, then … #10 writing: DONE #11 finished: end_turn (2 turns)
Progress tracks what the agent is doing, not what phase it is in. Reasoning and response text are coalesced so a token stream does not flood your client, while tool calls are reported as they happen. Clients that support resetTimeoutOnProgress will not time out mid-run.
A client that sends no progressToken gets the cheaper non-streaming path and pays nothing for this.
grok models should succeed)If grok is not on your PATH, set GROK_BINARY to its full path when you register the server.
claude mcp add grok-build -s user -- npx -y grok-build-mcp-server
-s user registers the server for your whole account rather than for the directory you happen to be in. Without it the scope is that one project, which is rarely what you want for a general coding assistant, and the symptom is a server that is missing the next time you start Claude Code somewhere else.
Then, in Claude Code:
> use the grok-build check tool
check reports the resolved binary, the CLI version, whether you are authenticated, and the active permission ceiling. If it is happy, the rest will work.
The server speaks MCP over stdio and takes no arguments of its own:
{
"mcpServers": { "grok-build": { "command": "npx", "args": ["-y", "grok-build-mcp-server"] } } }
VS Code and Cursor accept the install badges at the top of this page, which carry exactly that configuration.
Clients that install from the MCP Registry know this server as io.github.Nuruvala/grok-build-mcp-server. The registry entry is published from the same tag as the npm release and points at the same package.
npx cannot find the servernpx resolves a bare package name against the _local_ project first. If your MCP client's working directory is a checkout of this repository — or of anything else whose package.json is named grok-build-mcp-server — npx -y grok-build-mcp-server runs the local entry point, does not find one, and fails with command not found. Install it somewhere of its own and register that path:
npm install --prefix ~/.local/share/grok-build-mcp grok-build-mcp-server
claude mcp add grok-build -s user -- ~/.local/share/grok-build-mcp/node_modules/.bin/grok-build-mcp-server
Grok runs launched through this server are read-only by default: --permission-mode plan with --sandbox read-only. Nothing can modify your files until you say so.
Permission is a ceiling, set once when you register the server, rather than a prompt on every call. Three levels:
| Level | --permission-mode | --sandbox | What it allows |
|---|---|---|---|
read-only (default) | plan | read-only | Reading and reasoning. No edits |
write | auto | workspace | Edits inside the working directory |
full | bypassPermissions | off | Unattended full approval |
The sandbox is not advisory, and a refusal is not a warning. Under write the run cannot write outside `cwd`, and a refused tool call ends the whole run: the CLI reports stopReason: cancelled, exits 0, and returns only whatever the model had said before the refusal. The server names the refused call and its path in that case, so a refused tool is not mistaken for a model that gave up. The server can see which call failed, not why the CLI refused it. If a run must write somewhere else, say a report outside the repository, either point it at a path inside cwd or use full.
write uses --permission-mode auto rather than acceptEdits, which is measured rather than inherited from the flag's name. Headless grok has no human to accept an edit, so under acceptEdits, dontAsk and default every file mutation is refused and the run dies, on both sandbox profiles. auto and bypassPermissions both work; auto is the narrower one, and it still refuses a write outside the workspace, so full remains a real step up rather than a synonym.
To let Grok make edits:
claude mcp add grok-build -s user \
-e GROK_MCP_PERMISSION_CEILING=write \ -e GROK_MCP_DEFAULT_PERMISSION=write \ -- npx -y grok-build-mcp-server
Use full only if you already run your MCP client with full approval and want the delegated Grok run to be equally unattended. It grants the spawned grok process the same authority you have.
A call that requests more than the ceiling is rejected, not silently downgraded — a clamped run would report success while changing nothing, which is worse than a clear error.
| Variable | Default | Purpose |
|---|---|---|
GROK_BINARY | grok | Path to the grok executable |
GROK_MCP_PERMISSION_CEILING | read-only | Highest level any call may request |
GROK_MCP_DEFAULT_PERMISSION | read-only | Level used when a call requests none |
GROK_MCP_DEFAULT_MODEL | grok-4.6 | Model when a call omits one. none defers to the CLI |
GROK_MCP_DEFAULT_EFFORT | high | Reasoning effort when a call omits one. none defers to the CLI |
GROK_MCP_TIMEOUT_MS | 1800000 | Wall clock for a single run |
GROK_MCP_STATE_DIR | $XDG_STATE_HOME/grok-mcp | Background job records |
GROK_MCP_MAX_CONCURRENT_RUNS | 4 | Background runs alive at once. off for no cap |
GROK_MCP_LOG_LEVEL | info | debug, info, warn, error. Logs go to stderr |
STRUCTURED_CONTENT_ENABLED | off | Also emit structuredContent alongside _meta |
Grok's own variables (XAI_API_KEY, GROK_HOME, GROK_DISABLE_AUTOUPDATER) pass through to the child process untouched.
| Tool | Read-only | Purpose |
|---|---|---|
grok | by ceiling | Run a headless Grok agent. Prompt, session resume/continue/fork, model, effort, tool allow/deny |
review | always | Review a git diff: working tree, a merge-base diff against a ref, or a single commit |
websearch | always | Research a question on the web, and report which searches and sources it actually used |
status | always | Poll a background run, or list recent ones |
stop | no | Terminate a background run's process tree |
sessions | always | List, search, and look up the Grok sessions on this machine |
check | yes | Server version, resolved binary, grok version, auth, permission ceiling, run defaults |
help | yes | grok --help passthrough |
reviewThe diff is collected in-process and embedded in the prompt, so the model does not spend turns rediscovering what it is meant to review.
> review my working tree with grok-build
review the diff against origin/main
Targets are uncommitted, base: " " (a merge-base diff, so commits that landed on the base after you branched are not attributed to you), or commit: " ". With none given it auto-detects: the upstream diff when your branch is ahead, otherwise the working tree — and it says which it chose rather than guessing silently.
review is always read-only, whatever GROK_MCP_PERMISSION_CEILING allows. It takes no permission, write, or yolo argument, because a review that edits the code under review is never what was wanted.
Pass structured: true for machine-readable findings (severity, file, line, summary, rationale) on _meta.findings, validated before you see them.
Two different things can go wrong, and they are reported differently rather than blurred together:
isError: true and _meta.findingsComplete is false. The body leads with why, quoting the CLI's own reason, and names the fix冒頭だけを表示しています。続きはリポジトリで読めます