iwantmymtg-mcp について
iwantmymtg-mcpは、Magic: The Gatheringのカードやコレクションを管理するプレイヤー向けに、I Want My MTG APIをMCPクライアントへ公開します。カードや価格の検索はキー不要で、APIキーを使うとコレクションや売却関連の機能も利用できます。
主な機能
- 01カード、セット、未開封商品を検索
- 02現在価格と価格履歴を確認
- 03在庫、取引、デッキを管理
- 04ポートフォリオの実績とコレクション価値を確認
- 05購入リスト、価格アラート、通知を管理
活用シーン
- 01カードの版を探して価格を比較
- 02過去30日間のカード価格を確認
- 03在庫を更新、またはデッキリストを読み込み
- 04販売業者別にコレクションの売却額を見積もり
MCP 対応
I Want My MTG APIの機能をツールとしてMCPクライアントに提供します。読み取り専用の検索はAPIキー不要で、認証が必要なツールにはIWMM APIキーが必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y iwantmymtg-mcpIWMM_API_KEYシークレットPersonal IWMM API key (iwm_live_...). Optional; required only for the authenticated tools (anything that reads or changes your own collection). Read-only card, set, and price tools work without it.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
60掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| q | string | いいえ | カード名とフレーバー名を検索する部分文字列。任意です。setCode/rarity/type/format のみで絞り込む場合は省略してください。 |
| page | integer | いいえ | 1 始まりのページインデックス。 |
| type | string | いいえ | カードのタイプ行に対する部分一致(例:'Goblin'、'Instant')。 |
| limit | integer | いいえ | ページサイズ(最大 100)。 |
| format | enum | いいえ | このフォーマットで使用可否の項目があるカードに絞り込みます(例:'modern'、'commander')。standard | commander | modern | legacy | vintage | brawl | explorer | historic | oathbreaker | pauper | pioneer |
| rarity | enum | いいえ | レアリティで絞り込みます。common | uncommon | rare | mythic |
| setCode | string | いいえ | 3~5 文字のセットコード(例:'lea'、'mh3')。 |
| legality | enum | いいえ | 'format' と併用します。format が設定されている場合、デフォルトは 'legal' です。legal | banned | restricted |
詳細
iwantmymtg-mcp
I Want My MTG 用の MCP サーバーです。IWMM の API をツールとして公開し、Claude Desktop、Claude Code、Cursor などの MCP クライアントから、Magic: The Gathering のカードやセットを検索したり、ユーザーのコレクションを会話形式で管理したりできます。
npm、MCP Registry、Smithery で公開されています。API に合わせて対応範囲を拡大しています。常に最新のツール一覧は
docs/TOOLS.mdをご覧ください。

できること
- 匿名(キー不要): カードの検索、セットと番号によるカードの検索、現在価格と過去30日間の価格履歴の取得、カードの買取(ベンダーへの売却)オファーの取得、セットと収録カードの一覧表示、未開封製品の一覧表示。
- 認証済み(IWMM API キーが必要): 在庫と取引の管理、デッキの作成・管理(作成、デッキリストからのインポート、カードの編集、不足しているカードの買い物リストへの追加)、ポートフォリオの概要、履歴、パフォーマンス、キャッシュフロー、実現利益、内訳(色別を含む。各項目の詳細表示も可能)の確認、価格アラートと通知の管理。
- 売却ツール(キーが必要): コレクションの市場売却価格(カードごとの最良買取オファーをベンダー別に集計)の確認、買い物リスト(欲しいものリスト)の管理、買い物リストに向けて売却する際の現金とストアクレジットのどちらが有利かの提案取得。
今後の予定については、プロジェクトのロードマップをご覧ください。
インストール
Node 20 以降が必要です。
npx iwantmymtg-mcp
お好みに応じて、グローバルにインストールすることもできます。
npm install -g iwantmymtg-mcp
iwantmymtg-mcp
Claude Desktop
claude_desktop_config.json に追加します(macOS:~/Library/Application Support/Claude/claude_desktop_config.json、Windows:%APPDATA%\Claude\claude_desktop_config.json)。
{
"mcpServers": {
"iwmm": {
"command": "npx",
"args": ["-y", "iwantmymtg-mcp"],
"env": {
"IWMM_API_KEY": "iwm_live_..."
}
}
}
}
IWMM_API_KEY は任意です。読み取り専用ツールはキーなしで利用できます。https://iwantmymtg.net/user/api-keys でキーを作成してください。
Claude Code
プロジェクト内の .mcp.json(またはグローバル設定の ~/.claude/.mcp.json)に追加します。
{
"mcpServers": {
"iwmm": {
"command": "npx",
"args": ["-y", "iwantmymtg-mcp"],
"env": { "IWMM_API_KEY": "iwm_live_..." }
}
}
}
Cursor
~/.cursor/mcp.json(グローバル設定)またはプロジェクト内の .cursor/mcp.json に追加します。
{
"mcpServers": {
"iwmm": {
"command": "npx",
"args": ["-y", "iwantmymtg-mcp"],
"env": { "IWMM_API_KEY": "iwm_live_..." }
}
}
}
保存後、Cursor を再起動し、Settings -> Features -> MCP Servers に iwmm が表示されることを確認してください。
プロンプトの例
- 「Lightning Bolt の版を検索して、一番安いものを教えてください。」
- 「Modern Horizons 3 の Bloodbraid Elf の価格履歴を教えてください。」
- 「Lightning Bolt LEA を4枚、在庫に追加してください。」
- 「MH3 の未開封製品には何がありますか?」
- 「今コレクションを売るといくらになり、どのベンダーが一番高く買い取ってくれますか?」
- 「これらのカードを買い物リストに追加して、現金とストアクレジットのどちらがお得か教えてください。」
よくある操作の手順については examples/ を、ツールの完全なリファレンスについては docs/TOOLS.md をご覧ください。
設定
| 環境変数 | デフォルト | 用途 |
|---|---|---|
IWMM_API_KEY | (未設定) | 個人用 API キー。認証が必要なツールでのみ必要です。 |
IWMM_BASE_URL | https://iwantmymtg.net | セルフホストまたはローカル開発用の IWMM インスタンスの URL を上書きします。 |
ローカル開発
npm install
npm run build
node dist/index.js
ライブリロードを使う場合は、tsx を使用します。
npm install
npx tsx src/index.ts
ライセンス
このプロジェクトは MIT ライセンスで公開されています。詳細は LICENSE ファイルをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。