MCPサーバー

EcoCarbonWiki

dev.carbonitex.ecogame/ecocarbonwiki
ゲーム ナレッジ・ドキュメント 公開・接続可能 MCP 2026-07-28

このMCPでできること

Searches and retrieves Eco game wiki content and calculates crafting materials, recipes, rankings, aggregates, and gameplay metrics.

fetch
Fetch a single Eco wiki page as Markdown. Pass a canonical wiki path such as /wiki/item/iron-bar, /wiki, or an index like /wiki/recipes.
入力スキーマ
{'type': 'object', 'required': ['path'], 'properties': {'path': {'type': 'string', 'description': 'Canonical wiki path, e.g. /wiki/item/iron-bar'}}}
search
Full-text search the Eco game wiki (items, recipes, skills, animals, plants, biomes, guides). Returns ranked matches with name, kind, canonical url and a snippet.
入力スキーマ
{'type': 'object', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Max results (1-50, default 15).'}, 'query': {'type': 'string', 'description': 'The search query.'}}}
wiki_aggregate
Compute an aggregate over the wiki's entities — count / sum / avg / min / max of a numeric field across a whole kind, with an optional numeric 'where' filter. Use for 'how many…', 'what's the average/total/highest…' questions. 'count' needs no field (counts entities, or those matching 'where'); sum/avg/min/max require a 'field'. Supports the same optional 'category' scope as wiki_rank (food/item/species). Kinds and field names are the SAME as wiki_rank — see that tool's per-kind field lists. Example: { kind: "recipe", metric: "count", where: { field: "skill_level", op: ">", value: 5 } } → how many recipes need skill level above 5. Scoped: { kind: "food", metric: "avg", field: "calories", category: "vegetable" } → average calories of vegetables. Optional character/server PROFILE (skill_level/skills, talents, modules/module, server) recomputes the same profile-sensitive metrics as wiki_rank (recipe labor/craft_minutes; tool damage/calories_burn/durability_burn; item harvest_yield/power_watts; species yield_total/yield_min_total); static fields ignore it (the result carries a note). No profile = base aggregate.
入力スキーマ
{'type': 'object', 'required': ['kind', 'metric'], 'properties': {'kind': {'enum': ['food', 'item', 'recipe', 'skill', 'species'], 'type': 'string', 'description': 'Which entity set to aggregate over.'}, 'field': {'type': 'string', 'description': 'Numeric field for sum/avg/min/max (required for those). Optional for count — with a field, count includes only entities that have it.'}, 'where': {'type': 'object', 'required': ['field', 'op', 'value'], 'properties': {'op': {'enum': ['>', '>=', '<', '<=', '='], 'type': 'string', 'description': 'Comparison operator.'}, 'field': {'type': 'string', 'description': "A numeric field from the kind's field list."}, 'value': {'type': 'number', 'description': 'The number to compare against (bools are 1/0).'}}, 'description': 'Optional single numeric filter applied before ranking/aggregating, e.g. { field: "weight", op: "<", value: 1000 }. The field must come from the same per-kind set as \'by\'/\'field\'.', 'additionalProperties': False}, 'metric': {'enum': ['count', 'sum', 'avg', 'min', 'max'], 'type': 'string', 'description': 'Which aggregate to compute.'}, 'module': {'type': 'string', 'description': 'A single module name/type, or a comma-separated list (alternative to modules[]).'}, 'server': {'type': 'object', 'description': "Model a DIFFERENT server's difficulty (default = this server's real settings; omit for accurate answers). Fields: craftResource, craftTime, growth, garbageRatio, fuelEfficiency, foodVariety, foodTastiness, baseGain, minBalanced, maxBalanced. Only craft_minutes is server-sensitive for ranking.", 'additionalProperties': True}, 'skills': {'type': 'object', 'description': 'Per-skill levels: { "<skill FullName>": level }. Overrides skill_level for those skills.', 'additionalProperties': {'type': 'integer'}}, 'modules': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Upgrade-module names/types installed (multiple slots stack).'}, 'talents': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Talent names/types to treat as learned (profile-sensitive metrics only).'}, 'category': {'type': 'string', 'description': 'Optional: scope to ONE tag/category before ranking/aggregating, e.g. "seed", "vegetable", "gun". Only the tagged kinds (food / item / species) support this. Use the category\'s name from a wiki_search result; matching is case- and plural-insensitive.'}, 'skill_level': {'type': 'integer', 'description': 'A single skill level applied to every governing skill (profile-sensitive metrics only).'}}, 'additionalProperties': False}
wiki_bom
Bill-of-materials for making a target item/recipe: the full crafting tree INCLUDING the crafted intermediate sub-components (NOT just raw leaves). This is the tool for 'how many <component> does it take to make <target>' — including components the target never lists directly (they're summed transitively across the whole tree). Differs from wiki_total_raw (raw materials only) and wiki_calc (exact one-step numbers for a single recipe). Pass an item slug (uses its primary producing recipe) OR a recipe slug. Optional: quantity (units of the target, default 1, 1..10000); ingredient (a specific component name/slug — returns just that component's total quantity + whether it's an intermediate or raw); recipe_slug (override which producing recipe to use when the item has several — the others are listed as 'alternatives'). Optional character/server setup to recompute the whole tree: skill_level/skills, talents, modules/module, and server (model a different server's difficulty). Example: { slug:"steam-tractor", ingredient:"iron bar" } → how many iron bars a steam tractor needs.
入力スキーマ
{'type': 'object', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': 'The TARGET item or recipe slug (from a wiki_search result).'}, 'module': {'type': 'string', 'description': 'A single module name/type, or a comma-separated list (alternative to modules[]).'}, 'server': {'type': 'object', 'description': "Model a DIFFERENT server by overriding its difficulty/feature settings (default = THIS server's real settings, so omit for accurate answers). Fields: craftResource (× ingredient cost), craftTime (× craft time), growth (× plant growth/maturity), garbageRatio (Update 14 craft-waste ratio, 0..1; scales recipe garbage byproducts), fuelEfficiency (× every fuel item's fuel value), foodVariety (bool), foodTastiness (bool), baseGain (flat XP/day floor), minBalanced/maxBalanced (balanced-diet multiplier range for food XP).", 'additionalProperties': True}, 'skills': {'type': 'object', 'description': 'Per-skill levels: { "<skill FullName>": level }. Overrides skill_level for those skills.', 'additionalProperties': {'type': 'integer'}}, 'modules': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Upgrade-module names/types installed (multiple slots stack).'}, 'talents': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Talent names/types to treat as learned (applied across the whole chain). Their effect text is echoed back so you can explain why a number changed.'}, 'quantity': {'type': 'integer', 'description': 'How many units of the target to produce (default 1; clamped 1..10000).'}, 'ingredient': {'type': 'string', 'description': "Optional: a specific component name or slug. Returns just that component's total quantity in the tree and its role (intermediate/raw)."}, 'recipe_slug': {'type': 'string', 'description': 'Optional: when the target item has multiple producing recipes, pick this one (else the primary; others are reported as alternatives).'}, 'skill_level': {'type': 'integer', 'description': 'A single skill level applied to EVERY governing skill in the chain (shortcut for a uniform setup).'}}, 'additionalProperties': False}
wiki_calc
Compute EXACT numbers for a chosen setup. For a RECIPE: labor calories, craft time, per-ingredient counts and throughput at a given skill level + upgrade module + talents. For a FOOD item: its STATIC calories/nutrition (eating never changes these) PLUS an estimated XP / skill-gain rate from the diet inputs (balanced/variety/tastiness/housing). For a TOOL/WEAPON: damage, calories-per-use, durability-per-use at the tool's governing-skill level + talents. For a MINEABLE BLOCK: per-block calorie/durability cost (for a representative pickaxe), yield, and calories-per-stack at a mining-skill level + talents. For a SPECIES: harvest yields recomputed with the reader's harvest-yield talents. Omit a lever to leave it at base; the response lists the available modules/talents/skill (with each talent's effect text) so you can pick valid ones and explain what changed. Optional 'server' override models a different server's difficulty (recipes honor craftResource/craftTime; mining/species honor their relevant settings; food honors foodVariety/foodTastiness).
入力スキーマ
{'type': 'object', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': 'A recipe, food-item, or species slug (from wiki_search).'}, 'module': {'type': 'string', 'description': 'Upgrade-module name or tier number (recipes only); lowers craft time/materials.'}, 'server': {'type': 'object', 'description': "Model a DIFFERENT server by overriding its difficulty/feature settings (default = THIS server's real settings, so omit for accurate answers). Fields: craftResource (× ingredient cost), craftTime (× craft time), growth (× plant growth/maturity), garbageRatio (Update 14 craft-waste ratio, 0..1; scales recipe garbage byproducts), fuelEfficiency (× every fuel item's fuel value), foodVariety (bool), foodTastiness (bool), baseGain (flat XP/day floor), minBalanced/maxBalanced (balanced-diet multiplier range for food XP).", 'additionalProperties': True}, 'housing': {'type': 'number', 'description': 'Food only: your housing XP contribution (additive to the skill-gain rate; default 0).'}, 'talents': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Talent names to treat as learned (recipes/tools/mining/species yields).'}, 'variety': {'type': 'number', 'description': 'Food only: your current food-variety bonus multiplier (default 1).'}, 'balanced': {'type': 'boolean', 'description': 'Food only: assume a balanced diet (max balanced-diet bonus) vs this food alone.'}, 'tastiness': {'type': 'number', 'description': 'Food only: your current food-tastiness bonus multiplier (default 1).'}, 'skill_level': {'type': 'integer', 'description': 'Governing-skill level (recipes/tools/mining); lowers labor / tunes stats.'}}, 'additionalProperties': False}
wiki_contract_basics
Explain how Solomon's help contracts and quests work for players (the kinds available, how rewards/escrow work, how completion is verified). Use for 'how do contracts/quests work' questions.
入力スキーマ
{'type': 'object', 'properties': {}, 'additionalProperties': False}
wiki_get
Read full facts for one OR MANY wiki pages in a single call. Pass every page you need at once (e.g. a recipe AND its ingredient items) — batching saves round-trips. Each entry takes a slug (from wiki_search) and, ideally, its kind: • item — item/food/tool/placed-object/block: description, category, tags, weight/stack, fuel, food nutrition + shelf life, tool/weapon stats, placed-object stats (housing, rooms, power/fuel, storage), block facts, where obtained, recipes that make/use it. For a placed object this INCLUDES its measurements — storage slots and weight capacity, storage link range, interact distance, power-grid radius, footprint and top speed — so read the page before saying a size/range/capacity isn't tracked. • recipe — products (+waste), ingredients (specific items OR categories w/ examples), station, skill + level, labor, craft time, XP, throughput, and the levers that change the numbers. (wiki_calc for exact modified numbers; wiki_total_raw for the from-scratch chain.) • skill — tier, max level, prerequisites, recipes unlocked. • category — a tag's member items and the recipes that use it. • species — an animal OR plant/tree: description, yields; animals: diet/predator/nocturnal; plants: biomes, ideal temperature. • biome — the plants/trees that grow there. Omit kind only if unsure; an ambiguous slug returns all matches so you can re-request with the right kind.
入力スキーマ
{'type': 'object', 'required': ['items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['slug'], 'properties': {'kind': {'enum': ['item', 'recipe', 'skill', 'category', 'species', 'biome'], 'type': 'string', 'description': 'Which page type. Optional — omit only if unsure.'}, 'slug': {'type': 'string', 'description': 'The page slug (lower-case, hyphenated), e.g. from a wiki_search result.'}}, 'additionalProperties': False}, 'maxItems': 12, 'minItems': 1, 'description': '1–12 pages to read in one call.'}}, 'additionalProperties': False}
wiki_rank
Rank the wiki's entities by a NUMERIC field and return the top (or bottom) N. Use this for ANY 'which has the most/least/highest/lowest X' question — never guess-and-confirm with wiki_search. Choose a kind, the field to rank 'by', order (desc = highest first, the default; asc = lowest first), an optional limit (default 5, max 25), an optional 'category' to scope to one tag (food/item/species only — e.g. category "seed"), and an optional numeric 'where' filter. Available fields by kind (a field that doesn't apply to a given entity — e.g. a tool stat on a non-tool — simply excludes it): • food: calories, carbs, fat, protein, shelf_life, stack, vitamins, weight • item (base + placed-object + tool + block facets): air_pollution, animal_damage, block_tier, calories_burn, damage, durability_burn, fertility, fuel, fuel_jps, grid_radius, hardness, harvest_yield, housing_value, interact_distance, is_fuel, is_mintable, is_road, is_weapon, labor_max, labor_min, link_radius, max_coins, max_durability, move_efficiency, pollution, power_generated, power_watts, repair_level, room_tier, room_volume, school_value, seats, size_x, size_y, size_z, stack, storage_slots, storage_weight, tool_tier, vehicle_speed, weight • recipe: craft_minutes, crafting_steps, ingredients, labor, products, skill_level, skill_max_level, xp • skill: max_level, tier • species (animals ∪ plants/trees): attacks_player, calorie_value, co2_per_day, health, ideal_temp_max, ideal_temp_min, is_predator, nocturnal, yield_min_total, yield_total Bool fields read as 1/0 (e.g. where { field: "is_predator", op: "=", value: 1 }). Example: { kind: "food", by: "calories", order: "desc", limit: 3 } → the 3 highest-calorie foods. Scoped example: { kind: "food", by: "shelf_life", order: "asc", category: "seed" } → the seeds that spoil fastest. Optional character/server PROFILE (skill_level/skills, talents, modules/module, server) re-ranks the profile-sensitive metrics — recipe labor/craft_minutes; tool damage/calories_burn/durability_burn; item harvest_yield/power_watts; species yield_total/yield_min_total (craft_minutes also honors server craftTime). All other fields are static facts and ignore the profile (the result carries a note). No profile = base ranking.
入力スキーマ
{'type': 'object', 'required': ['kind', 'by'], 'properties': {'by': {'type': 'string', 'description': "Numeric field to rank by (see this tool's description for the field names valid for each kind)."}, 'kind': {'enum': ['food', 'item', 'recipe', 'skill', 'species'], 'type': 'string', 'description': 'Which entity set to rank.'}, 'limit': {'type': 'integer', 'description': 'How many to return (default 5, max 25).'}, 'order': {'enum': ['desc', 'asc'], 'type': 'string', 'description': 'desc = highest first (default), asc = lowest first.'}, 'where': {'type': 'object', 'required': ['field', 'op', 'value'], 'properties': {'op': {'enum': ['>', '>=', '<', '<=', '='], 'type': 'string', 'description': 'Comparison operator.'}, 'field': {'type': 'string', 'description': "A numeric field from the kind's field list."}, 'value': {'type': 'number', 'description': 'The number to compare against (bools are 1/0).'}}, 'description': 'Optional single numeric filter applied before ranking/aggregating, e.g. { field: "weight", op: "<", value: 1000 }. The field must come from the same per-kind set as \'by\'/\'field\'.', 'additionalProperties': False}, 'module': {'type': 'string', 'description': 'A single module name/type, or a comma-separated list (alternative to modules[]).'}, 'server': {'type': 'object', 'description': "Model a DIFFERENT server's difficulty (default = this server's real settings; omit for accurate answers). Fields: craftResource, craftTime, growth, garbageRatio, fuelEfficiency, foodVariety, foodTastiness, baseGain, minBalanced, maxBalanced. Only craft_minutes is server-sensitive for ranking.", 'additionalProperties': True}, 'skills': {'type': 'object', 'description': 'Per-skill levels: { "<skill FullName>": level }. Overrides skill_level for those skills.', 'additionalProperties': {'type': 'integer'}}, 'modules': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Upgrade-module names/types installed (multiple slots stack).'}, 'talents': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Talent names/types to treat as learned (profile-sensitive metrics only).'}, 'category': {'type': 'string', 'description': 'Optional: scope to ONE tag/category before ranking/aggregating, e.g. "seed", "vegetable", "gun". Only the tagged kinds (food / item / species) support this. Use the category\'s name from a wiki_search result; matching is case- and plural-insensitive.'}, 'skill_level': {'type': 'integer', 'description': 'A single skill level applied to every governing skill (profile-sensitive metrics only).'}}, 'additionalProperties': False}
wiki_search
Full-text search the Eco game wiki (items, recipes, skills, categories, animals, plants, biomes). Returns matching pages with their kind, name, slug, and a snippet. Use the slug with the matching wiki_get_* tool to read full facts. ALWAYS search first to find the right slugs.
入力スキーマ
{'type': 'object', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'description': 'Max results (default 8).'}, 'query': {'type': 'string', 'description': 'What to search for (e.g. "iron bar", "carpentry", "deer").'}}, 'additionalProperties': False}
wiki_total_raw
Flatten a recipe or craftable item to its TOTAL RAW materials across the whole production chain, with total labor calories, total craft minutes, and crafting-step count. Pass an item slug OR a recipe slug. Use for 'what does it take to make X from scratch' (the raw shopping list). For a breakdown that ALSO includes the crafted intermediate sub-components (e.g. how many iron bars), use wiki_bom instead. Optionally pass a character setup (skill_level/skills, talents, modules) AND/OR a server override to recompute the WHOLE chain for that profile.
入力スキーマ
{'type': 'object', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': 'An item or recipe slug (from a wiki_search result).'}, 'module': {'type': 'string', 'description': 'A single module name/type, or a comma-separated list (alternative to modules[]).'}, 'server': {'type': 'object', 'description': "Model a DIFFERENT server by overriding its difficulty/feature settings (default = THIS server's real settings, so omit for accurate answers). Fields: craftResource (× ingredient cost), craftTime (× craft time), growth (× plant growth/maturity), garbageRatio (Update 14 craft-waste ratio, 0..1; scales recipe garbage byproducts), fuelEfficiency (× every fuel item's fuel value), foodVariety (bool), foodTastiness (bool), baseGain (flat XP/day floor), minBalanced/maxBalanced (balanced-diet multiplier range for food XP).", 'additionalProperties': True}, 'skills': {'type': 'object', 'description': 'Per-skill levels: { "<skill FullName>": level }. Overrides skill_level for those skills.', 'additionalProperties': {'type': 'integer'}}, 'modules': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Upgrade-module names/types installed (multiple slots stack).'}, 'talents': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Talent names/types to treat as learned (applied across the whole chain).'}, 'skill_level': {'type': 'integer', 'description': 'A single skill level applied to EVERY governing skill in the chain (shortcut for a uniform setup).'}}, 'additionalProperties': False}
追加
wiki_aggregate
2026年9月17日12:39
追加
wiki_rank
2026年9月17日12:39
追加
wiki_contract_basics
2026年9月17日12:39
追加
wiki_calc
2026年9月17日12:39
追加
wiki_bom
2026年9月17日12:39
追加
wiki_total_raw
2026年9月17日12:39
追加
wiki_get
2026年9月17日12:39
追加
wiki_search
2026年9月17日12:39
追加
fetch
2026年9月17日12:39
追加
search
2026年9月17日12:39