tibiawiki-mcp

TibiaWiki knowledge base: attribute queries over creatures, items, NPCs, quests and spells

Should I use this

Quality & Safety

A
Description quality
97%
Schema completeness
87%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~13,037Tokens (tool definitions)
~12.1 KBTypical response size
Significant attention impact (10.19% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "tibiawiki-mcp": {
      "command": "npx",
      "args": [
        "@tibia.sh/tibiawiki-mcp"
      ]
    }
  }
}

Runnable packages

npm@tibia.sh/tibiawiki-mcp0.17.1stdio

Remote endpoints

https://mcp.tibia.sh/wikistreamable-http

What it can do

Tool inventory

Tools (12)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢tibia_get(name, type, include_inactive, verbosity)

Full detail for one Tibia page of any kind, with a creature's loot, abilities and max damage, the NPCs that buy an item and what an NPC buys and sells. Takes an exact page name. Use tibia_search first for an uncertain or in-game name, or tibia_find_updates for an update. Pass `type` for a shared name. Creature abilities may carry an `area`: Grid of map tiles, row-major, as the caster faces. '.' unaffected tile, '#' effect tile, '@' the caster, '*' the target tile, digits 4-8 a second effect the scene draws on extra sprite layers, '?' an unrecognised value. effectTiles counts effect tiles only. effectOnCaster, from the wiki rather than the grid, says whether the caster is caught in its own effect.

