【Claude Code】MCPサーバーを自作して占いツールを作る方法

「MCPサーバーって難しそう…」と思っていませんか。

実はFastMCPというライブラリを使えば、面倒な設定はほとんど不要です。Pythonの関数に目印(デコレータ)を1行つけるだけで、Claude Codeから呼び出せる自分専用ツールが完成します。

本記事では入門題材として「占いツール」を作りながら、FastMCPの手軽さを体験し解説していきます。

目次

そもそもMCPとは?

(出典:Anthropic)

MCP(Model Context Protocol)とは、ClaudeのようなAIに「外付けの道具」を持たせるための共通規格です。

AI本体は文章を生成するのが得意ですが、それ単体では「今日の日付で占う」「社内データベースを検索する」といった具体的な処理はできません。

そこでMCPサーバーを用意し、AIから呼び出せるツールを登録しておくと、Claude Codeが必要に応じてそれを実行してくれます。

このMCPサーバーをゼロから手書きするのは大変ですが、FastMCPを使えば、「占いツール」を作り、Claude Codeから実際に呼び出せるようにする仕組みを、わずか数十行のコードで実装できます。

FastMCPとは?なぜ手軽なのか

MCPサーバーは本来、AIとの通信ルール(どんな形式でメッセージをやり取りするか、ツール一覧をどう伝えるか、など)を細かく実装する必要があります。この“配管”の部分を肩代わりしてくれるのがFastMCPです。
開発者がやることは「普通のPython関数を書いて、@mcp.tool という目印を付ける」だけ。関数の引数や戻り値の型から、AIに渡すツールの説明書(スキーマ)も自動生成されます。通信方式やプロトコルの細部を意識せずに済むため、Webアプリを書いたことがある人なら数分で最初のツールが動かせます。

Python環境を準備する(3ステップ)

文章生成AIのイメージ
STEP
Pythonの確認(3.10以上を推奨)
python --version

コマンドプロンプト画面から上記のコマンドを入力してPythonのバージョンを確認します。

未インストールの場合はPythonを公式サイトからインストールしましょう。

STEP
Python公式サイトにアクセス

まずはサイトにアクセスし、「Downloads」ボタンからWindowsを選択します。

Python
(出典:python.org)
STEP
バージョン「3.10.6」をダウンロード

次に、Pythonバージョン「3.10.6」を選択してダウンロードします。

Python
(出典:python.org)
STEP
Pythonをインストール

インストーラーを開き「Add Python 3.10 to PATH」にチェックを入れて進めます。

Python
(出典:python.org)
STEP
仮想環境を作って有効化

仮想環境を起動して有効化します。

python -m venv venv
venv\Scripts\activate.bat

有効化が完了したらプロンプトの先頭に (venv) と表示されます。

STEP
FastMCPをインストール
pip install fastmcp

そのままコマンドを入力してインストールを開始します。

これで準備完了です。データベースも追加の設定ファイルも不要です。

占いツールを作る(コード解説)

ここからはコードを作成してプログラムを起動するまでを解説します。

server.py を起動するプロジェクトフォルダを作成しておきましょう。

STEP
占いツールを作る(コード解説)

プロジェクトフォルダに server.py を作り、以下もコードを貼り付けます。

import random
from datetime import date
from fastmcp import FastMCP

# サーバーを作る("uranai" はツール群の名前)
mcp = FastMCP("uranai")

@mcp.tool
def fortune(name: str, birthday: str = "") -> str:
"""名前(と任意で生年月日)から、今日の運勢を占って返します。"""
# 名前・生年月日・今日の日付を種にする → 同じ日なら結果は変わらない(日替わり占い)
seed = f"{name}|{birthday}|{date.today().isoformat()}"
rng = random.Random(seed)

levels = ["大吉", "中吉", "小吉", "吉", "末吉", "凶"]
items = ["読書", "散歩", "コーヒー", "早寝", "新しいアプリ", "掃除"]
colors = ["赤", "青", "緑", "黄", "白", "紫"]

return (
f"【{name}さんの今日の運勢】\n"
f"運勢: {rng.choice(levels)}\n"
f"ラッキーアイテム: {rng.choice(items)}\n"
f"ラッキーカラー: {rng.choice(colors)}\n"
f"ラッキーナンバー: {rng.randint(1, 49)}"
)

if __name__ == "__main__":
mcp.run()

