MCP Server – Scryfall API Interface について
Scryfall APIに接続し、Magic: The Gatheringのプレイヤーやツールがカードを検索して詳細を確認できるMCPサーバーです。名前、色、タイプ行、Oracleテキストで検索でき、属性や価格も取得できます。
主な機能
- 01カード名で検索
- 02色とタイプ行で絞り込み
- 03Oracleテキストを検索
- 04カードの能力値、レアリティ、セットを表示
- 05USDとEURの通常版・フォイル価格を表示
活用シーン
- 01名前やルールテキストからカードを探す
- 02色やタイプに合うカードを探す
- 03カードの属性とセットを確認
- 04通常版とフォイルの価格を確認
MCP 対応
Scryfallのカード検索と詳細取得をMCPクライアントに提供します。Claude Desktopからも利用できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP サーバー – Scryfall API インターフェース
これは、Scryfall API と連携し、Magic: The Gathering のカードデータを詳しく取得して表示する MCP サーバーです。カード名、色、タイプ、テキストの内容でカードを検索できます。
機能
- Scryfall 経由で MTG カードを次の条件で検索します:
- カード名
- 色
- タイプ行
- Oracle テキスト
- カードデータを詳しく出力します:
- Oracle テキスト、マナ・コスト、色
- タイプ、パワー/タフネス、レアリティ
- セット名
- USD/EUR 建ての価格(通常版とフォイル版)
プロジェクトのセットアップ
このプロジェクトでは、Python 環境と依存関係の管理に uv を使用しています。すべての依存関係は pyproject.toml で宣言されています。
必要条件
- Python 3.12+
- uv(
cargo install uvでインストール)
インストール
uv venv
source .venv/bin/activate # or `.venv/Scripts/activate` on Windows
uv pip install -r pyproject.toml
プロジェクトの実行
uv run scryfall.py "Atraxa" を実行すると、コンソールに Atraxa カードの Scryfall 検索結果が表示されます。ただし、このプロジェクトは Claude Desktop のような MCP ホストから実行することを想定しています。
Claude Desktop との連携
Claude Desktop は MCP サーバーを実行して Scryfall API とやり取りし、その結果を使用できます。最新バージョンの Claude をインストールするか更新し、まだ存在しない場合は claude_desktop_config.json ファイルを作成する必要があります:
macOS の場合は ~/Library/Application\ Support/Claude/claude_desktop_config.json
Windows の場合は $env:AppData\Claude\claude_desktop_config.json
{
"mcpServers": {
"scryfall": {
"command": "/ABSOLUTE/PATH/TO/BIN/uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/mcp-server",
"run",
"scryfall.py"
]
}
}
}
テスト
このプロジェクトでは、ユニットテストに pytest を使用しています。テストは tests/ ディレクトリにあります。
テストの実行
テストスイート全体を実行するには:
pytest
特定のテストを実行するには:
pytest tests/test_scryfall.py::test_get_cards_no_query
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。