Input Schema

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "description": "Page name, e.g. \"Dragon Lord\". Case-insensitive."
    },
    "type": {
      "description": "Restrict the lookup to one kind of page.",
      "type": "string",
      "enum": [
        "creature",
        "item",
        "npc",
        "quest",
        "spell",
        "achievement",
        "house",
        "imbuement",
        "charm",
        "mount",
        "outfit",
        "book",
        "world",
        "update"
      ]
    },
    "include_inactive": {
      "default": false,
      "description": "Include deprecated, event-only and unavailable pages. Applies to the requested page and to the NPCs or items in its trade lists.",
      "type": "boolean"
    },
    "verbosity": {
      "default": "concise",
      "description": "\"detailed\" adds extra descriptive columns.",
      "type": "string",
      "enum": [
        "concise",
        "detailed"
      ]
    }
  },
  "required": [
    "name"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "const": "creature"
        },
        "image": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "fileName": {
                  "type": "string"
                },
                "url": {
                  "type": "string"
                },
                "descriptionUrl": {
                  "type": "string"
                },
                "width": {
                  "type": "number"
                },
                "height": {
                  "type": "number"
                },
                "mimeType": {
                  "type": "string"
                }
              },
              "required": [
                "fileName",
                "url",
                "descriptionUrl",
                "width",
                "height",
                "mimeType"
              ],
              "additionalProperties": false
            },
            {
              "type": "null"
            }
          ],
          "description": "Sprite image link. Dimensions are pixels, not map squares."
        },
        "title": {
          "type": "string"
        },
        "name": {
          "description": "Name as the game prints it.",
          "type": [
            "string",
            "null"
          ]
        },
        "plural": {
          "description": "Plural as the game prints it.",
          "type": [
            "string",
            "null"
          ]
        },
        "article": {
          "description": "Article the game prints before the name. Null: none, as for bosses.",
          "type": [
            "string",
            "null"
          ]
        },
        "hitpoints": {
          "type": [
            "number",
            "null"
          ]
        },
        "experience": {
          "type": [
            "number",
            "null"
          ]
        },
        "armor": {
          "type": [
            "number",
            "null"
          ]
        },
        "speed": {
          "type": [
            "number",
            "null"
          ]
        },
        "bestiaryClass": {
          "type": [
            "string",
            "null"
          ]
        },
        "bestiaryLevel": {
          "type": [
            "string",
            "null"
          ]
        },
        "isBoss": {
          "type": "boolean"
        },
        "status": {
          "type": [
            "string",
            "null"
          ]
        },
        "runsAt": {
          "description": "Hit points at which it flees. 0: never flees.",
          "type": [
            "number",
            "null"
          ]
        },
        "seesInvisible": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "paralysable": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "pushable": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "pushObjects": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "illusionable": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "summonCost": {
          "description": "Mana. 0: cannot be summoned.",
          "type": [
            "number",
            "null"
          ]
        },
        "convinceCost": {
          "description": "Mana. 0: cannot be convinced.",
          "type": [
            "number",
            "null"
          ]
        },
        "goldPerKill": {
          "description": "Estimated gross loot value at NPC prices. Drops without a recorded chance are left out, and items that sell only on the market count as 0.",
          "type": [
            "number",
            "null"
          ]
        },
        "raceId": {
          "description": "Tibia client race ID, not unique: some creatures share one, such as boss phases. null: the wiki records none.",
          "type": [
            "number",
            "null"
          ]
        },
        "modifiers": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": [
              "number",
              "null"
            ]
          }
        },
        "loot": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "item": {
                "type": "string"
              },
              "chance": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "min": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "max": {
                "type": [
                  "number",
                  "null"
                ]
              }
            },
            "required": [
              "item",
              "chance",
              "min",
              "max"
            ],
            "additionalProperties": false
          }
        },
        "abilities": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "effect": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "element": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "area": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "key": {
                        "type": "string"
                      },
                      "width": {
                        "type": "number"
                      },
                      "height": {
                        "type": "number"
                      },
                      "cells": {
                        "type": "array",
                        "items": {
                          "type": "number"
                        }
                      },
                      "ascii": {
                        "type": "string"
                      },
                      "effectTiles": {
                        "type": "number"
                      },
                      "effectOnCaster": {
                        "type": "boolean"
                      }
                    },
                    "required": [
                      "key",
                      "width",
                      "height",
                      "cells",
                      "ascii",
                      "effectTiles",
                      "effectOnCaster"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "name",
              "effect",
              "element",
              "area"
            ],
            "additionalProperties": false
          }
        },
        "maxDamage": {
          "anyOf": [
            {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {
                "type": [
                  "number",
                  "null"
                ]
              }
            },
            {
              "type": "null"
            }
          ]
        },
        "sounds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "detail": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": [
              "string",
              "number",
              "null"
            ]
          }
        },
        "source": {
          "type": "object",
          "properties": {
            "page": {
              "type": "string"
            },
            "url": {
              "type": "string"
            },
            "indexGeneratedAt": {
              "type": "string"
            }
          },
          "required": [
            "page",
            "url",
            "indexGeneratedAt"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "type",
        "image",
        "title",
        "name",
        "plural",
        "article",
        "hitpoints",
        "experience",
        "armor",
        "speed",
        "bestiaryClass",
        "bestiaryLevel",
        "isBoss",
        "status",
        "runsAt",
        "seesInvisible",
        "paralysable",
        "pushable",
        "pushObjects",
        "illusionable",
        "summonCost",
        "convinceCost",
        "goldPerKill",
        "raceId",
        "modifiers",
        "loot",
        "abilities",
        "maxDamage",
        "sounds",
        "source"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "const": "item"
        },
        "image": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "fileName": {
                  "type": "string"
                },
                "url": {
                  "type": "string"
                },
                "descriptionUrl": {
                  "type": "string"
                },
                "width": {
                  "type": "number"
                },
                "height": {
                  "type": "number"
                },
                "mimeType": {
                  "type": "string"
                }
              },
              "required": [
                "fileName",
                "url",
                "descriptionUrl",
                "width",
                "height",
                "mimeType"
              ],
              "additionalProperties": false
            },
            {
              "type": "null"
            }
          ],
          "description": "Sprite image link. Dimensions are pixels, not map squares."
        },
        "title": {
          "type": "string"
        },
        "actualName": {
          "description": "Name as the game prints it.",
          "type": [
            "string",
            "null"
          ]
        },
        "plural": {
          "description": "Plural as the game prints it.",
          "type": [
            "string",
            "null"
          ]
        },
        "itemClass": {
          "type": [
            "string",
            "null"
          ]
        },
        "itemType": {
          "type": [
            "string",
            "null"
          ]
        },
        "typeSecondary": {
          "type": [
            "string",
            "null"
          ]
        },
        "weight": {
          "type": [
            "number",
            "null"
          ]
        },
        "valueBuy": {
          "type": [
            "number",
            "null"
          ]
        },
        "valueBuyCurrency": {
          "description": "Currency of the price beside it, as the wiki names it, e.g. Gold Coin, Tibia Coins or Event Points. null when there is no price.",
          "type": [
            "string",
            "null"
          ]
        },
        "valueSell": {
          "type": [
            "number",
            "null"
          ]
        },
        "isMarketable": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "isStackable": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "isPickupable": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "isImmobile": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "clientId": {
          "type": [
            "number",
            "null"
          ]
        },
        "status": {
          "type": [
            "string",
            "null"
          ]
        },
        "attributes": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": [
              "string",
              "number"
            ]
          }
        },
        "keys": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "title": {
                "type": "string"
              },
              "number": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "name": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "material": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "location": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "notes": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "required": [
              "title",
              "number",
              "name",
              "material",
              "location",
              "notes"
            ],
            "additionalProperties": false
          }
        },
        "storeOffers": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "price": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "amount": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "currency": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "required": [
              "price",
              "amount",
              "currency"
            ],
            "additionalProperties": false
          }
        },
        "proficiencyPerks": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "level": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "effect": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "skill": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "required": [
              "level",
              "effect",
              "skill"
            ],
            "additionalProperties": false
          }
        },
        "boughtBy": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "npc": {
                "type": "string"
              },
              "price": {
                "type": "number"
              },
              "currency": {
                "type": "string"
              },
              "city": {
                "description": "For Rashid, who moves city daily, a buyer's city and position coordinates are null. His NPC page and tibia_where_to_sell give his week as rashidSchedule.",
                "type": [
                  "string",
                  "null"
                ]
              },
              "position": {
                "type": "object",
                "properties": {
                  "x": {
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "y": {
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "z": {
                    "type": [
                      "number",
                      "null"
                    ]
                  }
                },
                "required": [
                  "x",
                  "y",
                  "z"
                ],
                "additionalProperties": false,
                "description": "For Rashid, who moves city daily, a buyer's city and position coordinates are null. His NPC page and tibia_where_to_sell give his week as rashidSchedule."
              }
            },
            "required": [
              "npc",
              "price",
              "currency",
              "city",
              "position"
            ],
            "additionalProperties": false
          }
        },
        "sounds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "detail": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": [
              "string",
              "number",
              "null"
            ]
          }
        },
        "source": {
          "type": "object",
          "properties": {
            "page": {
              "type": "string"
            },
            "url": {
              "type": "string"
            },
            "indexGeneratedAt": {
              "type": "string"
            }
          },
          "required": [
            "page",
            "url",
            "indexGeneratedAt"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "type",
        "image",
        "title",
        "actualName",
        "plural",
        "itemClass",
        "itemType",
        "typeSecondary",
        "weight",
        "valueBuy",
        "valueBuyCurrency",
        "valueSell",
        "isMarketable",
        "isStackable",
        "isPickupable",
        "isImmobile",
        "clientId",
        "status",
        "attributes",
        "keys",
        "storeOffers",
        "proficiencyPerks",
        "boughtBy",
        "sounds",
        "source"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "const": "npc"
        },
        "image": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "fileName": {
                  "type": "string"
                },
                "url": {
                  "type": "string"
                },
                "descriptionUrl": {
                  "type": "string"
                },
                "width": {
                  "type": "number"
                },
                "height": {
                  "type": "number"
                },
                "mimeType": {
                  "type": "string"
                }
              },
              "required": [
                "fileName",
                "url",
                "descriptionUrl",
                "width",
                "height",
                "mimeType"
              ],
              "additionalProperties": false
            },
            {
              "type": "null"
            }
          ],
          "description": "Sprite image link. Dimensions are pixels, not map squares."
        },
        "title": {
          "type": "string"
        },
        "gender": {
          "type": [
            "string",
            "null"
          ]
        },
        "city": {
          "type": [
            "string",
            "null"
          ]
        },
        "subarea": {
          "type": [
            "string",
            "null"
          ]
        },
        "location": {
          "type": [
            "string",
            "null"
          ]
        },
        "position": {
          "type": "object",
          "properties": {
            "x": {
              "type": [
                "number",
                "null"
              ]
            },
            "y": {
              "type": [
                "number",
                "null"
              ]
            },
            "z": {
              "type": [
                "number",
                "null"
              ]
            }
          },
          "required": [
            "x",
            "y",
            "z"
          ],
          "additionalProperties": false
        },
        "status": {
          "type": [
            "string",
            "null"
          ]
        },
        "jobs": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "races": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "destinations": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "price": {
                "description": "Route price in gold. 0: free or not recorded, see notes.",
                "type": [
                  "number",
                  "null"
                ]
              },
              "origin": {
                "description": "Where the leg starts. null: not recorded, it starts at one of the NPC's positions.",
                "type": [
                  "string",
                  "null"
                ]
              },
              "notes": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "required": [
              "name",
              "price",
              "origin",
              "notes"
            ],
            "additionalProperties": false
          }
        },
        "positions": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "city": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "subarea": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "geolabel": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "position": {
                "type": "object",
                "properties": {
                  "x": {
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "y": {
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "z": {
                    "type": [
                      "number",
                      "null"
                    ]
                  }
                },
                "required": [
                  "x",
                  "y",
                  "z"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "city",
              "subarea",
              "geolabel",
              "position"
            ],
            "additionalProperties": false
          }
        },
        "rashidSchedule": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "day": {
                "type": "string"
              },
              "city": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "location": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "position": {
                "type": "object",
                "properties": {
                  "x": {
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "y": {
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "z": {
                    "type": [
                      "number",
                      "null"
                    ]
                  }
                },
                "required": [
                  "x",
                  "y",
                  "z"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "day",
              "city",
              "location",
              "position"
            ],
            "additionalProperties": false
          }
        },
        "buys": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "item": {
                "type": "string"
              },
              "price": {
                "type": "number"
              },
              "currency": {
                "type": "string"
              }
            },
            "required": [
              "item",
              "price",
              "currency"
            ],
            "additionalProperties": false
          },
          "description": "Items the player can sell to this NPC."
        },
        "sells": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "item": {
                "type": "string"
              },
              "price": {
                "type": "number"
              },
              "currency": {
                "type": "string"
              }
            },
            "required": [
              "item",
              "price",
              "currency"
            ],
            "additionalProperties": false
          },
          "description": "Items the player can buy from this NPC."
        },
        "detail": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": [
              "string",
              "number",
              "null"
            ]
          }
        },
        "source": {
          "type": "object",
          "properties": {
            "page": {
              "type": "string"
            },
            "url": {
              "type": "string"
            },
            "indexGeneratedAt": {
              "type": "string"
            }
          },
          "required": [
            "page",
            "url",
            "indexGeneratedAt"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "type",
        "image",
        "title",
        "gender",
        "city",
        "subarea",
        "location",
        "position",
        "status",
        "jobs",
        "races",
        "destinations",
        "positions",
        "buys",
        "sells",
        "source"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "const": "quest"
        },
        "title": {
          "type": "string"
        },
        "location": {
          "type": [
            "string",
            "null"
          ]
        },
        "levelRequired": {
          "type": [
            "number",
            "null"
          ]
        },
        "levelRecommended": {
          "type": [
            "number",
            "null"
          ]
        },
        "isPremium": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "questLog": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "legend": {
          "type": [
            "string",
            "null"
          ]
        },
        "status": {
          "type": [
            "string",
            "null"
          ]
        },
        "dangers": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "rewards": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "detail": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": [
              "string",
              "number",
              "null"
            ]
          }
        },
        "source": {
          "type": "object",
          "properties": {
            "page": {
              "type": "string"
            },
            "url": {
              "type": "string"
            },
            "indexGeneratedAt": {
              "type": "string"
            }
          },
          "required": [
            "page",
            "url",
            "indexGeneratedAt"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "type",
        "title",
        "location",
        "levelRequired",
        "levelRecommended",
        "isPremium",
        "questLog",
        "legend",
        "status",
        "dangers",
        "rewards",
        "source"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "const": "spell"
        },
        "areaShape": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "width": {
                  "type": "number"
                },
                "height": {
                  "type": "number"
                },
                "cells": {
                  "type": "array",
                  "items": {
                    "type": "number"
                  }
                },
                "ascii": {
                  "type": "string"
                },
                "affectedTiles": {
                  "type": "number"
                },
                "derivedFrom": {
                  "type": "string",
                  "const": "animation"
                },
                "sourceImage": {
                  "type": "string"
                },
                "sourceUrl": {
                  "type": "string"
                },
                "corroborated": {
                  "type": "boolean"
                }
              },
              "required": [
                "width",
                "height",
                "cells",
                "ascii",
                "affectedTiles",
                "derivedFrom",
                "sourceImage",
                "sourceUrl",
                "corroborated"
              ],
              "additionalProperties": false
            },
            {
              "type": "null"
            }
          ],
          "description": "Tiles a spell covers, read from its wiki animation."
        },
        "image": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "fileName": {
                  "type": "string"
                },
                "url": {
                  "type": "string"
                },
                "descriptionUrl": {
                  "type": "string"
                },
                "width": {
                  "type": "number"
                },
                "height": {
                  "type": "number"
                },
                "mimeType": {
                  "type": "string"
                }
              },
              "required": [
                "fileName",
                "url",
                "descriptionUrl",
                "width",
                "height",
                "mimeType"
              ],
              "additionalProperties": false
            },
            {
              "type": "null"
            }
          ],
          "description": "Sprite image link. Dimensions are pixels, not map squares."
        },
        "title": {
          "type": "string"
        },
        "words": {
          "type": [
            "string",
            "null"
          ]
        },
        "spellType": {
          "type": [
            "string",
            "null"
          ]
        },
        "element": {
          "type": [
            "string",
            "null"
          ]
        },
        "mana": {
          "type": [
            "number",
            "null"
          ]
        },
        "level": {
          "type": [
            "number",
            "null"
          ]
        },
        "soul": {
          "type": [
            "number",
            "null"
          ]
        },
        "isPremium": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "cooldown": {
          "type": [
            "number",
            "null"
          ]
        },
        "effect": {
          "type": [
            "string",
            "null"
          ]
        },
        "vocations": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "knight",
              "sorcerer",
              "druid",
              "paladin",
              "monk"
            ]
          }
        },
        "isPromotion": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "isWheelSpell": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "isPassive": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "basePower": {
          "type": [
            "number",
            "null"
          ]
        },
        "group": {
          "type": [
            "string",
            "null"
          ]
        },
        "secondaryGroup": {
          "type": [
            "string",
            "null"
          ]
        },
        "runeGroup": {
          "type": [
            "string",
            "null"
          ]
        },
        "groupCooldown": {
          "description": "Seconds before another spell of the same group can be cast.",
          "type": [
            "number",
            "null"
          ]
        },
        "secondaryGroupCooldown": {
          "description": "Seconds before another spell of its secondary group can be cast.",
          "type": [
            "number",
            "null"
          ]
        },
        "status": {
          "type": [
            "string",
            "null"
          ]
        },
        "detail": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": [
              "string",
              "number",
              "null"
            ]
          }
        },
        "source": {
          "type": "object",
          "properties": {
            "page": {
              "type": "string"
            },
            "url": {
              "type": "string"
            },
            "indexGeneratedAt": {
              "type": "string"
            }
          },
          "required": [
            "page",
            "url",
            "indexGeneratedAt"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "type",
        "areaShape",
        "image",
        "title",
        "words",
        "spellType",
        "element",
        "mana",
        "level",
        "soul",
        "isPremium",
        "cooldown",
        "effect",
        "vocations",
        "isPromotion",
        "isWheelSpell",
        "isPassive",
        "basePower",
        "group",
        "secondaryGroup",
        "runeGroup",
        "groupCooldown",
        "secondaryGroupCooldown",
        "status",
        "source"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "const": "achievement"
        },
        "title": {
          "type": "string"
        },
        "grade": {
          "type": [
            "number",
            "null"
          ]
        },
        "points": {
          "type": [
            "number",
            "null"
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "spoiler": {
          "type": [
            "string",
            "null"
          ]
        },
        "isSecret": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "isPremium": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "achievementId": {
          "type": [
            "number",
            "null"
          ]
        },
        "status": {
          "type": [
            "string",
            "null"
          ]
        },
        "detail": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": [
              "string",
              "number",
              "null"
            ]
          }
        },
        "source": {
          "type": "object",
          "properties": {
            "page": {
              "type": "string"
            },
            "url": {
              "type": "string"
            },
            "indexGeneratedAt": {
              "type": "string"
            }
          },
          "required": [
            "page",
            "url",
            "indexGeneratedAt"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "type",
        "title",
        "grade",
        "points",
        "description",
        "spoiler",
        "isSecret",
        "isPremium",
        "achievementId",
        "status",
        "source"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "const": "house"
        },
        "title": {
          "type": "string"
        },
        "houseId": {
          "type": [
            "number",
            "null"
          ]
        },
        "city": {
          "type": [
            "string",
            "null"
          ]
        },
        "street": {
          "type": [
            "string",
            "null"
          ]
        },
        "location": {
          "type": [
            "string",
            "null"
          ]
        },
        "beds": {
          "type": [
            "number",
            "null"
          ]
        },
        "rent": {
          "type": [
            "number",
            "null"
          ]
        },
        "size": {
          "type": [
            "number",
            "null"
          ]
        },
        "rooms": {
          "type": [
            "number",
            "null"
          ]
        },
        "floors": {
          "type": [
            "number",
            "null"
          ]
        },
        "position": {
          "type": "object",
          "properties": {
            "x": {
              "type": [
                "number",
                "null"
              ]
            },
            "y": {
              "type": [
                "number",
                "null"
              ]
            },
            "z": {
              "type": [
                "number",
                "null"
              ]
            }
          },
          "required": [
            "x",
            "y",
            "z"
          ],
          "additionalProperties": false
        },
        "isGuildhall": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "status": {
          "type": [
            "string",
            "null"
          ]
        },
        "detail": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": [
              "string",
              "number",
              "null"
            ]
          }
        },
        "source": {
          "type": "object",
          "properties": {
            "page": {
              "type": "string"
            },
            "url": {
              "type": "string"
            },
            "indexGeneratedAt": {
              "type": "string"
            }
          },
          "required": [
            "page",
            "url",
            "indexGeneratedAt"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "type",
        "title",
        "houseId",
        "city",
        "street",
        "location",
        "beds",
        "rent",
        "size",
        "rooms",
        "floors",
        "position",
        "isGuildhall",
        "status",
        "source"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "const": "imbuement"
        },
        "image": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "fileName": {
                  "type": "string"
                },
                "url": {
                  "type": "string"
                },
                "descriptionUrl": {
                  "type": "string"
                },
                "width": {
                  "type": "number"
                },
                "height": {
                  "type": "number"
                },
                "mimeType": {
                  "type": "string"
                }
              },
              "required": [
                "fileName",
                "url",
                "descriptionUrl",
                "width",
                "height",
                "mimeType"
              ],
              "additionalProperties": false
            },
            {
              "type": "null"
            }
          ],
          "description": "Sprite image link. Dimensions are pixels, not map squares."
        },
        "title": {
          "type": "string"
        },
        "tier": {
          "type": [
            "string",
            "null"
          ]
        },
        "category": {
          "type": [
            "string",
            "null"
          ]
        },
        "imbuementType": {
          "type": [
            "string",
            "null"
          ]
        },
        "effect": {
          "type": [
            "string",
            "null"
          ]
        },
        "slots": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "status": {
          "type": [
            "string",
            "null"
          ]
        },
        "materials": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "item": {
                "type": "string"
              },
              "amount": {
                "type": [
                  "number",
                  "null"
                ]
              }
            },
            "required": [
              "item",
              "amount"
            ],
            "additionalProperties": false
          }
        },
        "detail": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": [
              "string",
              "number",
              "null"
            ]
          }
        },
        "source": {
          "type": "object",
          "properties": {
            "page": {
              "type": "string"
            },
            "url": {
              "type": "string"
            },
            "indexGeneratedAt": {
              "type": "string"
            }
          },
          "required": [
            "page",
            "url",
            "indexGeneratedAt"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "type",
        "image",
        "title",
        "tier",
        "category",
        "imbuementType",
        "effect",
        "slots",
        "status",
        "materials",
        "source"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "const": "charm"
        },
        "image": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "fileName": {
                  "type": "string"
                },
                "url": {
                  "type": "string"
                },
                "descriptionUrl": {
                  "type": "string"
                },
                "width": {
                  "type": "number"
                },
                "height": {
                  "type": "number"
                },
                "mimeType": {
                  "type": "string"
                }
              },
              "required": [
                "fileName",
                "url",
                "descriptionUrl",
                "width",
                "height",
                "mimeType"
              ],
              "additionalProperties": false
            },
            {
              "type": "null"
            }
          ],
          "description": "Sprite image link. Dimensions are pixels, not map squares."
        },
        "title": {
          "type": "string"
        },
        "charmType": {
          "type": [
            "string",
            "null"
          ]
        },
        "effect": {
          "type": [
            "string",
            "null"
          ]
        },
        "costs": {
          "type": "array",
          "items": {
            "type": [
              "number",
              "null"
            ]
          }
        },
        "status": {
          "type": [
            "string",
            "null"
          ]
        },
        "detail": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": [
              "string",
              "number",
              "null"
            ]
          }
        },
        "source": {
          "type": "object",
          "properties": {
            "page": {
              "type": "string"
            },
            "url": {
              "type": "string"
            },
            "indexGeneratedAt": {
              "type": "string"
            }
          },
          "required": [
            "page",
            "url",
            "indexGeneratedAt"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "type",
        "image",
        "title",
        "charmType",
        "effect",
        "costs",
        "status",
        "source"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "const": "mount"
        },
        "image": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "fileName": {
                  "type": "string"
                },
                "url": {
                  "type": "string"
                },
                "descriptionUrl": {
                  "type": "string"
                },
                "width": {
                  "type": "number"
                },
                "height": {
                  "type": "number"
                },
                "mimeType": {
                  "type": "string"
                }
              },
              "required": [
                "fileName",
                "url",
                "descriptionUrl",
                "width",
                "height",
                "mimeType"
              ],
              "additionalProperties": false
            },
            {
              "type": "null"
            }
          ],
          "description": "Sprite image link. Dimensions are pixels, not map squares."
        },
        "title": {
          "type": "string"
        },
        "speed": {
          "type": [
            "number",
            "null"
          ]
        },
        "tamingMethod": {
          "type": [
            "string",
            "null"
          ]
        },
        "isBuyable": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "price": {
          "type": [
            "number",
            "null"
          ]
        },
        "priceCurrency": {
          "description": "Currency of the price beside it, as the wiki names it, e.g. Gold Coin, Tibia Coins or Event Points. null when there is no price.",
          "type": [
            "string",
            "null"
          ]
        },
        "achievement": {
          "type": [
            "string",
            "null"
          ]
        },
        "lightColor": {
          "type": [
            "number",
            "null"
          ]
        },
        "lightRadius": {
          "type": [
            "number",
            "null"
          ]
        },
        "clientId": {
          "type": [
            "number",
            "null"
          ]
        },
        "status": {
          "type": [
            "string",
            "null"
          ]
        },
        "detail": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": [
              "string",
              "number",
              "null"
            ]
          }
        },
        "source": {
          "type": "object",
          "properties": {
            "page": {
              "type": "string"
            },
            "url": {
              "type": "string"
            },
            "indexGeneratedAt": {
              "type": "string"
            }
          },
          "required": [
            "page",
            "url",
            "indexGeneratedAt"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "type",
        "image",
        "title",
        "speed",
        "tamingMethod",
        "isBuyable",
        "price",
        "priceCurrency",
        "achievement",
        "lightColor",
        "lightRadius",
        "clientId",
        "status",
        "source"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "const": "outfit"
        },
        "title": {
          "type": "string"
        },
        "outfitType": {
          "type": [
            "string",
            "null"
          ]
        },
        "isPremium": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "isBought": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "isTournament": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "fullPrice": {
          "type": [
            "number",
            "null"
          ]
        },
        "achievement": {
          "type": [
            "string",
            "null"
          ]
        },
        "maleClientId": {
          "type": [
            "number",
            "null"
          ]
        },
        "femaleClientId": {
          "type": [
            "number",
            "null"
          ]
        },
        "status": {
          "type": [
            "string",
            "null"
          ]
        },
        "quests": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "quest": {
                "type": "string"
              },
              "unlockType": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "required": [
              "quest",
              "unlockType"
            ],
            "additionalProperties": false
          }
        },
        "detail": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": [
              "string",
              "number",
              "null"
            ]
          }
        },
        "source": {
          "type": "object",
          "properties": {
            "page": {
              "type": "string"
            },
            "url": {
              "type": "string"
            },
            "indexGeneratedAt": {
              "type": "string"
            }
          },
          "required": [
            "page",
            "url",
            "indexGeneratedAt"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "type",
        "title",
        "outfitType",
        "isPremium",
        "isBought",
        "isTournament",
        "fullPrice",
        "achievement",
        "maleClientId",
        "femaleClientId",
        "status",
        "quests",
        "source"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "const": "book"
        },
        "title": {
          "type": "string"
        },
        "bookType": {
          "type": [
            "string",
            "null"
          ]
        },
        "itemId": {
          "type": [
            "number",
            "null"
          ]
        },
        "location": {
          "type": [
            "string",
            "null"
          ]
        },
        "blurb": {
          "type": [
            "string",
            "null"
          ]
        },
        "author": {
          "type": [
            "string",
            "null"
          ]
        },
        "prevBook": {
          "type": [
            "string",
            "null"
          ]
        },
        "nextBook": {
          "type": [
            "string",
            "null"
          ]
        },
        "text": {
          "type": [
            "string",
            "null"
          ]
        },
        "status": {
          "type": [
            "string",
            "null"
          ]
        },
        "detail": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": [
              "string",
              "number",
              "null"
            ]
          }
        },
        "source": {
          "type": "object",
          "properties": {
            "page": {
              "type": "string"
            },
            "url": {
              "type": "string"
            },
            "indexGeneratedAt": {
              "type": "string"
            }
          },
          "required": [
            "page",
            "url",
            "indexGeneratedAt"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "type",
        "title",
        "bookType",
        "itemId",
        "location",
        "blurb",
        "author",
        "prevBook",
        "nextBook",
        "status",
        "source"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "const": "world"
        },
        "title": {
          "type": "string"
        },
        "location": {
          "type": [
            "string",
            "null"
          ]
        },
        "pvpType": {
          "type": [
            "string",
            "null"
          ]
        },
        "isPreview": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "isExperimental": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "onlineSince": {
          "type": [
            "string",
            "null"
          ]
        },
        "offlineSince": {
          "type": [
            "string",
            "null"
          ]
        },
        "mergedInto": {
          "type": [
            "string",
            "null"
          ]
        },
        "battleye": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "battleyeType": {
          "type": [
            "string",
            "null"
          ]
        },
        "protectedSince": {
          "type": [
            "string",
            "null"
          ]
        },
        "worldBoard": {
          "type": [
            "number",
            "null"
          ]
        },
        "tradeBoard": {
          "type": [
            "number",
            "null"
          ]
        },
        "detail": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": [
              "string",
              "number",
              "null"
            ]
          }
        },
        "source": {
          "type": "object",
          "properties": {
            "page": {
              "type": "string"
            },
            "url": {
              "type": "string"
            },
            "indexGeneratedAt": {
              "type": "string"
            }
          },
          "required": [
            "page",
            "url",
            "indexGeneratedAt"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "type",
        "title",
        "location",
        "pvpType",
        "isPreview",
        "isExperimental",
        "onlineSince",
        "offlineSince",
        "mergedInto",
        "battleye",
        "battleyeType",
        "protectedSince",
        "worldBoard",
        "tradeBoard",
        "source"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "const": "update"
        },
        "title": {
          "type": "string"
        },
        "releaseDate": {
          "type": [
            "string",
            "null"
          ]
        },
        "newsId": {
          "type": [
            "number",
            "null"
          ]
        },
        "typePrimary": {
          "type": [
            "string",
            "null"
          ]
        },
        "typeSecondary": {
          "type": [
            "string",
            "null"
          ]
        },
        "previous": {
          "type": [
            "string",
            "null"
          ]
        },
        "next": {
          "type": [
            "string",
            "null"
          ]
        },
        "summary": {
          "type": [
            "string",
            "null"
          ]
        },
        "changes": {
          "type": [
            "string",
            "null"
          ]
        },
        "detail": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": [
              "string",
              "number",
              "null"
            ]
          }
        },
        "source": {
          "type": "object",
          "properties": {
            "page": {
              "type": "string"
            },
            "url": {
              "type": "string"
            },
            "indexGeneratedAt": {
              "type": "string"
            }
          },
          "required": [
            "page",
            "url",
            "indexGeneratedAt"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "type",
        "title",
        "releaseDate",
        "newsId",
        "typePrimary",
        "typeSecondary",
        "previous",
        "next",
        "summary",
        "changes",
        "source"
      ],
      "additionalProperties": false
    }
  ]
}
🟢tibia_search(query, types, include_inactive, limit, cursor)

