naftiko: 1.0.0-alpha2 info: label: Scryfall Sets description: 'Scryfall Sets capability — list and retrieve Magic: The Gathering set metadata by code, Scryfall ID, or TCGplayer groupId. 4 operations. Lead operation: List Sets.' tags: - Scryfall - Sets - Magic The Gathering created: '2026-05-29' modified: '2026-05-29' binds: - namespace: env keys: SCRYFALL_USER_AGENT: SCRYFALL_USER_AGENT capability: consumes: - type: http namespace: scryfall-sets baseUri: https://api.scryfall.com description: Scryfall Sets business capability. resources: - name: sets path: /sets operations: - name: listsets method: GET description: List Sets outputRawFormat: json outputParameters: - { name: result, type: object, value: $. } - name: sets-code path: /sets/{code} operations: - name: getsetbycode method: GET description: Get a Set by Code outputRawFormat: json outputParameters: - { name: result, type: object, value: $. } - name: sets-tcgplayer-id path: /sets/tcgplayer/{id} operations: - name: getsetbytcgplayerid method: GET description: Get a Set by TCGplayer ID outputRawFormat: json outputParameters: - { name: result, type: object, value: $. } - name: sets-id path: /sets/{id} operations: - name: getsetbyscryfallid method: GET description: Get a Set by Scryfall ID outputRawFormat: json outputParameters: - { name: result, type: object, value: $. } authentication: type: header key: User-Agent value: '{{env.SCRYFALL_USER_AGENT}}' placement: header exposes: - type: rest namespace: scryfall-sets-rest port: 8080 description: REST adapter for Scryfall Sets. resources: - path: /v1/sets name: sets operations: - method: GET name: listsets description: List Sets call: scryfall-sets.listsets outputParameters: - { type: object, mapping: $. } - path: /v1/sets/{code} name: sets-code operations: - method: GET name: getsetbycode description: Get a Set by Code call: scryfall-sets.getsetbycode outputParameters: - { type: object, mapping: $. } - type: mcp namespace: scryfall-sets-mcp port: 9090 transport: http description: MCP adapter for Scryfall Sets. tools: - name: list-sets description: List every Magic - The Gathering set known to Scryfall. hints: { readOnly: true, destructive: false, idempotent: true } call: scryfall-sets.listsets outputParameters: - { type: object, mapping: $. } - name: get-set-by-code description: Retrieve a Magic set by its three-to-five-letter set code. hints: { readOnly: true, destructive: false, idempotent: true } call: scryfall-sets.getsetbycode outputParameters: - { type: object, mapping: $. } - name: get-set-by-scryfall-id description: Retrieve a Magic set by its Scryfall ID. hints: { readOnly: true, destructive: false, idempotent: true } call: scryfall-sets.getsetbyscryfallid outputParameters: - { type: object, mapping: $. } - name: get-set-by-tcgplayer-id description: Retrieve a Magic set by its TCGplayer groupId. hints: { readOnly: true, destructive: false, idempotent: true } call: scryfall-sets.getsetbytcgplayerid outputParameters: - { type: object, mapping: $. }