mcpField
M
My Mcp Server Example

My Mcp Server Example

ローカル
github.com/Franco-yvr開発ツール081 週間前に更新

My Mcp Server Example について

Cloudflare Workers上でOAuthログイン対応のリモートMCPサーバーを構築するサンプルです。ローカル開発とデプロイに加え、MCP InspectorやClaude Desktopなどのクライアント接続を扱います。

主な機能

  1. 01サーバーのローカル開発
  2. 02OAuthログインの追加
  3. 03Cloudflare Workersへのデプロイ
  4. 04SSE経由でのMCP Inspector接続
  5. 05mcp-remote経由でのClaude Desktop接続

活用シーン

  1. 01MCP Inspectorでサーバーのツールを確認
  2. 02ローカル開発中のOAuthログインのテスト
  3. 03リモートサーバーをデプロイしてClaude Desktopに接続

MCP 対応

定義したMCPツールを、SSEでアクセスできるリモートサーバーとして提供します。MCP InspectorとClaude Desktopから、ローカルまたはデプロイ済みのWorkers URLに接続できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"my-mcp-server-example": {
"command": "npx",
"args": [
"-y",
"nx"
]
}
}
}
起動コマンドnpx -y nx

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmnx

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Cloudflare 上のリモート MCP サーバー

OAuth ログイン機能を備えたリモート MCP サーバーを、Cloudflare Workers 上で起動してみましょう!

ローカルで開発する

# clone the repository
git clone [email protected]:cloudflare/ai.git

# install dependencies
cd ai
npm install

# run locally
npx nx dev remote-mcp-server

ブラウザーで http://localhost:8787/ を開けるはずです。

MCP Inspector をサーバーに接続する

新しい MCP API を確認するには、MCP Inspector を使用できます。

  • npx @modelcontextprotocol/inspector で起動します。
  • Inspector 内で Transport Type を SSE に切り替え、接続する MCP サーバーの URL として http://localhost:8787/sse を入力し、「Connect」をクリックします。
  • (モックの)ユーザー名とパスワードのログイン画面が表示されます。任意のメールアドレスとパスワードを入力してログインします。
  • MCP Inspector に戻るので、定義済みのツールを一覧表示したり、呼び出したりできます!
上記の設定を行った MCP Inspector
ツール呼び出し後の MCP Inspector

Claude Desktop をローカルの MCP サーバーに接続する

MCP Inspector は便利ですが、本当に Claude に接続したいところです!Anthropic のクイックスタートに従い、Claude Desktop で「Settings」>「Developer」>「Edit Config」を開いて設定ファイルを確認してください。

テキストエディターでファイルを開き、次の設定に置き換えます。

{
  "mcpServers": {
    "math": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "http://localhost:8787/sse"
      ]
    }
  }
}

これにより、ローカルのプロキシが起動し、Claude が HTTP 経由で MCP サーバーと通信できるようになります。

Claude を開くとブラウザーウィンドウが開き、ログインできます。右下に利用可能なツールが表示されます。適切なプロンプトを入力すると、Claude はツールの呼び出しを求めるはずです。

ハンマーのアイコンをクリックすると、利用可能なツールの一覧が表示されます
「電卓をなくしてしまい、指も使い切ってしまいました。数学ツールを使って 23 と 19 を足してもらえますか?」というプロンプトに対し、Claude が MCP の add ツールを呼び出して回答します

Cloudflare にデプロイする

  1. npx wrangler kv namespace create OAUTH_KV
  2. ガイドに従って、kv ネームスペース ID を wrangler.jsonc に追加します。
  3. npm run deploy

デプロイしたリモート MCP サーバーをリモート MCP クライアントから呼び出す

上記の「ローカルで開発する」ときと同様に、MCP Inspector を実行します。

npx @modelcontextprotocol/inspector@latest

次に、Inspector で Worker の workers.dev URL(例:worker-name.account-name.workers.dev/sse)を接続する MCP サーバーの URL として入力し、「Connect」をクリックします。

これで、リモート MCP クライアントから MCP サーバーに接続できました。

Claude Desktop をリモート MCP サーバーに接続する

Claude の設定ファイルを更新し、workers.dev URL(例:worker-name.account-name.workers.dev/sse)を指定して、Claude を再起動します。

{
  "mcpServers": {
    "math": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://worker-name.account-name.workers.dev/sse"
      ]
    }
  }
}

デバッグ

問題が発生した場合は、Claude を再起動するか、次のコマンドを使ってコマンドラインから MCP サーバーに直接接続してみると役立つことがあります。

npx mcp-remote http://localhost:8787/sse

まれに、~/.mcp-auth に追加されたファイルを削除すると解決することがあります。

rm -rf ~/.mcp-auth

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。