GitHub
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
作者による説明(英語の原文)
Cloudflare tools for coding agents: zones, DNS, analytics, Workers, Pages, storage and tunnels.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"cloudflare-tools": {
"command": "npx",
"args": [
"-y",
"@craftsamo/cloudflare-tools"
]
}
}
}ターミナルでこれを実行します
claude mcp add cloudflare-tools -- npx -y @craftsamo/cloudflare-toolsプロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"cloudflare-tools": {
"command": "npx",
"args": [
"-y",
"@craftsamo/cloudflare-tools"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"cloudflare-tools": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@craftsamo/cloudflare-tools"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント craft-agent で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.1.0)がレジストリに届いたのは今日です。
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、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Cloudflare tools for coding agents: zones, DNS, analytics, Workers, Pages, storage and tunnels.
| Harness | Delivery | Pinned by |
|---|---|---|
| OpenCode V2 | native plugin (npm package, with skills) | the version in the package |
| OpenCode V1 | native plugin (npm package, no skills) | the version in the package |
| Claude Code | plugin: MCP server and skills | the release tag, as the ref |
| Codex | plugin: MCP server and skills | the release tag, as the ref |
| Grok Build | plugin: MCP server and skills | the release tag, as @ref |
| Antigravity | plugin: MCP server and skills | the release tag's tree URL |
| Hermes Agent | native plugin (Python, calls the command line) | the release commit, as the SHA |
| other MCP host | MCP server from npm | the version in the package |
The tools need Node.js 24 or later. docs/conventions.md describes how the tools are named and how they behave.
Install from a release, never from the default branch: a release is a tag whose commit carries the built dist/, and the default branch does not. In the commands below, is a release's version (1.2.3) and is the commit its tag names:
gh api repos/craft-agent/cloudflare-tools/commits/v<version> --jq .sha
OpenCode V2 takes the package and its options in opencode.json:
{
"plugins": [{ "package": "@craftsamo/cloudflare-tools@ ", "options": { "read_only": false } }], "permissions": [{ "action": "cloudflare_*", "resource": "*", "effect": "ask" }] }
OpenCode V1 takes the package as a string, or as a pair with its options:
{
"plugin": [["@craftsamo/cloudflare-tools@ ", { "read_only": false }]], "permission": { "cloudflare_*": "ask" } }
OpenCode allows any action no rule names, so the plugin's request is granted silently unless a rule says ask. Read tools never ask, so the cloudflare_* glob is safe.
V1 registers no skills. Unpack the package and copy its skills/* folders into ~/.config/opencode/skills/:
npm pack @craftsamo/cloudflare-tools@<version>
tar -xzf craftsamo-cloudflare-tools- .tgz mkdir -p ~/.config/opencode/skills cp -r package/skills/* ~/.config/opencode/skills/ rm -rf package craftsamo-cloudflare-tools- .tgz
claude plugin marketplace add craft-agent/cloudflare-tools#v<version>
claude plugin install cloudflare-tools@craft-agent
codex plugin marketplace add craft-agent/cloudflare-tools --ref v<version>
codex plugin add cloudflare-tools@craft-agent
Codex turns - into _ in server names, so it shows the tools as mcp__cloudflare_tools__cloudflare_*. It starts the MCP server in the plugin's install directory, which is never the caller's working tree.
grok plugin install craft-agent/cloudflare-tools@v<version> --trust
Grok starts the MCP server in the session's working directory.
Install from the tree of the release tag, never from the default branch, which has no built dist/; Antigravity clones the tag into ~/.gemini/config/plugins/cloudflare-tools.
agy plugin install https://github.com/craft-agent/cloudflare-tools/tree/v<version>
Hermes installs a commit, not a tag, and the plugin installs disabled:
hermes plugins install craft-agent/cloudflare-tools --ref <sha>
hermes plugins enable cloudflare-tools
If a Hermes gateway is already running, restart it (hermes gateway restart) to load the plugin.
Add the server to the host's MCP configuration. Flags go in args:
{
"mcpServers": { "cloudflare-tools": { "command": "npx", "args": ["-y", "@craftsamo/cloudflare-tools@ ", "--read-only"] } } }
Each toolset comes with a skill that tells an agent how to use its tools.
account)Account credentials, token verification, and audit logs.
| Tool | What it does | Class |
|---|---|---|
cloudflare_account_read | view account details and token status, list configured accounts, or query audit logs | read |
The skill is cloudflare-account, shown as cloudflare-tools:cloudflare-account in Claude Code and cloudflare-tools:account in Hermes.
zones)Zone lookup, settings (read and change), Universal SSL, certificates, and DNSSEC.
| Tool | What it does | Class |
|---|---|---|
cloudflare_zone_read | list zones, view details, read settings, Universal ssl status, or dnssec | read |
cloudflare_zone_setting_edit | change 1–20 zone settings in order; refuses a change that lowers protection | overwrite |
cloudflare_zone_setting_weaken | change zone settings in ways that lower a visitor's protection; always asks first | administrative |
cloudflare_zone_cache_purge | purge cached copies of up to 100 URLs, hosts, prefixes or tags in a zone | idempotent |
cloudflare_zone_cache_purge_all | purge the whole cache of a zone; always asks first | administrative |
cloudflare_zone_dnssec_enable | turn DNSSEC on for a zone; harmless until registrar publishes the DS record | idempotent |
cloudflare_zone_dnssec_disable | turn DNSSEC off for a zone; requires DS removed at registrar first | administrative |
The skill is cloudflare-zones, shown as cloudflare-tools:cloudflare-zones in Claude Code and cloudflare-tools:zones in Hermes.
src/core/ / .ts with defineTool: an ID _ _ , a title and description, the Zod argument and output schemas, its toolset and write class, and execute(args, context). A write tool also gives targets(args, context): what the call writes to, as a permission rule should name it. .test.ts), calling it through invoke as the entry points do. A tool that runs a program is tested against a fake of that program on PATH; no test reaches a real service.src/tools.ts. A new toolset goes into toolsets in src/project.ts (and defaultToolsets when it is on by default).skills/ - /SKILL.md.pnpm run build && pnpm run manifests to list the tool in plugin.yaml, then describe it under "Tools and skills".docs/conventions.md has the rules each step follows.
Every read tool is named _ _read. Reads can run unasked; writes are confirmed by the harness.
| Harness | Reads without asking |
|---|---|
| OpenCode | always; the plugin asks only before a write |
| Claude Code | the rule mcp__plugin_cloudflare-tools_cloudflare-tools__*_read in permissions.allow of ~/.claude/settings.json |
| Codex | always; Codex runs tools that declare readOnlyHint unasked, as the read tools do |
| Grok Build | grok --allow 'MCPTool(cloudflare-tools__*_read)' --allow 'MCPTool(cloudflare_*_read)' (both rules; see below) |
| Antigravity | the rule mcp(cloudflare-tools_cloudflare-tools/ ) in permissions.allow, one for each read tool |
| Hermes | always; the plugin asks only before a write |
Where a write is asked about, and where it is not:
cloudflare_* rule shown under OpenCode.codex exec, and Grok Build under grok -p, refuse a write they cannot ask about, unless it is allowed beforehand.use_tool tool, and the agent often names a tool without its server first. Grok checks the rules against the name as given, so the server-qualified rule alone does not match that first call. The second rule matches the short name; a write still matches neither.cloudflare-tools_cloudflare-tools (plugin, then server). agy -p refuses a tool it cannot ask about.hermes chat -q refuses a write it cannot ask about; hermes -z and --yolo skip approval, so writes then run unasked.Every entry point takes the same settings. A flag wins over its environment variable, and an option or setting wins over the variable too.
| Setting | Flag | Variable | Meaning |
|---|---|---|---|
toolsets | --toolsets | CLOUDFLARE_TOOLS_TOOLSETS | the toolsets that are on, or all; default those src/project.ts names |
read_only | --read-only | CLOUDFLARE_TOOLS_READ_ONLY | registers no tool that writes; wins over every other setting |
tools | --tools | CLOUDFLARE_TOOLS_TOOLS | single tools to add by ID, whatever their toolset |
exclude_tools | --exclude-tools | CLOUDFLARE_TOOLS_EXCLUDE_TOOLS | single tools to remove by ID; wins over tools and toolsets |
confirm | --confirm | CLOUDFLARE_TOOLS_CONFIRM | MCP server only: harness (default) or elicitation, as the conventions say |
Lists are comma-separated in a flag or a variable. Where each harness reads them:
options shown above, with lists as arrays and read_only as a boolean.plugins.entries.cloudflare-tools.settings in config.yaml: plugins:
entries: cloudflare-tools: settings: read_only: false exclude_tools: []
[mcp_servers] in Codex's config with flags in args (as in Any other MCP host) instead of using the plugin.The tools call Cloudflare with API tokens read from the environment, never from a setting or an argument. Each token comes wi
冒頭だけを表示しています。続きはリポジトリで読めます