Find Tibia pages of any kind whose name contains a substring. Items also match by the name and plural the game prints. Turns an approximate or in-game name into the exact page name tibia_get expects. With a query, shortest name first, so the closest match leads. With types and no query, lists every page of those types by title, as in "list every mount".

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "description": "Substring to match against page names, case-insensitive. Omit it to list every page of types.",
      "type": "string",
      "minLength": 1
    },
    "types": {
      "description": "Restrict to these kinds of page. Defaults to all. Required without a query.",
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "creature",
          "item",
          "npc",
          "quest",
          "spell",
          "achievement",
          "house",
          "imbuement",
          "charm",
          "mount",
          "outfit",
          "book",
          "world",
          "update"
        ]
      }
    },
    "include_inactive": {
      "default": false,
      "description": "Include deprecated, event-only and unavailable pages.",
      "type": "boolean"
    },
    "limit": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "description": "Opaque cursor from a previous call.",
      "type": "string"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "type": {
            "type": "string"
          }
        },
        "required": [
          "title",
          "type"
        ],
        "additionalProperties": false
      }
    },
    "totalMatches": {
      "type": "number"
    },
    "nextCursor": {
      "type": "string"
    },
    "indexGeneratedAt": {
      "type": "string"
    }
  },
  "required": [
    "results",
    "totalMatches",
    "indexGeneratedAt"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢tibia_find_creatures(weak_to, resistant_to, experience_min, experience_max, hitpoints_min, ...)

Find Tibia creatures matching stat filters. Damage modifiers are percentages where 100 is neutral: "weak_to" means the creature takes MORE than 100% damage from that element, "resistant_to" means less. Use this for questions like "which creatures are weak to fire and give over 500 experience". Behaviour filters skip creatures whose value is unrecorded.

Input Schema

{
  "type": "object",
  "properties": {
    "weak_to": {
      "description": "Elements the creature takes extra damage from.",
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "physical",
          "earth",
          "fire",
          "ice",
          "energy",
          "death",
          "holy",
          "drown",
          "lifedrain",
          "healing"
        ]
      }
    },
    "resistant_to": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "physical",
          "earth",
          "fire",
          "ice",
          "energy",
          "death",
          "holy",
          "drown",
          "lifedrain",
          "healing"
        ]
      }
    },
    "experience_min": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "experience_max": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "hitpoints_min": {
      "description": "Creatures whose hitpoints are unrecorded are excluded from this filter.",
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "hitpoints_max": {
      "description": "Creatures whose hitpoints are unrecorded are excluded from this filter.",
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "bestiary_class": {
      "description": "e.g. \"Dragon\", \"Human\".",
      "type": "string"
    },
    "is_boss": {
      "type": "boolean"
    },
    "sees_invisible": {
      "type": "boolean"
    },
    "paralysable": {
      "type": "boolean"
    },
    "pushable": {
      "type": "boolean"
    },
    "summonable": {
      "description": "true: summon cost above 0. false: 0.",
      "type": "boolean"
    },
    "convinceable": {
      "description": "true: convince cost above 0. false: 0.",
      "type": "boolean"
    },
    "bestiary_level": {
      "description": "Creatures with no recorded bestiary level are excluded from this filter.",
      "type": "string",
      "enum": [
        "harmless",
        "trivial",
        "easy",
        "medium",
        "hard",
        "challenging"
      ]
    },
    "location_contains": {
      "description": "Substring of the location text.",
      "type": "string"
    },
    "include_inactive": {
      "default": false,
      "type": "boolean"
    },
    "sort": {
      "default": "experience",
      "description": "experience, hitpoints and gold_per_kill: highest first.",
      "type": "string",
      "enum": [
        "experience",
        "hitpoints",
        "title",
        "gold_per_kill"
      ]
    },
    "limit": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "type": "string"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "name": {
            "description": "Name as the game prints it.",
            "type": [
              "string",
              "null"
            ]
          },
          "hitpoints": {
            "type": [
              "number",
              "null"
            ]
          },
          "experience": {
            "type": [
              "number",
              "null"
            ]
          },
          "bestiaryClass": {
            "type": [
              "string",
              "null"
            ]
          },
          "isBoss": {
            "type": "boolean"
          },
          "modifiers": {
            "type": "object",
            "propertyNames": {
              "type": "string"
            },
            "additionalProperties": {
              "type": [
                "number",
                "null"
              ]
            }
          },
          "runsAt": {
            "description": "Hit points at which it flees. 0: never flees.",
            "type": [
              "number",
              "null"
            ]
          },
          "seesInvisible": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "paralysable": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "pushable": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "summonCost": {
            "description": "Mana. 0: cannot be summoned.",
            "type": [
              "number",
              "null"
            ]
          },
          "convinceCost": {
            "description": "Mana. 0: cannot be convinced.",
            "type": [
              "number",
              "null"
            ]
          },
          "goldPerKill": {
            "description": "Estimated gross loot value at NPC prices. Drops without a recorded chance are left out, and items that sell only on the market count as 0.",
            "type": [
              "number",
              "null"
            ]
          },
          "raceId": {
            "description": "Tibia client race ID, not unique: some creatures share one, such as boss phases. null: the wiki records none.",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "title",
          "name",
          "hitpoints",
          "experience",
          "bestiaryClass",
          "isBoss",
          "modifiers",
          "runsAt",
          "seesInvisible",
          "paralysable",
          "pushable",
          "summonCost",
          "convinceCost",
          "goldPerKill",
          "raceId"
        ],
        "additionalProperties": false
      }
    },
    "totalMatches": {
      "type": "number"
    },
    "nextCursor": {
      "type": "string"
    },
    "indexGeneratedAt": {
      "type": "string"
    }
  },
  "required": [
    "results",
    "totalMatches",
    "indexGeneratedAt"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢tibia_find_items(item_class, item_type, weapon_type, vocation, attack_min, ...)

Find Tibia items matching class, type and stat filters such as attack, defense, armor and required level, resistances, skill bonuses, imbuement slots, weight and hands. Use this for questions like "which two-handed swords need level 100 or less" or "which sorcerer items resist fire". Vocation and weapon type match by membership, so "knight" matches "knights". Call tibia_get on a title for the full item.

Input Schema

{
  "type": "object",
  "properties": {
    "item_class": {
      "description": "e.g. \"Weapons\", \"Armors\".",
      "type": "string"
    },
    "item_type": {
      "description": "e.g. \"Sword Weapons\".",
      "type": "string"
    },
    "weapon_type": {
      "description": "e.g. \"Sword\", \"Axe\", \"Club\".",
      "type": "string"
    },
    "vocation": {
      "description": "Matches required_vocation, e.g. \"knight\".",
      "type": "string"
    },
    "attack_min": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "attack_max": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "defense_min": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "armor_min": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "required_level_max": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "resistant_to": {
      "description": "Resists everything listed (resistance above 0).",
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "physical",
          "earth",
          "fire",
          "ice",
          "energy",
          "death",
          "holy",
          "drown",
          "lifedrain",
          "manadrain",
          "critical_hit"
        ]
      }
    },
    "skill_bonus": {
      "description": "Raises every listed skill.",
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "magic_level",
          "sword",
          "axe",
          "club",
          "distance",
          "fist",
          "shielding"
        ]
      }
    },
    "imbuement_slots_min": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "weight_max": {
      "description": "In oz. Items without a weight never match.",
      "type": "number"
    },
    "hands": {
      "type": "string",
      "enum": [
        "one",
        "two"
      ]
    },
    "damage_type": {
      "description": "Weapon element.",
      "type": "string",
      "enum": [
        "death",
        "earth",
        "energy",
        "fire",
        "holy",
        "ice",
        "physical"
      ]
    },
    "leech": {
      "description": "Leeches everything listed.",
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "life",
          "mana"
        ]
      }
    },
    "is_stackable": {
      "type": "boolean"
    },
    "is_pickupable": {
      "type": "boolean"
    },
    "client_ids": {
      "description": "The item's client ID, any listed. Item variants can share one.",
      "minItems": 1,
      "maxItems": 100,
      "type": "array",
      "items": {
        "type": "integer",
        "exclusiveMinimum": 0,
        "maximum": 9007199254740991
      }
    },
    "include_inactive": {
      "default": false,
      "type": "boolean"
    },
    "sort": {
      "default": "title",
      "description": "weight ascends, armor, attack and defense descend, title is alphabetical. value descends by NPC gold price, and prices in other currencies come last.",
      "type": "string",
      "enum": [
        "title",
        "weight",
        "value",
        "armor",
        "attack",
        "defense"
      ]
    },
    "limit": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "type": "string"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "actualName": {
            "description": "Name as the game prints it.",
            "type": [
              "string",
              "null"
            ]
          },
          "itemClass": {
            "type": [
              "string",
              "null"
            ]
          },
          "itemType": {
            "type": [
              "string",
              "null"
            ]
          },
          "weight": {
            "type": [
              "number",
              "null"
            ]
          },
          "valueBuy": {
            "type": [
              "number",
              "null"
            ]
          },
          "valueBuyCurrency": {
            "description": "Currency of the price beside it, as the wiki names it, e.g. Gold Coin, Tibia Coins or Event Points. null when there is no price.",
            "type": [
              "string",
              "null"
            ]
          },
          "clientId": {
            "type": [
              "number",
              "null"
            ]
          },
          "isStackable": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "isPickupable": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "attributes": {
            "type": "object",
            "propertyNames": {
              "type": "string"
            },
            "additionalProperties": {
              "type": [
                "string",
                "number"
              ]
            }
          }
        },
        "required": [
          "title",
          "actualName",
          "itemClass",
          "itemType",
          "weight",
          "valueBuy",
          "valueBuyCurrency",
          "clientId",
          "isStackable",
          "isPickupable",
          "attributes"
        ],
        "additionalProperties": false
      }
    },
    "totalMatches": {
      "type": "number"
    },
    "nextCursor": {
      "type": "string"
    },
    "indexGeneratedAt": {
      "type": "string"
    }
  },
  "required": [
    "results",
    "totalMatches",
    "indexGeneratedAt"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢tibia_find_spells(vocation, level_max, group, element, spell_type, ...)

Find Tibia spells by vocation, level, group, element and type. Use this for questions like "which healing spells can a level 30 druid cast". Call tibia_get with a title for cooldowns, effect and area.

Input Schema

{
  "type": "object",
  "properties": {
    "vocation": {
      "type": "string",
      "enum": [
        "knight",
        "sorcerer",
        "druid",
        "paladin",
        "monk"
      ]
    },
    "level_max": {
      "description": "Highest level the caster has.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "group": {
      "description": "Runes are all filed under support, so find attack runes by spell_type and element.",
      "type": "string",
      "enum": [
        "attack",
        "healing",
        "support",
        "conjure"
      ]
    },
    "element": {
      "description": "Damage element. For healing spells, use group.",
      "type": "string",
      "enum": [
        "death",
        "earth",
        "energy",
        "fire",
        "holy",
        "ice",
        "physical"
      ]
    },
    "spell_type": {
      "type": "string",
      "enum": [
        "instant",
        "rune"
      ]
    },
    "is_premium": {
      "type": "boolean"
    },
    "include_inactive": {
      "default": false,
      "type": "boolean"
    },
    "sort": {
      "default": "level",
      "description": "level and mana ascend, title is alphabetical. Spells with a variable cost (party spells) store mana 0, so they come first by mana.",
      "type": "string",
      "enum": [
        "level",
        "mana",
        "title"
      ]
    },
    "limit": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "type": "string"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "words": {
            "type": [
              "string",
              "null"
            ]
          },
          "spellType": {
            "type": [
              "string",
              "null"
            ]
          },
          "group": {
            "type": [
              "string",
              "null"
            ]
          },
          "element": {
            "type": [
              "string",
              "null"
            ]
          },
          "level": {
            "type": [
              "number",
              "null"
            ]
          },
          "mana": {
            "type": [
              "number",
              "null"
            ]
          },
          "vocations": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "knight",
                "sorcerer",
                "druid",
                "paladin",
                "monk"
              ]
            }
          },
          "isPremium": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "isPromotion": {
            "type": [
              "boolean",
              "null"
            ]
          }
        },
        "required": [
          "title",
          "words",
          "spellType",
          "group",
          "element",
          "level",
          "mana",
          "vocations",
          "isPremium",
          "isPromotion"
        ],
        "additionalProperties": false
      }
    },
    "totalMatches": {
      "type": "number"
    },
    "nextCursor": {
      "type": "string"
    },
    "indexGeneratedAt": {
      "type": "string"
    }
  },
  "required": [
    "results",
    "totalMatches",
    "indexGeneratedAt"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢tibia_find_quests(level_max, is_premium, is_rookgaard, location_contains, include_inactive, ...)

Find Tibia quests by level, premium, Rookgaard and location, with their rewards. Use this for questions like "which quests can a level 20 character do". Call tibia_get with a title for the legend and dangers.

Input Schema

{
  "type": "object",
  "properties": {
    "level_max": {
      "description": "Highest level the character has. Quests with no level requirement always match.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "is_premium": {
      "type": "boolean"
    },
    "is_rookgaard": {
      "type": "boolean"
    },
    "location_contains": {
      "description": "Literal substring of the location, case-insensitive.",
      "type": "string",
      "minLength": 1
    },
    "include_inactive": {
      "default": false,
      "type": "boolean"
    },
    "sort": {
      "default": "level_recommended",
      "description": "Levels ascend, title is alphabetical. Unknown levels come last.",
      "type": "string",
      "enum": [
        "level_recommended",
        "level_required",
        "title"
      ]
    },
    "limit": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "type": "string"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "location": {
            "type": [
              "string",
              "null"
            ]
          },
          "levelRequired": {
            "type": [
              "number",
              "null"
            ]
          },
          "levelRecommended": {
            "type": [
              "number",
              "null"
            ]
          },
          "isPremium": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "estimatedTime": {
            "type": [
              "string",
              "null"
            ]
          },
          "rewards": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "title",
          "location",
          "levelRequired",
          "levelRecommended",
          "isPremium",
          "estimatedTime",
          "rewards"
        ],
        "additionalProperties": false
      }
    },
    "totalMatches": {
      "type": "number"
    },
    "nextCursor": {
      "type": "string"
    },
    "indexGeneratedAt": {
      "type": "string"
    }
  },
  "required": [
    "results",
    "totalMatches",
    "indexGeneratedAt"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢tibia_find_houses(city, rent_max, beds_min, size_min, is_guildhall, ...)

Find Tibia houses and guildhalls by city, rent, beds and size. Use this for questions like "cheapest house in Thais with two beds". Call tibia_get with a title for its location and position.

Input Schema

{
  "type": "object",
  "properties": {
    "city": {
      "description": "Exact city name, e.g. \"Thais\", any case.",
      "type": "string",
      "minLength": 1
    },
    "rent_max": {
      "description": "Highest monthly rent in gold.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "beds_min": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "size_min": {
      "description": "Fewest tiles.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "is_guildhall": {
      "type": "boolean"
    },
    "include_inactive": {
      "default": false,
      "type": "boolean"
    },
    "sort": {
      "default": "rent",
      "description": "rent ascends, size descends, title is alphabetical.",
      "type": "string",
      "enum": [
        "rent",
        "size",
        "title"
      ]
    },
    "limit": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "type": "string"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "street": {
            "type": [
              "string",
              "null"
            ]
          },
          "rent": {
            "type": [
              "number",
              "null"
            ]
          },
          "beds": {
            "type": [
              "number",
              "null"
            ]
          },
          "size": {
            "type": [
              "number",
              "null"
            ]
          },
          "rooms": {
            "type": [
              "number",
              "null"
            ]
          },
          "floors": {
            "type": [
              "number",
              "null"
            ]
          },
          "isGuildhall": {
            "type": [
              "boolean",
              "null"
            ]
          }
        },
        "required": [
          "title",
          "city",
          "street",
          "rent",
          "beds",
          "size",
          "rooms",
          "floors",
          "isGuildhall"
        ],
        "additionalProperties": false
      }
    },
    "totalMatches": {
      "type": "number"
    },
    "nextCursor": {
      "type": "string"
    },
    "indexGeneratedAt": {
      "type": "string"
    }
  },
  "required": [
    "results",
    "totalMatches",
    "indexGeneratedAt"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢tibia_how_to_obtain(item_name, include_inactive)

Every in-game source for one item in a single call: which creatures drop it and how likely, which NPCs sell it and for how much (the price the player pays), and which quests reward it. Prefer this over three separate lookups.

Input Schema

{
  "type": "object",
  "properties": {
    "item_name": {
      "type": "string",
      "minLength": 1,
      "description": "Item page name or the name the game prints, e.g. \"Dragon Shield\"."
    },
    "include_inactive": {
      "default": false,
      "description": "Include deprecated or event-only creatures, NPCs and quests as sources.",
      "type": "boolean"
    }
  },
  "required": [
    "item_name"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "item": {
      "type": "string"
    },
    "status": {
      "type": [
        "string",
        "null"
      ]
    },
    "droppedBy": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "creature": {
            "type": "string"
          },
          "chance": {
            "type": [
              "number",
              "null"
            ]
          },
          "min": {
            "type": [
              "number",
              "null"
            ]
          },
          "max": {
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "creature",
          "chance",
          "min",
          "max"
        ],
        "additionalProperties": false
      }
    },
    "soldByNpcs": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "npc": {
            "type": "string"
          },
          "city": {
            "type": [
              "string",
              "null"
            ]
          },
          "price": {
            "type": "number"
          },
          "currency": {
            "type": "string"
          }
        },
        "required": [
          "npc",
          "city",
          "price",
          "currency"
        ],
        "additionalProperties": false
      }
    },
    "questRewards": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "note": {
      "type": "string"
    },
    "source": {
      "type": "object",
      "properties": {
        "page": {
          "type": "string"
        },
        "url": {
          "type": "string"
        },
        "indexGeneratedAt": {
          "type": "string"
        }
      },
      "required": [
        "page",
        "url",
        "indexGeneratedAt"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "item",
    "status",
    "droppedBy",
    "soldByNpcs",
    "questRewards",
    "note",
    "source"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢tibia_find_updates(text, released_after, released_before, limit, cursor)

Find Tibia game updates by text and release date, for questions like "what changed for knights in 2026" or "which update added X". Matches the text, case-insensitive for ASCII letters, in an update's title, name, summary and change list, newest first, and returns the matching change lines. For the full changes, call tibia_get with type "update" and the returned title.

Input Schema

{
  "type": "object",
  "properties": {
    "text": {
      "description": "Literal substring, e.g. \"knight\".",
      "type": "string",
      "minLength": 1
    },
    "released_after": {
      "description": "YYYY-MM-DD, inclusive.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "released_before": {
      "description": "YYYY-MM-DD, inclusive.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    },
    "cursor": {
      "type": "string"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "releaseDate": {
            "type": [
              "string",
              "null"
            ]
          },
          "version": {
            "type": [
              "string",
              "null"
            ]
          },
          "updateType": {
            "type": [
              "string",
              "null"
            ]
          },
          "summary": {
            "type": [
              "string",
              "null"
            ]
          },
          "matchingLines": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "title",
          "name",
          "releaseDate",
          "version",
          "updateType",
          "summary",
          "matchingLines"
        ],
        "additionalProperties": false
      }
    },
    "totalMatches": {
      "type": "number"
    },
    "nextCursor": {
      "type": "string"
    },
    "indexGeneratedAt": {
      "type": "string"
    }
  },
  "required": [
    "results",
    "totalMatches",
    "indexGeneratedAt"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢tibia_where_to_sell(items)

Answers "where do I sell all this": for each item, the active NPC paying the most, grouped by city and NPC. Prices are NPC prices in gold. Call tibia_get on an NPC for more.

Input Schema

{
  "type": "object",
  "properties": {
    "items": {
      "minItems": 1,
      "maxItems": 100,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1
      },
      "description": "Item names, any case, as the wiki titles them or the game prints them, e.g. \"Dragon Shield\" or \"vial of lifefluid\"."
    }
  },
  "required": [
    "items"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "cities": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "city": {
            "description": "For Rashid, who moves city daily, a buyer's city and position coordinates are null. His NPC page and tibia_where_to_sell give his week as rashidSchedule.",
            "type": [
              "string",
              "null"
            ]
          },
          "buyers": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "npc": {
                  "type": "string"
                },
                "position": {
                  "type": "object",
                  "properties": {
                    "x": {
                      "type": [
                        "number",
                        "null"
                      ]
                    },
                    "y": {
                      "type": [
                        "number",
                        "null"
                      ]
                    },
                    "z": {
                      "type": [
                        "number",
                        "null"
                      ]
                    }
                  },
                  "required": [
                    "x",
                    "y",
                    "z"
                  ],
                  "additionalProperties": false,
                  "description": "For Rashid, who moves city daily, a buyer's city and position coordinates are null. His NPC page and tibia_where_to_sell give his week as rashidSchedule."
                },
                "rashidSchedule": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "day": {
                        "type": "string"
                      },
                      "city": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "location": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "position": {
                        "type": "object",
                        "properties": {
                          "x": {
                            "type": [
                              "number",
                              "null"
                            ]
                          },
                          "y": {
                            "type": [
                              "number",
                              "null"
                            ]
                          },
                          "z": {
                            "type": [
                              "number",
                              "null"
                            ]
                          }
                        },
                        "required": [
                          "x",
                          "y",
                          "z"
                        ],
                        "additionalProperties": false
                      }
                    },
                    "required": [
                      "day",
                      "city",
                      "location",
                      "position"
                    ],
                    "additionalProperties": false
                  }
                },
                "items": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "item": {
                        "type": "string"
                      },
                      "input": {
                        "type": "string",
                        "description": "The name as you first wrote it."
                      },
                      "price": {
                        "type": "number"
                      }
                    },
                    "required": [
                      "item",
                      "input",
                      "price"
                    ],
                    "additionalProperties": false
                  }
                }
              },
              "required": [
                "npc",
                "position",
                "items"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "city",
          "buyers"
        ],
        "additionalProperties": false
      }
    },
    "noGoldBuyer": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Items no active NPC buys for gold."
    },
    "unknownItems": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Names that match no item."
    },
    "ambiguousItems": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "input": {
            "type": "string"
          },
          "candidates": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "input",
          "candidates"
        ],
        "additionalProperties": false
      },
      "description": "Names more than one item goes by, with those items."
    },
    "indexGeneratedAt": {
      "type": "string"
    }
  },
  "required": [
    "cities",
    "noGoldBuyer",
    "unknownItems",
    "ambiguousItems",
    "indexGeneratedAt"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢tibia_parse_loot(text, include_lines)

Parses loot messages as the game prints them, one per line, such as "12:34 Loot of a dragon: 2 small diamonds, a steel shield (active prey bonus)." It reads in-game names, not wiki titles. Gives totals by item with count and value, and entries it cannot resolve. Prices are NPC prices in gold, coins at face value. Other lines come back unparsed. Both lists stop at 100, their counts in totals do not.

Input Schema

{
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "minLength": 1,
      "maxLength": 20000,
      "description": "Loot messages, one per line."
    },
    "include_lines": {
      "default": false,
      "description": "Also give each line with its items, client IDs and prices.",
      "type": "boolean"
    }
  },
  "required": [
    "text"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "lines": {
      "description": "Each loot line, with include_lines.",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "creature": {
            "type": "object",
            "properties": {
              "text": {
                "type": "string"
              },
              "title": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "candidates": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "description": "Titles it may mean, when more than one."
              }
            },
            "required": [
              "text",
              "title",
              "candidates"
            ],
            "additionalProperties": false
          },
          "note": {
            "type": [
              "string",
              "null"
            ]
          },
          "items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "text": {
                  "type": "string"
                },
                "count": {
                  "description": "Null: no count from 1 to 1,000,000.",
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "item": {
                  "description": "Item title. Null: no single item.",
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "candidates": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Titles it may mean, when more than one."
                },
                "clientId": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "unitPrice": {
                  "description": "Coin face value, else best NPC price in gold.",
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "value": {
                  "description": "Null: no price, or too large to add exactly.",
                  "type": [
                    "number",
                    "null"
                  ]
                }
              },
              "required": [
                "text",
                "count",
                "item",
                "candidates",
                "clientId",
                "unitPrice",
                "value"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "creature",
          "note",
          "items"
        ],
        "additionalProperties": false
      }
    },
    "totals": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "item": {
                "type": "string"
              },
              "count": {
                "type": "number"
              },
              "value": {
                "type": [
                  "number",
                  "null"
                ]
              }
            },
            "required": [
              "item",
              "count",
              "value"
            ],
            "additionalProperties": false
          }
        },
        "gold": {
          "type": "number",
          "description": "Sum of the priced values."
        },
        "unresolved": {
          "type": "number",
          "description": "Entries with no single item."
        },
        "unpriced": {
          "type": "number",
          "description": "Entries of an item with no value."
        },
        "unparsed": {
          "type": "number",
          "description": "Lines that are no loot message."
        }
      },
      "required": [
        "items",
        "gold",
        "unresolved",
        "unpriced",
        "unparsed"
      ],
      "additionalProperties": false
    },
    "unresolvedEntries": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "line": {
            "type": "number",
            "description": "Line number in the input, from 1."
          },
          "text": {
            "type": "string"
          },
          "candidates": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Titles it may mean, when more than one."
          }
        },
        "required": [
          "line",
          "text",
          "candidates"
        ],
        "additionalProperties": false
      },
      "description": "Entries with no single item, the first 100."
    },
    "unparsed": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Lines that are no loot message, the first 100."
    },
    "indexGeneratedAt": {
      "type": "string"
    }
  },
  "required": [
    "totals",
    "unresolvedEntries",
    "unparsed",
    "indexGeneratedAt"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢tibia_find_travel(to, from, include_inactive, sort, limit, ...)

Find boat, carpet and other travel routes to or from a place, with fares. Each row is one leg with its start (origin) and the NPC's recorded city, location and position. Rows are single legs: this does not plan journeys.

Input Schema

{
  "type": "object",
  "properties": {
    "to": {
      "description": "Exact destination, e.g. \"Svargrond\", any case.",
      "type": "string",
      "minLength": 1
    },
    "from": {
      "description": "Exact start place of the leg, e.g. \"Meriana\", any case.",
      "type": "string",
      "minLength": 1
    },
    "include_inactive": {
      "default": false,
      "type": "boolean"
    },
    "sort": {
      "default": "price",
      "description": "price ascends with 0 fares last, npc is alphabetical.",
      "type": "string",
      "enum": [
        "price",
        "npc"
      ]
    },
    "limit": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "type": "string"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "npc": {
            "type": "string"
          },
          "city": {
            "type": [
              "string",
              "null"
            ]
          },
          "subarea": {
            "type": [
              "string",
              "null"
            ]
          },
          "location": {
            "type": [
              "string",
              "null"
            ]
          },
          "position": {
            "type": "object",
            "properties": {
              "x": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "y": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "z": {
                "type": [
                  "number",
                  "null"
                ]
              }
            },
            "required": [
              "x",
              "y",
              "z"
            ],
            "additionalProperties": false
          },
          "to": {
            "type": "string"
          },
          "origin": {
            "description": "Where the leg starts. null: not recorded, it starts at one of the NPC's positions.",
            "type": [
              "string",
              "null"
            ]
          },
          "price": {
            "description": "Route price in gold. 0: free or not recorded, see notes.",
            "type": [
              "number",
              "null"
            ]
          },
          "notes": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "npc",
          "city",
          "subarea",
          "location",
          "position",
          "to",
          "origin",
          "price",
          "notes"
        ],
        "additionalProperties": false
      }
    },
    "totalMatches": {
      "type": "number"
    },
    "nextCursor": {
      "type": "string"
    },
    "indexGeneratedAt": {
      "type": "string"
    }
  },
  "required": [
    "results",
    "totalMatches",
    "indexGeneratedAt"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Recommended Prompts

search_research
Search for information about [topic] using tibiawiki-mcp
Expected tools: tibia_search
find_specific
Find [specific item] using tibiawiki-mcp
Expected tools: tibia_search
retrieve_data
Get details about [item] from tibiawiki-mcp
Expected tools: tibia_get
fetch_info
Fetch [information type] using tibiawiki-mcp
Expected tools: tibia_get
research_workflow
Search for [topic], then get detailed information about the top results using tibiawiki-mcp
Expected tools: tibia_searchtibia_get

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded12 tools
verifiedversion not recorded5 tools