Scryfall MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORT | No | Port for SSE server | 3000 |
| CORS_ORIGIN | No | CORS origin for SSE server (optional) | |
| SCRYFALL_BASE_URL | No | Override the base API URL (defaults to https://api.scryfall.com) | https://api.scryfall.com |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_cardsC | Search cards using Scryfall's powerful full-text syntax. |
| search_by_colorsB | Find cards by colors or color identity. |
| search_by_cmcB | Find cards within a mana value range, optionally filtered by color and type. |
| search_by_formatB | Find cards by legality in a given format. |
| get_cardB | Get a single card by Scryfall UUID or by name (exact/fuzzy). |
| random_cardB | Fetch a random card, optionally filtered by a 'q' search query. |
| autocompleteC | Autocomplete card names based on a partial query. |
| list_setsB | List all sets available on Scryfall. |
| get_rulingsC | Get official rulings for a card by Scryfall UUID. |
| list_tagger_tagsB | Fetches Scryfall Tagger tag names from the public docs page. |
| read_tagger_cacheA | Read tags from local cache file without network. |
| refresh_tagger_tagsB | Force refresh Tagger tags from docs and write local cache. |
| search_by_function_tagB | Find cards using Tagger function (oracle) tags, e.g. removal, ramp. |
| search_by_art_tagB | Find cards using Tagger artwork tags, e.g. squirrel, dragon, wizard. |
| csb_parse_deck_textB | Parse a plain-text decklist into cards using Commander Spellbook. |
| csb_find_combos_by_card_idsC | Find combos that the provided cards enable (exact and almost-included). |
| csb_variants_searchC | Search Commander Spellbook variants (combos) by filters like uses/produces. |
| csb_cardB | Fetch Commander Spellbook card by numeric ID. |
| csb_build_card_indexB | Rebuild oracleId→CSB id index and write cache. |
| csb_read_card_indexB | Read oracleId→CSB id index from local cache. |
| csb_lookup_by_oracle_idsA | Map Scryfall oracle_id UUIDs to Commander Spellbook numeric IDs using the local index (builds if stale). |
| csb_find_combos_by_namesB | Resolve names via Scryfall → oracle_id, map to CSB IDs via cached index, then call find-my-combos. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 22 tools
Most tools have distinct purposes, such as get_card for single cards, search_cards for full-text queries, and csb_find_combos_by_card_ids for combo analysis. However, some overlap exists between search_by_art_tag/search_by_function_tag and search_cards, which could cause minor confusion in tool selection.
Naming conventions are mixed, with some tools using verb_noun patterns like get_card or list_sets, while others use descriptive phrases like csb_find_combos_by_card_ids or search_by_art_tag. This inconsistency reduces predictability but remains readable overall.
With 22 tools, the count is borderline high for a Scryfall server, as it includes both core Scryfall operations and Commander Spellbook integration. While comprehensive, it may feel heavy and could benefit from consolidation or clearer scoping.
The tool set provides complete coverage for the Scryfall domain, including card retrieval, searching by various criteria, set listing, rulings, and integration with Commander Spellbook for combos. No obvious gaps are present, supporting full agent workflows.