Scryfall MCP Server

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Schema

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Tools

Functions exposed to the LLM to take actions

NameDescription
search_cards

Search for MTG cards by a text query, e.g. 'oracle text includes: draw cards'. Returns a list of matching cards (with basic fields: name, set, collector_number, ID). If no matches are found, returns an error message from Scryfall.

get_card_by_id

Retrieve a card by its Scryfall ID (a 36-char UUID). Returns the card data in JSON.

get_card_by_name

Retrieve a card by its exact English name, e.g. 'Black Lotus'. Returns the card data in JSON. If multiple cards share that exact name, Scryfall returns one (usually the most relevant printing).

random_card

Retrieve a random Magic card from Scryfall. Returns JSON data for that random card.

get_rulings

Retrieve official rulings for a specified card by Scryfall ID or Oracle ID. Returns an array of rulings. Each ruling has a 'published_at' date and a 'comment' field.

get_prices_by_id

Retrieve price information for a card by its Scryfall ID. Returns JSON with usd, usd_foil, eur, tix, etc.

get_prices_by_name

Retrieve price information for a card by its exact name. Returns JSON with usd, usd_foil, eur, tix, etc.