mtg s
Model Context Protocol (MCP) servers for searching for cards with the Scryfall API, and managing the LLM's decklist and hand when playing
claude mcp add --transport stdio artillect-mtg-mcp-servers python scryfall_server.py
How to use
This MCP deployment provides two Python-based MCP servers for Magic: The Gathering deck management and card data access via Claude. The mtg-server handles deck operations such as uploading decks, drawing cards, managing your hand, mulligans, and sideboarding. The scryfall server exposes card search and lookup capabilities by integrating with the Scryfall API, enabling random card draws and name-based queries. To use these tools, run both servers locally (or in your preferred environment) and configure Claude to point at the corresponding endpoints. When Claude forwards a request to the servers, you can perform actions like uploading a deck list, drawing from your deck, viewing your hand, or looking up card details and random cards through Scryfall integration.
How to install
Prerequisites:
- Python 3.9+ installed on your system
- A Python virtual environment is recommended
- Access to the project repository (clone from GitHub)
Installation steps:
-
Clone the repository git clone https://github.com/artillect/mtg-deck-mcp-server.git cd mtg-deck-mcp-server
-
Create and activate a virtual environment (optional but recommended) python -m venv .venv
Windows
..venv\Scripts\activate
macOS/Linux
source .venv/bin/activate
-
Install required Python packages pip install fastmcp httpx
-
Run the two MCP servers (in separate terminals or as background services)
Start MTG Deck Manager server
python mtg_server.py
Start Scryfall integration server
python scryfall_server.py
-
Configure Claude to connect to the running servers (see Claude Desktop Client Configuration in the repository README) and ensure both servers are up when using their features.
Additional notes
Tips and notes:
- The Scryfall server may occasionally crash during ongoing development; restart as needed.
- Ensure both the MTG server and the Scryfall server are running to access their respective features.
- If you modify paths or run from a different environment, adjust the command and arguments in Claude's configuration accordingly.
- If you encounter environment-related issues, verify that your Python virtual environment is activated and that dependencies (fastmcp, httpx) are installed.
- For production deployments, consider containerizing the services and using a process manager to keep servers running and to handle restarts automatically.
Related MCP Servers
mcp-vegalite
MCP server from isaacwasserman/mcp-vegalite-server
github-chat
A Model Context Protocol (MCP) for analyzing and querying GitHub repositories using the GitHub Chat API.
nautex
MCP server for guiding Coding Agents via end-to-end requirements to implementation plan pipeline
pagerduty
PagerDuty's official local MCP (Model Context Protocol) server which provides tools to interact with your PagerDuty account directly from your MCP-enabled client.
futu-stock
mcp server for futuniuniu stock
mcp -boilerplate
Boilerplate using one of the 'better' ways to build MCP Servers. Written using FastMCP