mcpField
M
mcp-cloudflare

mcp-cloudflare

github.com/heyvhuangクラウド・DevOps33849 回インストール30 週間前に更新
リポジトリ

mcp-cloudflare について

mcp-cloudflareは、MCPを通じてCloudflareサービスを調査・管理するスキルです。Workers、KV、R2、D1などを対象に、読み取り専用の診断と確認を要する変更を分け、証拠や作業計画をファイルに記録します。

主な機能

  1. 01オブザーバビリティのログとメトリクスを検索
  2. 02ビルド、ページ、監査ログを確認
  3. 03WorkersとCloudflareリソースを管理
  4. 04書き込み操作の前に確認を要求
  5. 05証拠、計画、ツール呼び出しログを記録

活用シーン

  1. 01Workerのエラーを調査
  2. 02ビルド履歴とデプロイログを確認
  3. 03KV、R2、D1の変更を計画・検証
  4. 04監査記録でアカウント変更を追跡

MCP 対応

このスキルはMCPツールを使い、Workers、KV、R2、D1、Hyperdrive、オブザーバビリティなどのCloudflareサービスを操作します。読み取り操作と、確認が必要な書き込み操作を分離します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/heyvhuang/ship-faster --skill mcp-cloudflare

インストール後、Claude Code で/mcp-cloudflareを入力して読み込まれたか確認します。

同梱ファイルscenarios.md

詳細

Cloudflare MCP スキル

MCP を通じて Cloudflare のサービス(Workers、KV、R2、D1、Hyperdrive、Observability、Builds、Audit、Container Sandbox)を操作します。

ファイルベースのパイプライン(パスのみを渡す)

トラブルシューティングや変更を複数ステップのワークフローに組み込む場合は、すべての証拠と成果物をディスクに保存し、エージェント/サブエージェント間ではパスのみを渡してください。

推奨ディレクトリ構成(プロジェクト内):runs/<workflow>/active/<run_id>/

  • 入力:01-input/goal.md(症状/目標)、01-input/context.json(アカウント/worker/リソース/time_range など)
  • 証拠:02-analysis/observability.md、02-analysis/audit.md、02-analysis/screenshots/
  • 計画:03-plans/change-plan.md(書き込み操作の計画を記述します。ここに記述し、まず確認を待ってください)
  • 出力:05-final/report.md(結論+証拠の連鎖+ツール呼び出しの概要+次の手順)
  • ログ:logs/events.jsonl(各ツール呼び出しの概要)

権限レベル(基本原則)

レベル目的ツールの範囲リスク管理
診断読み取り専用/クエリ/トラブルシューティングObservability、Builds、Browser、Auditデフォルトの開始地点。書き込み操作は行いません
変更リソースの作成/変更/削除Workers Bindings(KV/R2/D1)ユーザーの確認が必要。実行後に検証します
スーパー管理者最高権限すべて+Container Sandbox分離された環境/テストアカウントでのみ使用します

ツールリファレンス

診断レベル(読み取り専用)

Observability

ツール目的
query_worker_observabilityログ/メトリクス(イベント、CPU、エラー率)をクエリします
observability_keys利用可能なフィールドを確認します
observability_valuesフィールドの値を調べます

Builds

ツール目的
workers_builds_list_buildsビルド履歴を一覧表示します
workers_builds_get_buildビルドの詳細を取得します
workers_builds_get_build_logsビルドログを取得します

ブラウザーのレンダリング(ページキャプチャ)

ツール目的
get_url_html_contentページの HTML を取得します
get_url_markdownMarkdown に変換します
get_url_screenshotページのスクリーンショットを撮影します

監査ログ

ツール目的
auditlogs_by_account_id期間を指定して変更履歴を取得します
変更レベル(書き込み操作)

アカウント

ツール目的
accounts_listアカウントを一覧表示します
set_active_accountアクティブなアカウントを設定します

Builds(設定)

ツール目的
workers_builds_set_active_worker⚠️ アクティブな worker を設定します(確認が必要)

KV

ツール目的
kv_namespaces_listネームスペースを一覧表示します
kv_namespace_get詳細を取得します
kv_namespace_create作成します(⚠️ 確認が必要)
kv_namespace_update更新します(⚠️ 確認が必要)
kv_namespace_delete削除します(⚠️ 確認が必要)