ポイントは3つだけです。

  1. FastMCP("uranai") でサーバーの器を作る
  2. 占いをする関数に @mcp.tool を付ける(これだけでClaudeから呼べるツールになる)
  3. 関数の説明("""...""" の部分)は、AIが「いつこのツールを使うか」を判断する手がかりになるので、わかりやすく書く

「日付を種(シード)にした乱数」を使っているのがコツです。こうすると同じ人を同じ日に占えば結果は同じ、翌日になれば結果が変わる、という“日替わり占い”らしい挙動になります。

STEP
サーバーを起動する

ディレクトリを移動してターミナルで次のコマンドを実行します。

python server.py

エラーが出ずに起動すれば成功です。これでClaude Codeから接続する準備が整いました。

STEP
Claude Codeに接続する

Claude Codeに、サーバーを連携します。

claude mcp add uranai -- python /path/to/server.py

PCにClaude Code(CLI)がまだインストールされていない場合は、下記のコマンドを入力してインストールを済ませます。

curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

/path/to/server.pyserver.py の実際のパスに置き換えてください(仮想環境を使っている場合は、その環境のpythonのパスを指定すると確実です)。

設定後、Claude Codeを開き直すか再読み込みすると、uranai サーバーが認識されます。/mcp コマンドで接続状況を確認できます。

デスクトップアプリと連携する場合は、以下の登録情報をclaude_desktop_config.jsonに入力します。

{
  "mcpServers": {
    "uranai": {
      "command": "C:\\Users\\******\\Documents\\uranai\\venv\\Scripts\\python.exe",
      "args": ["C:\\Users\\*****\\Documents\\uranai\\server.py"]
    }
  }
}
STEP
実際に占ってみる

実装が整ったらClaude Codeのアプリを立ち上げて占いをやってみます。

ツールの連係を許可すれば占いが始まります。

決められた内容通りに占いができました。

もっと占い楽しくするアイデア

閃きの見出し画像

基本ができたら、ツールを増やしていきましょう。

FastMCPでは関数を足して @mcp.tool を付けるだけで、ツールを追加できます。

  • おみくじ/タロット化:選択肢を増やしてメッセージを凝ったものにする
  • 星座占い:生年月日から星座を判定し、星座ごとの運勢を返す
  • 外部API連携:天気や暦のAPIと組み合わせて“今日らしさ”を出す
  • 結果の保存:占い履歴をファイルやデータベースに記録する

さらに発展させて、画像生成や大規模な解析など処理が重くなってきたら、ローカルPCではなくGPUクラウド上でサーバーを動かす選択肢もあります。

たとえばGPUSOROBANのようなGPUクラウドを使えば、重い生成処理を高速なGPUにオフロードしつつ、MCPサーバーとして公開することも可能です。

「手軽に作る」から「本格的に運用する」へステップアップしてみましょう。

MCPサーバーは専用ツールを原理から学べる体験ツール

FastMCPを使えば、MCPサーバーは「Pythonの関数に @mcp.tool を付けるだけ」というシンプルさで作れます。

今回は占いツールを例に、環境準備からClaude Codeへの接続、動作確認までを通して体験しました。

占い以外にも「社内ツールの呼び出し」「定型作業の自動化」など、さまざまな専用ツールを同じやり方で量産できます。まずは今回の占いツールを土台に、オリジナルのアイデアを追加してみてください。

📌 本記事の情報は2026年6月時点のものです。 Claude Codeはアップデートが頻繁なため、最新の仕様は公式ドキュメントをあわせてご確認ください。

GPUSOROBAN
GPUSOROBAN

GPUSOROBANは、高性能なGPU「NVIDIA A4000 16GB」を業界最安値の1時間50円で使用することができます。

さらに、クラウドGPUを利用しない時は停止にしておくことで、停止中の料金はかかりません。

クラウドGPUを使えばいつでもStable Diffusionの性能をフルに引き出すことができるので、理想の環境に近づけることができます。

\快適に生成AI!1時間50円~/

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

EdgeHUBは、NVIDIAクラウドパートナーである株式会社ハイレゾが運営しています。「AIと共にある未来へ繋ぐ」をテーマに、画像生成AI、文章生成AI、動画生成AI、機械学習・LLM、Stable Diffusionなど、最先端の生成AI技術の使い方をわかりやすく紹介します。

目次