Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Search and retrieve Magic: The Gathering card data using the Scryfall API. Use this skill when the user asks about MTG cards, wants to search for cards by name, type, color, mana cost, oracle text, set, or any other card attribute. Also use for getting card images, prices, rulings, legality information, or random cards. Triggers include mentions of MTG, Magic, Magic: The Gathering, card names, deck building questions, or requests for card information.
Search and retrieve Magic: The Gathering card data using the Scryfall API. Use this skill when the user asks about MTG cards, wants to search for cards by name, type, color, mana cost, oracle text, set, or any other card attribute. Also use for getting card images, prices, rulings, legality information, or random cards. Triggers include mentions of MTG, Magic, Magic: The Gathering, card names, deck building questions, or requests for card information.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Search for Magic: The Gathering cards using the Scryfall API.
Base URL: https://api.scryfall.com Required Headers: headers = { "User-Agent": "OpenClawMTGSkill/1.0", "Accept": "application/json" } Rate Limiting: Insert 50-100ms delay between requests (max 10 req/sec).
GET /cards/search?q={query} Parameters: q (required): Fulltext search query unique: cards|art|prints (default: cards) order: name|set|released|rarity|color|usd|tix|eur|cmc|power|toughness|edhrec|penny|artist|review dir: auto|asc|desc page: Page number for pagination
GET /cards/named?exact={name} GET /cards/named?fuzzy={name} Use fuzzy for partial matches (e.g., "jac bele" โ "Jace Beleren"). Add &set={code} to limit to specific set.
GET /cards/random GET /cards/random?q={query}
GET /cards/{id} GET /cards/{set_code}/{collector_number}
GET /cards/autocomplete?q={partial_name} Returns up to 20 card name suggestions.
See references/search_syntax.md for the complete search syntax guide. Quick examples: c:red pow=3 - Red cards with power 3 t:merfolk t:legend - Legendary merfolk o:"draw a card" - Cards with "draw a card" in text cmc=3 r:rare - 3-mana rares e:dom - Cards from Dominaria f:standard - Standard legal cards usd<1 - Cards under $1
Use the provided script for common operations: python3 scripts/scryfall_search.py search "lightning bolt" python3 scripts/scryfall_search.py named --exact "Black Lotus" python3 scripts/scryfall_search.py random python3 scripts/scryfall_search.py random --query "t:dragon" Or make direct API calls with proper headers and rate limiting.
When displaying card info, prioritize these fields: name, mana_cost, type_line oracle_text, power, toughness image_uris.normal (for card image) prices.usd, prices.usd_foil legalities (format legality) set_name, rarity For double-faced cards, check card_faces array.
404: Card not found 422: Invalid search query 429: Rate limited (wait and retry) Always validate responses have object field; if object: "error", check details for message.
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.