R2

ツール目的
r2_buckets_listバケットを一覧表示します
r2_bucket_get詳細を取得します
r2_bucket_create作成します(⚠️ 確認が必要)
r2_bucket_delete削除します(⚠️ 確認が必要)

D1

ツール目的
d1_databases_listデータベースを一覧表示します
d1_database_get詳細を取得します
d1_database_querySQL を実行します
d1_database_create作成します(⚠️ 確認が必要)
d1_database_delete削除します(⚠️ 確認が必要)

Hyperdrive

ツール目的
hyperdrive_configs_list設定を一覧表示します
hyperdrive_config_get詳細を取得します
hyperdrive_config_create作成します(⚠️ 確認が必要)
hyperdrive_config_edit編集します(⚠️ 確認が必要)
hyperdrive_config_delete削除します(⚠️ 確認が必要)

Workers

ツール目的
workers_listworker を一覧表示します
workers_get_workerworker の詳細を取得します
workers_get_worker_codeソースコードを取得します
スーパー管理者ティア(コンテナーサンドボックス)
ツール目的
container_initializeコンテナーを初期化します(ライフサイクルは約10分)
container_execコマンドを実行します
container_file_writeファイルを書き込みます
container_file_readファイルを読み込みます
container_files_listファイルを一覧表示します
container_file_deleteファイルを削除します

コンテナーに関する注意:状態は永続化されず、存続期間も短いため、一時的なタスク(テストの実行/問題の再現/データの解析)にのみ使用してください。

セキュリティルール(必ず遵守)

読み取り操作
  1. 最初に範囲を定義する:アカウント/ワーカー/リソース ID
  2. アカウントが未設定の場合:まず accounts_list を実行する
  3. 結論には証拠の連鎖(ログ/スクリーンショット/監査記録)を含める必要があります
書き込み操作(3段階のフロー)
1. Plan: Read current state first (list/get)
2. Confirm: Output precise change (name/ID/impact scope), await user confirmation
3. Execute: create/delete/update
4. Verify: audit logs + observability confirm no new errors
禁止事項
  • ❌ 確認なしに作成/削除/更新を実行する
  • ❌ 本番リソースを削除する(ユーザーが明示的に「本番の xxx を削除」と指示した場合を除く)
  • ❌ 隔離されていない環境でスーパー管理者権限を使用する
  • ❌ コンテナーサンドボックスを永続的な環境として使用する

操作ワークフロー

トラブルシューティングのフロー(一般的な例)
1. Clarify symptoms → worker name/time range/error type
2. query_worker_observability to pull logs/metrics
3. If build-related → workers_builds_get_build_logs
4. If page-related → get_url_screenshot to reproduce
5. Trace changes → auditlogs_by_account_id
6. Summarize: root cause + evidence + fix recommendations
リソース管理フロー
1. accounts_list → set_active_account
2. List resources (kv_namespaces_list / r2_buckets_list / d1_databases_list)
3. Plan changes → present to user
4. Execute after confirmation
5. Verify: audit logs + observability shows no errors

出力形式

  • 言語:英語
  • 構成:結論 → 主要なデータ/証拠 → ツール呼び出しの概要 → 次のステップ
  • 書き込み操作:実行する操作と影響範囲を明確に列挙する必要があります

出力例:

✅ Investigation complete: worker `api-gateway` experienced 5xx spike between 18:00-18:30

Root cause: New code deployed threw TypeError when processing /v2/users
Evidence:
- Logs: 18:02 first occurrence of "Cannot read property 'id' of undefined"
- Audit: 18:00 user [email protected] deployed new version
- Metrics: error_rate jumped from 0.1% to 12%

Recommendation: Roll back to previous version, or fix /v2/users handler

エラー処理

状況対応
アカウントが未設定まず accounts_list → set_active_account を実行する
リソースが存在しないID/名前が正しいことを確認し、利用可能なリソースを一覧表示する
権限が不足している必要な権限を説明し、API トークンのスコープを確認するよう提案する
オブザーバビリティのクエリが長すぎるより短い時間範囲に分割し、より具体的な質問をする

シナリオ例

実際の開発シナリオを20件掲載した scenarios.md を参照してください。

コメント