AIコーディング 2026.04.22

Claude CodeでMCPサーバーを連携する方法|外部データAPI連携の手順

タグ:Claude Code / MCP / 初心者ガイド / AIプログラミング

これでできるようになること

Claude Codeを使う際に、自分のプロジェクトにMCPサーバー(システムのプロセスを拡張する仕組み)を組み込めるようになります。具体的には、AllRatesTodayという為替レート情報を取得するMCPサーバーをClaudeに連携させ、リアルタイム為替データを活用したアプリケーションを作成できるようになります。

前提条件

以下の環境が整っていることを確認してください。

  • Claude Codeへのアクセス権(Claudeの最新版を使用可能な状態)
  • Cursorまたはローカル開発環境(テキストエディタ)
  • Node.js 16以上がインストール済み(MCPサーバー実行に必要)
  • 基本的なコマンドラインツールの使用経験

MCPについて初めての方は、「Model Context Protocol」の略で、AIと外部のツール・データベース・APIを安全につなぐための標準的な約束事と思ってください。

手順

ステップ1:AllRatesTodayサーバーをセットアップする

まず、AllRatesToday MCPサーバーをローカル環境にセットアップします。以下のコマンドを実行してください。

npm install -g allrates-today-mcp

期待される出力:

added XX packages

インストール完了後、サーバーが正常に起動するか確認します。

allrates-today-mcp --version

バージョン番号が表示されればセットアップ成功です。

ステップ2:Claude CodeでMCPサーバーを接続する

Claude Codeのエディタ画面を開き、左サイドバーの設定パネルを見つけてください(macOSではCommand + ,、Windowsではctrl + ,)。

設定内で「MCPサーバー接続」または「拡張ツール」という項目を探します。

表示されたダイアログに以下の情報を入力します:

  • サーバー名:AllRatestoday
  • サーバータイプ:HTTP または設定に応じて Local Process
  • エンドポイント:http://localhost:3000(ローカル実行の場合)

接続ボタンを押すと、接続状況がログに表示されます。

[INFO] MCP server connected: AllRatesToday
[INFO] Available functions: getExchangeRate, listCurrencies

このメッセージが表示されれば接続完了です。

ステップ3:MCPサーバーをClaudeのプロンプト内で使う

Claude Codeのコード生成画面で、以下のような指示を与えます。

AllRatesToday MCPサーバーを使って、
JPY(日本円)からUSD(米ドル)への現在の為替レートを取得し、
100円がいくらのドルに相当するか計算するPythonスクリプトを書いてください。

Claudeが認識すると、プロンプト内に自動的に以下の情報が含まれます:

[MCP Server: AllRatesToday が利用可能です]
Available tools:
- getExchangeRate(from_currency, to_currency)
- listCurrencies()

Claudeはこれらのツール情報を参考に、実際に動作するコードを生成します。生成されたコードはこのような形になるはずです:

import requests

def get_exchange_rate(from_curr, to_curr):
    # MCPサーバーが提供する関数を呼び出す
    response = requests.get(
        f"http://localhost:3000/exchange",
        params={"from": from_curr, "to": to_curr}
    )
    return response.json()

rate_data = get_exchange_rate("JPY", "USD")
jpy_amount = 100
usd_amount = jpy_amount * rate_data["rate"]
print(f"{jpy_amount}円 = {usd_amount}ドル")

ステップ4:Cursorを使う場合の追加設定

CursorエディタでMCPサーバーを活用する場合は、プロジェクトのルートに.cursor/mcp-config.jsonというファイルを作成します。

{
  "mcp_servers": [
    {
      "name": "AllRatesToday",
      "type": "http",
      "endpoint": "http://localhost:3000"
    }
  ]
}

このファイルを保存した後、Cursor内のClaudeチャットに再度「利用可能なMCPサーバー」を確認させるメッセージを送ると、自動で検出されます。

うまくいかないときの確認ポイント

MCPサーバーが接続できない場合

以下の順に確認してください:

  1. サーバープロセスの確認

    ps aux | grep allrates
    

    プロセスが起動していない場合は、手動で起動します。

    allrates-today-mcp start
    
  2. ポート番号の確認 デフォルトではポート3000を使用します。すでに別のアプリケーションが使用している場合は、異なるポート番号を指定できます。

    allrates-today-mcp start --port 3001
    

    その後、設定ファイルのエンドポイントを http://localhost:3001 に更新します。

  3. ファイアウォール設定 macOSの場合、セキュリティ設定でローカルホストへのアクセスをブロックしている可能性があります。システム環境設定 > セキュリティとプライバシー を確認してください。

Claudeがツール情報を認識しない場合

  • Claude Codeを一度閉じて再度開く
  • ブラウザのキャッシュをクリア(Ctrl+Shift+Delete)
  • MCPサーバーが正常に起動しているか、ログ画面で確認
allrates-today-mcp logs

データ取得に失敗する場合

為替データの提供元サービスがダウンしている可能性があります。その場合、サーバーのステータスを確認します:

curl http://localhost:3000/health

期待される出力:

{"status": "ok", "uptime": 3600}

statusok でない場合は、MCPサーバーを再起動してください。

次に読むと良い記事

MCPサーバーの基礎を理解した後は、以下の応用的なトピックに進むことをお勧めします:

  • 複数のMCPサーバーを同時に運用する方法:プロジェクトが大きくなると、為替データ以外にも天気情報やニュースフィードなど複数のデータソースが必要になります。その際の設定方法と トラブルシューティングを別記事で解説予定です。

  • MCPサーバーのセキュリティ設定:APIキーやトークンを安全に管理する方法。特にClaudeに機密情報を直接送らないようにする工夫が重要です。

  • カスタムMCPサーバーの作成:AllRatesTodayのような既成品ではなく、自分たちが持つビジネスデータを Claudeと連携させるための開発手順。Python または Node.js での実装例を紹介します。

このステップを経ると、Claude Code を単なるコード生成ツールではなく、データドリブンなアプリケーション開発プラットフォームとして活用できるようになります。


あわせて読みたい

参考ソース