get_card_by_id
Retrieve a card by its Scryfall ID (a 36-char UUID). Returns the card data in JSON.
Look a Magic card up through Scryfall by text query, exact name or ID, and get its official rulings and its current prices in USD, foil USD, EUR and tix.
LABSCO SUMMARY
The symmetry is what makes it quick to use: whichever handle you already have — an ID out of a search result or an exact name off the card — there is a price tool that takes it, and the rulings tool accepts the Oracle ID as well as the Scryfall one. search_cards returning only the basic fields is a sensible default that keeps a broad search cheap and leaves the full record to the get tools. The get_card_by_name description adds one caveat: when several cards share an exact name, Scryfall returns one of them, usually the most relevant printing, rather than all of them.
A read-only Scryfall server covering card search, retrieval by ID or exact name, official rulings, prices, and a random card.
Nothing — no account, no key.
One command — npx scryfall-mcp-server
USE CASES
The card is fetched by its exact English name and the official rulings come back with the date each was published, which is what decides whether an interpretation still applies.
Scryfall's own query language is passed through untouched, so an oracle-text search returns the matching cards with their sets and collector numbers, and a card can then be pulled in full by id.
Prices come back per card as usd, usd_foil, eur and tix, by name when you have one and by id when the name is ambiguous across printings.
One call returns a random card's data, which is a starting constraint for a deck idea or a fixture for something being built against the card schema.
Counted once with only startup setup. Other versions, modes or optional credentials may expose a different list.
get_card_by_idRetrieve a card by its Scryfall ID (a 36-char UUID). Returns the card data in JSON.
get_card_by_nameRetrieve 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).
get_prices_by_idRetrieve price information for a card by its Scryfall ID. Returns JSON with usd, usd_foil, eur, tix, etc.
get_prices_by_nameRetrieve price information for a card by its exact name. Returns JSON with usd, usd_foil, eur, tix, etc.
get_rulingsRetrieve 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.
random_cardRetrieve a random Magic card from Scryfall. Returns JSON data for that random card.
search_cardsSearch 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.
BEFORE YOU INSTALL
7 tools when we connected.
npx on PATH
CONTEXT COST
Rated by the size of the 7 tool definitions that ride along on every turn, not by how many there are
INSTALLATION
Add the block to your client, or run the command directly.
{
"mcpServers": {
"scryfall-mcp-server": {
"command": "npx",
"args": [
"scryfall-mcp-server"
]
}
}
}npx scryfall-mcp-server