mtg-edh-deckbuilder

v1.0.3

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.

1· 1.9k·0 current·0 all-time
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
The name/description (Scryfall MTG card search) matches the included SKILL.md and the Python CLI script which issues requests to https://api.scryfall.com. There are no unrelated environment variables, binaries, or external services requested.
Instruction Scope
SKILL.md restricts runtime behavior to making HTTP requests to Scryfall with a stated User-Agent, respecting rate limits, and formatting results. It does not instruct reading local files, accessing unrelated environment variables, or contacting unexpected endpoints.
Install Mechanism
There is no install spec (instruction-only skill plus a bundled script). Nothing is downloaded or extracted from external URLs and no package manager installs are declared.
Credentials
The skill requires no environment variables, credentials, or config paths. The requests it makes are appropriate for the stated purpose (searching Scryfall).
Persistence & Privilege
always is false and the skill does not request persistent system privileges or modify other skills or system-wide settings. It operates at runtime and performs only outbound API calls to Scryfall.
Assessment
This skill appears to be what it claims: a simple Scryfall client. Before installing, note that: - The skill will make outbound HTTP requests to api.scryfall.com for each query, so avoid entering any sensitive data (passwords, tokens, private keys) into search fields because they would be sent to Scryfall. - No credentials are required, and there is no install step that fetches remote code, but the repository owner/homepage is not provided — if you need stronger assurance, inspect the included script (scripts/scryfall_search.py) yourself to confirm behavior. - The skill returns card image URLs and price data from Scryfall; those resources are hosted externally and will be loaded from Scryfall when used. Overall the skill is coherent and proportional to its purpose.

Like a lobster shell, security has layers — review code before you run it.

latestvk97cdavmzr4qnec995e1gq537x80ks3m
1.9kdownloads
1stars
4versions
Updated 1mo ago
v1.0.3
MIT-0

Scryfall MTG Card Search

Search for Magic: The Gathering cards using the Scryfall API.

API Overview

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).

Core Endpoints

Search Cards

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

Named Card Lookup

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.

Random Card

GET /cards/random
GET /cards/random?q={query}

Card by ID

GET /cards/{id}
GET /cards/{set_code}/{collector_number}

Autocomplete

GET /cards/autocomplete?q={partial_name}

Returns up to 20 card name suggestions.

Search Syntax Reference

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

Implementation

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.

Card Object Key Fields

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.

Error Handling

  • 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.

Comments

Loading comments...