メインコンテンツまでスキップ

初めてのMCPサーバーを構築して接続する

上級

小さなMCPサーバーを構築して接続することで、カスタムツールを Claude に公開しましょう。配線が明確になるよう最小限に保ち、その後にあなたの実際のロジックに差し替えます。

構築するもの

Claude が呼び出せる1つのツール word_count を持つ stdio サーバーです。同じパターンが「私のDBにクエリする」「チケットを開く」などにもスケールします。

ステップ1 — サーバー

server.py(Python。TypeScript版はMCPスキャフォールドにあります):

from mcp.server.fastmcp import FastMCP

mcp = FastMCP("text-tools")

@mcp.tool()
def word_count(text: str) -> int:
"""Count the words in a piece of text."""
return len(text.split())

if __name__ == "__main__":
mcp.run() # stdio transport

ステップ2 — 宣言する

リポジトリのルートにある .mcp.json に追加します:

{ "mcpServers": {
"text-tools": { "command": "python", "args": ["server.py"] }
} }

ステップ3 — 接続してテストする

リポジトリ内で Claude Code を起動します。こう尋ねます: 「text-tools サーバーを使って 'the quick brown fox' の単語数を数えて。」 Claude は word_count を呼び出し、4 と報告するはずです。ツールが見えない場合は、サーバーが単独でクリーンに起動するか、そして .mcp.json のパスが正しいかを確認してください。

ステップ4 — 本物にする

word_count を、あなたの実際の能力 — DBクエリ、内部API呼び出し、ファイル操作 — に置き換えます。入力検証を追加し、エラーは結果として返しましょう。

セキュリティチェックリスト

:::warning サーバーはコード + アクセスである

次へ