FFT Companion
Final Fantasy Tactics game data across the PSX, War of the Lions and Ivalice Chronicles releases
使うべきか
品質と安全性
ツール定義とプロトコルへの準拠に関する自動分析に基づいています。
コンテキストコスト
これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。
インストール
ワンクリックインストール
これを `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コミュニティ
エビデンス