FFT Companion
Final Fantasy Tactics game data across the PSX, War of the Lions and Ivalice Chronicles releases
我该使用它吗
质量与安全性
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"fft-companion": {
"url": "https://mcp.fftcompanion.app/mcp"
}
}
}远程端点
https://mcp.fftcompanion.app/mcpstreamable-http它能做什么
工具清单
工具(8)
🟢list_versions
Lists the three Final Fantasy Tactics releases covered by this server and how many records exist per entity kind in each. Call this first to pick a version.
输入模式
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢search(version, query, kinds, lang, limit)
Finds entities by name or id across equipment, abilities, jobs, monsters, bosses, locations and consumables. Returns ids and display names only — use get_records or a specific data tool to retrieve the actual data. Matches English, Japanese, Portuguese, Korean, Spanish, French and German names, and is punctuation-insensitive.
输入模式
{
"type": "object",
"properties": {
"version": {
"type": "string",
"enum": [
"psx",
"wotl",
"ic"
],
"description": "Which release to read. psx = original PlayStation, wotl = War of the Lions, ic = The Ivalice Chronicles. Data differs meaningfully between them."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Name or id fragment, e.g. 'excalibur', 'battle axe', 'ベヒーモス'."
},
"kinds": {
"description": "Restrict to these entity kinds.",
"type": "array",
"items": {
"type": "string",
"enum": [
"equipment",
"abilities",
"jobs",
"monsters",
"bosses",
"locations",
"consumables"
]
}
},
"lang": {
"default": "en",
"type": "string",
"enum": [
"en",
"ja",
"pt",
"ko",
"es",
"fr",
"de",
"zh-Hans",
"zh-Hant"
]
},
"limit": {
"default": 25,
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"required": [
"version",
"query"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_records(version, kind, ids, lang)
Returns complete records for up to 25 ids of one entity kind, including stats, costs, effects and availability with all cross-references resolved to names. Free while this deployment runs unmetered.
输入模式
{
"type": "object",
"properties": {
"version": {
"type": "string",
"enum": [
"psx",
"wotl",
"ic"
],
"description": "Which release to read. psx = original PlayStation, wotl = War of the Lions, ic = The Ivalice Chronicles. Data differs meaningfully between them."
},
"kind": {
"type": "string",
"enum": [
"equipment",
"abilities",
"jobs",
"monsters",
"bosses",
"locations",
"consumables"
]
},
"ids": {
"minItems": 1,
"maxItems": 25,
"type": "array",
"items": {
"type": "string"
},
"description": "Entity ids from search."
},
"lang": {
"default": "en",
"type": "string",
"enum": [
"en",
"ja",
"pt",
"ko",
"es",
"fr",
"de",
"zh-Hans",
"zh-Hant"
]
}
},
"required": [
"version",
"kind",
"ids"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢query_equipment(version, category, subCategory, maxCost, minStat, ...)
Filters and sorts the equipment table — by category, weapon/armor type, cost, and stat thresholds. Use this instead of paging through get_records when shopping for "best X under Y gil". Free while this deployment runs unmetered.
输入模式
{
"type": "object",
"properties": {
"version": {
"type": "string",
"enum": [
"psx",
"wotl",
"ic"
],
"description": "Which release to read. psx = original PlayStation, wotl = War of the Lions, ic = The Ivalice Chronicles. Data differs meaningfully between them."
},
"category": {
"type": "string",
"enum": [
"weapon",
"bodyArmor",
"shield",
"headgear",
"accessory"
]
},
"subCategory": {
"description": "Narrower type, e.g. 'katana', 'robe', 'hat'.",
"type": "string"
},
"maxCost": {
"description": "Maximum shop cost in gil.",
"type": "number"
},
"minStat": {
"description": "Minimum values per stat, e.g. { weaponPower: 10, magicAttack: 2 }.",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"sortBy": {
"description": "Stat name to sort by, descending. Falls back to cost.",
"type": "string"
},
"lang": {
"default": "en",
"type": "string",
"enum": [
"en",
"ja",
"pt",
"ko",
"es",
"fr",
"de",
"zh-Hans",
"zh-Hant"
]
},
"limit": {
"default": 25,
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"required": [
"version"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢find_item_sources(version, itemId)
Reverse lookup: every way to obtain a piece of equipment or a consumable — which outfitter unlocks it and after which battle, which monsters poach into it, and which treasure tiles hold it. This is indexed backwards from the game data and is not readable from the item record alone. Free while this deployment runs unmetered.
输入模式
{
"type": "object",
"properties": {
"version": {
"type": "string",
"enum": [
"psx",
"wotl",
"ic"
],
"description": "Which release to read. psx = original PlayStation, wotl = War of the Lions, ic = The Ivalice Chronicles. Data differs meaningfully between them."
},
"itemId": {
"type": "string",
"description": "Equipment or consumable id, e.g. 'excalibur'."
}
},
"required": [
"version",
"itemId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡get_job(version, jobId, lang)
Full job record: raw stat multipliers and growth, static move/jump/evasion, the complete learnable ability set with JP costs, and which equipment types the job can equip. Also returns the version's stat ceilings for normalization. Free while this deployment runs unmetered.
输入模式
{
"type": "object",
"properties": {
"version": {
"type": "string",
"enum": [
"psx",
"wotl",
"ic"
],
"description": "Which release to read. psx = original PlayStation, wotl = War of the Lions, ic = The Ivalice Chronicles. Data differs meaningfully between them."
},
"jobId": {
"type": "string",
"description": "Job id, e.g. 'ninja', 'calculator', 'darkKnight'."
},
"lang": {
"default": "en",
"type": "string",
"enum": [
"en",
"ja",
"pt",
"ko",
"es",
"fr",
"de",
"zh-Hans",
"zh-Hant"
]
}
},
"required": [
"version",
"jobId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_monster(version, monsterId, lang)
Full monster record: stat multipliers and growth by rank, poach drops (common and rare), ability set, and the random-battle locations it appears in per chapter — including which map you must travel from. Free while this deployment runs unmetered.
输入模式
{
"type": "object",
"properties": {
"version": {
"type": "string",
"enum": [
"psx",
"wotl",
"ic"
],
"description": "Which release to read. psx = original PlayStation, wotl = War of the Lions, ic = The Ivalice Chronicles. Data differs meaningfully between them."
},
"monsterId": {
"type": "string",
"description": "Monster id, e.g. 'behemoth', 'redPanther'."
},
"lang": {
"default": "en",
"type": "string",
"enum": [
"en",
"ja",
"pt",
"ko",
"es",
"fr",
"de",
"zh-Hans",
"zh-Hant"
]
}
},
"required": [
"version",
"monsterId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪compare_versions(kind, id, versions)
Compares the same entity across psx, wotl and ic and reports exactly which fields changed. Answers questions like "was this weapon nerfed in War of the Lions?" or "did Ivalice Chronicles lift the female-only restriction?" that otherwise require holding three datasets side by side. Free while this deployment runs unmetered.
输入模式
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"equipment",
"abilities",
"jobs",
"monsters",
"bosses",
"locations",
"consumables"
]
},
"id": {
"type": "string",
"description": "Entity id, present in at least one version."
},
"versions": {
"default": [
"psx",
"wotl",
"ic"
],
"description": "Which releases to compare.",
"minItems": 2,
"type": "array",
"items": {
"type": "string",
"enum": [
"psx",
"wotl",
"ic"
],
"description": "Which release to read. psx = original PlayStation, wotl = War of the Lions, ic = The Ivalice Chronicles. Data differs meaningfully between them."
}
}
},
"required": [
"kind",
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}推荐提示词
searchsearchget_recordsget_recordslist_versions社区
证据