naftiko: 1.0.0-alpha2 info: label: "Pok\xE9API \u2014 Pok\xE9mon" description: "Pok\xE9API Pok\xE9mon capability. 23 read-only operations covering the pok\xE9mon resource family." tags: - "Pok\xE9API" - "Pok\xE9mon" created: '2026-05-30' modified: '2026-05-30' capability: consumes: - type: http namespace: pokeapi-pokemon baseUri: https://pokeapi.co/api/v2 description: "Pok\xE9API Pok\xE9mon business capability. Self-contained, no shared references." resources: - name: pokeapi-ability path: /ability operations: - name: listabilities method: GET description: List Abilities outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: limit in: query type: integer description: Number of items to return per page. - name: offset in: query type: integer description: Number of items to skip before starting to collect the result set. - name: pokeapi-ability-id path: /ability/{id} operations: - name: getability method: GET description: Get Ability outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true description: Resource id (integer) or name (slug). - name: pokeapi-characteristic path: /characteristic operations: - name: listcharacteristics method: GET description: List Characteristics outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: limit in: query type: integer description: Number of items to return per page. - name: offset in: query type: integer description: Number of items to skip before starting to collect the result set. - name: pokeapi-characteristic-id path: /characteristic/{id} operations: - name: getcharacteristic method: GET description: Get Characteristic outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: integer required: true description: Resource id (integer only). - name: pokeapi-egg-group path: /egg-group operations: - name: listegggroups method: GET description: List Egg Groups outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: limit in: query type: integer description: Number of items to return per page. - name: offset in: query type: integer description: Number of items to skip before starting to collect the result set. - name: pokeapi-egg-group-id path: /egg-group/{id} operations: - name: getegggroup method: GET description: Get Egg Group outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true description: Resource id (integer) or name (slug). - name: pokeapi-gender path: /gender operations: - name: listgenders method: GET description: List Genders outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: limit in: query type: integer description: Number of items to return per page. - name: offset in: query type: integer description: Number of items to skip before starting to collect the result set. - name: pokeapi-gender-id path: /gender/{id} operations: - name: getgender method: GET description: Get Gender outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true description: Resource id (integer) or name (slug). - name: pokeapi-growth-rate path: /growth-rate operations: - name: listgrowthrates method: GET description: List Growth Rates outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: limit in: query type: integer description: Number of items to return per page. - name: offset in: query type: integer description: Number of items to skip before starting to collect the result set. - name: pokeapi-growth-rate-id path: /growth-rate/{id} operations: - name: getgrowthrate method: GET description: Get Growth Rate outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true description: Resource id (integer) or name (slug). - name: pokeapi-nature path: /nature operations: - name: listnatures method: GET description: List Natures outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: limit in: query type: integer description: Number of items to return per page. - name: offset in: query type: integer description: Number of items to skip before starting to collect the result set. - name: pokeapi-nature-id path: /nature/{id} operations: - name: getnature method: GET description: Get Nature outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true description: Resource id (integer) or name (slug). - name: pokeapi-pokeathlon-stat path: /pokeathlon-stat operations: - name: listpokeathlonstats method: GET description: "List Pok\xE9athlon Stats" outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: limit in: query type: integer description: Number of items to return per page. - name: offset in: query type: integer description: Number of items to skip before starting to collect the result set. - name: pokeapi-pokeathlon-stat-id path: /pokeathlon-stat/{id} operations: - name: getpokeathlonstat method: GET description: "Get Pok\xE9athlon Stat" outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true description: Resource id (integer) or name (slug). - name: pokeapi-pokemon path: /pokemon operations: - name: listpokemon method: GET description: "List Pok\xE9mon" outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: limit in: query type: integer description: Number of items to return per page. - name: offset in: query type: integer description: Number of items to skip before starting to collect the result set. - name: pokeapi-pokemon-id path: /pokemon/{id} operations: - name: getpokemon method: GET description: "Get Pok\xE9mon" outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true description: Resource id (integer) or name (slug). - name: pokeapi-pokemon-id-encounters path: /pokemon/{id}/encounters operations: - name: getpokemonencounters method: GET description: "Get Pok\xE9mon Encounters" outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true description: Resource id (integer) or name (slug). - name: pokeapi-pokemon-species path: /pokemon-species operations: - name: listpokemonspecies method: GET description: "List Pok\xE9mon Species" outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: limit in: query type: integer description: Number of items to return per page. - name: offset in: query type: integer description: Number of items to skip before starting to collect the result set. - name: pokeapi-pokemon-species-id path: /pokemon-species/{id} operations: - name: getpokemonspecies method: GET description: "Get Pok\xE9mon Species" outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true description: Resource id (integer) or name (slug). - name: pokeapi-stat path: /stat operations: - name: liststats method: GET description: List Stats outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: limit in: query type: integer description: Number of items to return per page. - name: offset in: query type: integer description: Number of items to skip before starting to collect the result set. - name: pokeapi-stat-id path: /stat/{id} operations: - name: getstat method: GET description: Get Stat outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true description: Resource id (integer) or name (slug). - name: pokeapi-type path: /type operations: - name: listtypes method: GET description: List Types outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: limit in: query type: integer description: Number of items to return per page. - name: offset in: query type: integer description: Number of items to skip before starting to collect the result set. - name: pokeapi-type-id path: /type/{id} operations: - name: gettype method: GET description: Get Type outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true description: Resource id (integer) or name (slug). authentication: type: none exposes: - type: rest namespace: pokeapi-pokemon-rest port: 8080 description: "REST adapter for Pok\xE9API Pok\xE9mon." resources: - path: /v1/ability name: pokeapi-ability description: REST surface for pokeapi-ability. operations: - method: GET name: listabilities description: List Abilities call: pokeapi-pokemon.listabilities with: limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - path: /v1/ability/{id} name: pokeapi-ability-id description: REST surface for pokeapi-ability-id. operations: - method: GET name: getability description: Get Ability call: pokeapi-pokemon.getability with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/characteristic name: pokeapi-characteristic description: REST surface for pokeapi-characteristic. operations: - method: GET name: listcharacteristics description: List Characteristics call: pokeapi-pokemon.listcharacteristics with: limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - path: /v1/characteristic/{id} name: pokeapi-characteristic-id description: REST surface for pokeapi-characteristic-id. operations: - method: GET name: getcharacteristic description: Get Characteristic call: pokeapi-pokemon.getcharacteristic with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/egg-group name: pokeapi-egg-group description: REST surface for pokeapi-egg-group. operations: - method: GET name: listegggroups description: List Egg Groups call: pokeapi-pokemon.listegggroups with: limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - path: /v1/egg-group/{id} name: pokeapi-egg-group-id description: REST surface for pokeapi-egg-group-id. operations: - method: GET name: getegggroup description: Get Egg Group call: pokeapi-pokemon.getegggroup with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/gender name: pokeapi-gender description: REST surface for pokeapi-gender. operations: - method: GET name: listgenders description: List Genders call: pokeapi-pokemon.listgenders with: limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - path: /v1/gender/{id} name: pokeapi-gender-id description: REST surface for pokeapi-gender-id. operations: - method: GET name: getgender description: Get Gender call: pokeapi-pokemon.getgender with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/growth-rate name: pokeapi-growth-rate description: REST surface for pokeapi-growth-rate. operations: - method: GET name: listgrowthrates description: List Growth Rates call: pokeapi-pokemon.listgrowthrates with: limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - path: /v1/growth-rate/{id} name: pokeapi-growth-rate-id description: REST surface for pokeapi-growth-rate-id. operations: - method: GET name: getgrowthrate description: Get Growth Rate call: pokeapi-pokemon.getgrowthrate with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/nature name: pokeapi-nature description: REST surface for pokeapi-nature. operations: - method: GET name: listnatures description: List Natures call: pokeapi-pokemon.listnatures with: limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - path: /v1/nature/{id} name: pokeapi-nature-id description: REST surface for pokeapi-nature-id. operations: - method: GET name: getnature description: Get Nature call: pokeapi-pokemon.getnature with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/pokeathlon-stat name: pokeapi-pokeathlon-stat description: REST surface for pokeapi-pokeathlon-stat. operations: - method: GET name: listpokeathlonstats description: "List Pok\xE9athlon Stats" call: pokeapi-pokemon.listpokeathlonstats with: limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - path: /v1/pokeathlon-stat/{id} name: pokeapi-pokeathlon-stat-id description: REST surface for pokeapi-pokeathlon-stat-id. operations: - method: GET name: getpokeathlonstat description: "Get Pok\xE9athlon Stat" call: pokeapi-pokemon.getpokeathlonstat with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/pokemon name: pokeapi-pokemon description: REST surface for pokeapi-pokemon. operations: - method: GET name: listpokemon description: "List Pok\xE9mon" call: pokeapi-pokemon.listpokemon with: limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - path: /v1/pokemon/{id} name: pokeapi-pokemon-id description: REST surface for pokeapi-pokemon-id. operations: - method: GET name: getpokemon description: "Get Pok\xE9mon" call: pokeapi-pokemon.getpokemon with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/pokemon/{id}/encounters name: pokeapi-pokemon-id-encounters description: REST surface for pokeapi-pokemon-id-encounters. operations: - method: GET name: getpokemonencounters description: "Get Pok\xE9mon Encounters" call: pokeapi-pokemon.getpokemonencounters with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/pokemon-species name: pokeapi-pokemon-species description: REST surface for pokeapi-pokemon-species. operations: - method: GET name: listpokemonspecies description: "List Pok\xE9mon Species" call: pokeapi-pokemon.listpokemonspecies with: limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - path: /v1/pokemon-species/{id} name: pokeapi-pokemon-species-id description: REST surface for pokeapi-pokemon-species-id. operations: - method: GET name: getpokemonspecies description: "Get Pok\xE9mon Species" call: pokeapi-pokemon.getpokemonspecies with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/stat name: pokeapi-stat description: REST surface for pokeapi-stat. operations: - method: GET name: liststats description: List Stats call: pokeapi-pokemon.liststats with: limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - path: /v1/stat/{id} name: pokeapi-stat-id description: REST surface for pokeapi-stat-id. operations: - method: GET name: getstat description: Get Stat call: pokeapi-pokemon.getstat with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/type name: pokeapi-type description: REST surface for pokeapi-type. operations: - method: GET name: listtypes description: List Types call: pokeapi-pokemon.listtypes with: limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - path: /v1/type/{id} name: pokeapi-type-id description: REST surface for pokeapi-type-id. operations: - method: GET name: gettype description: Get Type call: pokeapi-pokemon.gettype with: id: rest.id outputParameters: - type: object mapping: $. - type: mcp namespace: pokeapi-pokemon-mcp port: 9090 transport: http description: "MCP adapter for Pok\xE9API Pok\xE9mon." tools: - name: pokeapi-listabilities description: List Abilities hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.listabilities with: limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: pokeapi-getability description: Get Ability hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.getability with: id: tools.id outputParameters: - type: object mapping: $. - name: pokeapi-listcharacteristics description: List Characteristics hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.listcharacteristics with: limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: pokeapi-getcharacteristic description: Get Characteristic hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.getcharacteristic with: id: tools.id outputParameters: - type: object mapping: $. - name: pokeapi-listegggroups description: List Egg Groups hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.listegggroups with: limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: pokeapi-getegggroup description: Get Egg Group hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.getegggroup with: id: tools.id outputParameters: - type: object mapping: $. - name: pokeapi-listgenders description: List Genders hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.listgenders with: limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: pokeapi-getgender description: Get Gender hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.getgender with: id: tools.id outputParameters: - type: object mapping: $. - name: pokeapi-listgrowthrates description: List Growth Rates hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.listgrowthrates with: limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: pokeapi-getgrowthrate description: Get Growth Rate hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.getgrowthrate with: id: tools.id outputParameters: - type: object mapping: $. - name: pokeapi-listnatures description: List Natures hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.listnatures with: limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: pokeapi-getnature description: Get Nature hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.getnature with: id: tools.id outputParameters: - type: object mapping: $. - name: pokeapi-listpokeathlonstats description: "List Pok\xE9athlon Stats" hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.listpokeathlonstats with: limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: pokeapi-getpokeathlonstat description: "Get Pok\xE9athlon Stat" hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.getpokeathlonstat with: id: tools.id outputParameters: - type: object mapping: $. - name: pokeapi-listpokemon description: "List Pok\xE9mon" hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.listpokemon with: limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: pokeapi-getpokemon description: "Get Pok\xE9mon" hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.getpokemon with: id: tools.id outputParameters: - type: object mapping: $. - name: pokeapi-getpokemonencounters description: "Get Pok\xE9mon Encounters" hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.getpokemonencounters with: id: tools.id outputParameters: - type: object mapping: $. - name: pokeapi-listpokemonspecies description: "List Pok\xE9mon Species" hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.listpokemonspecies with: limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: pokeapi-getpokemonspecies description: "Get Pok\xE9mon Species" hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.getpokemonspecies with: id: tools.id outputParameters: - type: object mapping: $. - name: pokeapi-liststats description: List Stats hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.liststats with: limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: pokeapi-getstat description: Get Stat hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.getstat with: id: tools.id outputParameters: - type: object mapping: $. - name: pokeapi-listtypes description: List Types hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.listtypes with: limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: pokeapi-gettype description: Get Type hints: readOnly: true destructive: false idempotent: true call: pokeapi-pokemon.gettype with: id: tools.id outputParameters: - type: object mapping: $.