Skip to main content
Glama
lowrykun

civ6mcp

by lowrykun

Civilization VI MCP Server

An MCP (Model Context Protocol) server that provides Claude with real-time access to your Civilization VI game data. Get strategic analysis, diplomatic intelligence, military assessments, and more by connecting Claude to your active game.

Features

  • Strategic Overview - Comprehensive situational briefing combining all intelligence

  • Diplomatic Intelligence - Track relationships, alliances, and the reasons behind them

  • Military Analysis - Monitor troop strength, combat desire, and threat levels

  • Production Tracking - See what every civilization is building

  • City Status - Analyze city growth potential and food challenges

  • Victory Progress - Track who's leading each victory type

  • Score Breakdown - Understand where each civ's score comes from (Empire, Tech, Wonders, etc.)

  • Trend Analysis - Identify rising powers and declining civilizations

  • Combat History - Review recent battles and ongoing conflicts

  • World Congress - Track voting records and resolutions

  • Great People - Monitor the great people race

  • Cultural Victory Tracking - Track Great Artists, Writers, and Musicians

Related MCP server: EVE Online Companion MCP Server

Requirements

  • Node.js 18+

  • Civilization VI (macOS or Windows)

  • Claude Desktop

Important: You must enable game logging in Civilization VI for the MCP server to access game data. See Enable Game Logging below.

Installation

  1. Clone the repository:

    git clone https://github.com/lowrykun/civ6mcp.git
    cd civ6mcp
  2. Install dependencies:

    npm install
  3. Build the project:

    npm run build

Enable Game Logging

The MCP server reads data from Civilization VI's log files. You need to enable logging:

  1. Find your UserOptions.txt file:

    • macOS: ~/Library/Application Support/Sid Meier's Civilization VI/UserOptions.txt

    • Windows: %LOCALAPPDATA%\Firaxis Games\Sid Meier's Civilization VI\UserOptions.txt

  2. Add or modify this line:

    GameHistoryLogLevel=1
  3. Start Civilization VI and play at least one turn to generate log data.

Claude Desktop Configuration

Add this to your Claude Desktop configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "civ6": {
      "command": "node",
      "args": ["/path/to/civ6mcp/dist/index.js"]
    }
  }
}

Replace /path/to/civ6mcp with the actual path to where you cloned the repository.

For the best experience, create a Claude Project with the strategic advisor instructions:

  1. In Claude, create a new Project called "Civilization VI"

  2. Copy the contents of PROJECT_INSTRUCTIONS.md into the Project Instructions

  3. Start a conversation in that project

This gives Claude context about all the available tools and how to provide strategic advice.

Available Tools

Tool

Description

get_strategic_overview

Comprehensive briefing: threats, opportunities, victory race

get_yield_comparison

Compare all civs' science, culture, gold, faith, military

get_victory_progress

Who's leading each victory type

get_civ_statistics

Detailed per-civ stats (specify turn number optional)

get_score_breakdown

Score breakdown by category (Empire, Tech, Wonders, etc.)

get_trend_analysis

Track changes over time, identify rising/declining powers

get_diplomatic_status

Relationships: allied, friendly, denounced, war

get_diplomatic_modifiers

Specific reasons for +/- relations

get_military_intelligence

Strength, combat desire, threat levels

get_combat_log

Recent battles, units, damage

get_city_production

What every city is building

get_city_status

City growth potential based on food advantage at founding

get_tech_status

Technology progress by civilization

get_world_congress

Voting records and resolution outcomes

get_great_people

Great People claimed and available

get_great_people_culture

Track Artists, Writers, Musicians for cultural victory

list_saves

Find save files

read_game_state

Parse save file for basic game info

get_strategy_brief

Formatted briefing from save file

See TOOLS.md for detailed documentation.

Usage Examples

Ask Claude things like:

  • "What's my current strategic situation?"

  • "Who is the biggest threat right now?"

  • "What are my neighbors building?"

  • "How are my yields compared to other civs?"

  • "Show me the trend analysis for the last 10 turns"

  • "What's the diplomatic situation with Persia?"

How It Works

The MCP server reads from two sources:

  1. Save Files (.Civ6Save) - Basic game info like leader, turn, map settings

  2. Log Files (CSV) - Detailed statistics generated each turn when logging is enabled

Log files provide much richer data including:

  • All civilizations' yields and military strength

  • Diplomatic relationships and their modifiers

  • Combat records

  • City production queues

  • Technology progress

  • World Congress votes

Platform Support

  • macOS - Fully supported

  • Windows - Fully supported

Troubleshooting

"No game data available"

  • Make sure GameHistoryLogLevel=1 is set in UserOptions.txt

  • Play at least one turn after enabling logging

  • Check that log files exist in your Logs directory

Data seems outdated

  • Log files update when you complete a turn

  • Mid-turn, you'll only see your own civilization's latest data

License

MIT License - see LICENSE for details.

Available Tools

21 tools
get_city_productionB

Get what every city is currently building, including strategic items like Giant Death Robots, Manhattan Project, and space race projects.

ParametersJSON Schema
NameRequiredDescriptionDefault
civilizationNoFilter to show production for a specific civilization

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It does not disclose any behavioral traits such as response format, data freshness, or permissions. The simple read operation is implied but not explicitly stated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence of 157 characters, front-loaded with the main purpose and no extraneous information. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple one-param tool and no output schema, the description is adequate but could mention what the response contains (e.g., a list of cities and their productions). Without annotations, it lacks completeness for an agent to fully understand the output.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already describes the single parameter (filter by civilization) with 100% coverage. The description adds no additional meaning beyond the schema, so it meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get' and the resource 'what every city is currently building', with specific examples like Giant Death Robots and Manhattan Project. This distinguishes it from sibling tools like get_city_status or get_strategic_overview.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus its siblings, nor are there any exclusions or prerequisites. The description simply states the functionality without context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_city_statusA

Get status of your cities including food advantage at founding (indicates growth potential) and current production. Cities with negative food advantage will struggle to grow without improvements like Granaries or Farms.

ParametersJSON Schema
NameRequiredDescriptionDefault
player_idNoPlayer ID (default: 0 for human player)

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description carries the full burden. It discloses the tool is read-only (implied by 'Get status') and describes returned data types, but doesn't explain if it returns all cities or a single city, nor any auth or rate limiting.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words. Front-loaded with key information about food advantage and production.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, but the description doesn't fully explain return format (e.g., list of cities, fields beyond food and production). Incomplete for a tool with one parameter and high schema coverage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameter 'player_id' is already documented. The description adds no extra meaning beyond what's in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Get status of your cities' with specific details about food advantage and production, distinguishing it from siblings like 'get_city_production'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives like 'get_city_production'. The description only implies usage for city status checks.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_civ_statisticsA

Get detailed statistics for ALL civilizations including yields, military, cities, and score. Requires game history logging to be enabled (GameHistoryLogLevel=1 in UserOptions.txt).

ParametersJSON Schema
NameRequiredDescriptionDefault
turnNoSpecific turn number to get stats for. Defaults to latest available turn.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It mentions the prerequisite but does not disclose read-only behavior, side effects, or response format. Adequate but could be more transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no fluff, front-loaded with purpose. Efficient and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers purpose and prerequisite adequately. Lacks output schema, but description hints at return fields (yields, military, cities, score). Reasonably complete for a simple tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (one parameter 'turn' with description). Description adds 'Defaults to latest available turn,' which is already implied by schema's 'Defaults to latest.' Minimal additional value beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the verb (get), resource (statistics), and scope (all civilizations, including yields, military, cities, and score). It distinguishes from sibling tools that target specific aspects (e.g., get_yield_comparison, get_military_intelligence).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit prerequisite (game history logging enabled) but does not explain when to use this tool versus alternatives like get_yield_comparison or get_military_intelligence. No when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_combat_logB

Get recent combat history showing battles, units involved, damage dealt, and active conflicts.

ParametersJSON Schema
NameRequiredDescriptionDefault
turnsNoNumber of recent turns to show (default: 5)

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full responsibility for behavioral transparency. It implies a read operation but does not explicitly state that it is non-destructive, requires no authentication, or has rate limits. Details about pagination, result ordering, or limits are missing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that directly conveys the tool's purpose without extraneous words. Every element serves a clear function.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description gives a reasonable overview of return content (battles, units, damage, conflicts). However, it lacks specifics on format, ordering, or whether the log is aggregated per turn. For a simple log tool, this is adequate but leaves gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already describes the single 'turns' parameter with default value, yielding 100% coverage. The tool description adds no further semantic information about the parameter, so baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool provides 'recent combat history' and explicitly lists included details (battles, units, damage, conflicts). It is a specific verb-resource pair that distinguishes itself from sibling tools like get_military_intelligence or get_strategic_overview, which focus on broader military analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus alternatives. Among siblings like get_military_intelligence or get_strategic_overview, there is no explicit context for when combat log is preferred. The description does not address prerequisites or scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_diplomatic_modifiersA

Get specific diplomatic modifiers explaining why civilizations like or dislike each other (e.g., "Allied with a friend +8", "Denounced them -9").

ParametersJSON Schema
NameRequiredDescriptionDefault
civilizationNoFilter to show modifiers for a specific civilization

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries full burden. It does not disclose that the operation is read-only, return format, or any side effects. Only the output content is hinted at via examples.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with a helpful example. Every word earns its place, with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With one well-documented parameter and no output schema, the description is nearly complete. It could mention that the output is a list, but the examples cover the needed context well.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a clear description for the 'civilization' parameter. The tool description adds no extra meaning beyond the schema, only providing output examples. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool 'gets specific diplomatic modifiers' explaining likes/dislikes, with concrete examples. It distinguishes from siblings like 'get_diplomatic_status' by focusing on the modifiers breakdown.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for getting modifiers but does not explicitly specify when to use this tool over alternatives like 'get_diplomatic_status'. No exclusion or context guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_diplomatic_statusB

Get diplomatic relationships between all civilizations including alliance status, friendship, denouncements, and wars.

ParametersJSON Schema
NameRequiredDescriptionDefault
civilizationNoFilter to show relations for a specific civilization

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden but fails to disclose any behavioral traits (e.g., if data is real-time, permissions needed, or response format).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The single sentence is efficient and free of redundancy, though it could be expanded to include usage context without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple query tool with one optional parameter and no output schema, the description is minimally adequate but lacks guidance on what the response contains.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a description for the single parameter. The tool description does not add extra meaning beyond the schema's filter explanation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Get diplomatic relationships' and lists specific aspects (alliance status, friendship, denouncements, wars), distinguishing it from siblings like get_diplomatic_modifiers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use or alternatives are mentioned. Usage is implied as a broad overview, but no differentiation from get_diplomatic_modifiers which is a sibling.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_game_contextB

Retrieve the stored game context information

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description must carry the full burden. It fails to disclose whether the operation is read-only, what data is returned, or any side effects. Simply stating 'retrieve' implies read-only, but no further behavioral traits are given.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no unnecessary words. It is appropriately front-loaded and concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no annotations, the description provides minimal context about what 'game context information' entails. It is adequate for a simple retrieval but could be more informative about the content or purpose.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and schema coverage is 100%. The description adds no parameter information, but none is needed. Baseline for zero parameters is 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Retrieve the stored game context information' clearly states the verb (retrieve) and resource (game context information). However, it does not differentiate from similar sibling tools like get_game_state, which may have overlapping scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. With many sibling get_* tools, the description lacks context for appropriate selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_great_peopleB

Get Great People that have been claimed and those available for recruitment.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; the description does not disclose behavior beyond the basic action. Missing info on side effects, permissions, or return format. For a tool with no annotations, the description should provide more context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Extremely concise single sentence that clearly states purpose. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Minimal but adequate for a simple retrieval tool with no parameters. However, lacks information on what the response contains (e.g., list of great people with statuses). With no output schema, description should provide more context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist, schema coverage is 100%. The description adds no parameter info, but none is needed. Baseline for 0 parameters is 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the resource ('Great People') and the action ('Get') and distinguishes between claimed and available. However, it does not differentiate from the sibling tool 'get_great_people_culture'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus siblings like 'get_great_people_culture'. Lacks context on prerequisites or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_great_people_cultureA

Track Great Artists, Writers, and Musicians for cultural victory analysis. Shows who is collecting cultural Great People, how many Great Works have been created, and who is leading the culture race.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description implies read-only operation ('Shows...') but does not explicitly state non-destructiveness or any other behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two efficient sentences that state purpose and output, with no wasted words. Front-loaded with key verbs 'Track' and 'Shows'.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless tool with no output schema, the description fully covers what the tool provides: tracking specific Great People, Great Works count, and culture race leader.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist, so schema coverage is 100% trivially. Description does not need to add parameter info, achieving baseline expectation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly specifies tracking Great Artists, Writers, and Musicians for cultural victory analysis, distinguishing it from the broader 'get_great_people' sibling by focusing on cultural Great People.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied for cultural victory analysis, but no explicit guidance on when to use this versus alternatives (e.g., get_great_people) or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_military_intelligenceA

Get military strength, combat desire (aggressiveness), and preferred military tech targets for all civilizations.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Since no annotations are given, the description must cover behavioral traits. It explains what data is returned (strength, aggressiveness, tech targets) and scope (all civilizations), but does not disclose potential costs, side effects, or whether the data is computed or cached. Adequate but not thorough.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no wasted words, front-loading the action ('Get') and listing key outputs. It is concise and structured efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters and no output schema, the description is minimal. It covers the main purpose and scope (all civilizations), but lacks details on return format or data nesting. Adequate for a simple tool, but could be more explicit about per-civilization structure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With zero parameters, the description cannot add parameter meaning beyond the schema, but it does explain what the tool returns, which is valuable. Baseline for 0 parameters is 4, and the description meets that by clarifying the output.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get' and specifies the resources: military strength, combat desire, and preferred military tech targets for all civilizations. It effectively distinguishes itself from sibling tools like get_civ_statistics or get_strategic_overview by focusing on military intelligence.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as get_civ_statistics or get_strategic_overview, nor any prerequisites or scenarios. The description simply states what it does without contextualizing its role among sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_score_breakdownA

Get detailed score breakdown by category (Empire, Tech, Civics, Wonders, Great People, Religion) for all civilizations. Shows why each civ is ahead or behind and identifies your strengths and gaps.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description properly discloses the scope and output (why civs are ahead/behind, strengths/gaps). It does not mention side effects, which are presumed absent, but could be more explicit.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words; the first sentence states the core purpose, the second adds value by describing the output's utility.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the tool's purpose and output comprehensively given no parameters or output schema; it explains what categories and insights are provided.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist, so the baseline is 4. The description adds meaning about the output categories, which is sufficient.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves a detailed score breakdown by specific categories (Empire, Tech, etc.) for all civilizations, distinguishing it from siblings like get_civ_statistics or get_strategic_overview.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when a detailed score analysis is needed, but lacks explicit guidance on when not to use it or how it compares to alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_strategic_overviewA

Get a comprehensive strategic briefing combining threats, opportunities, active conflicts, victory race positions, and key production to watch.

ParametersJSON Schema
NameRequiredDescriptionDefault
civilizationNoYour civilization name for personalized threat/opportunity analysis

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. Describes what the tool returns (aggregated briefing) but does not disclose behavioral traits like read-only nature, security, or side effects. Adequate but minimal for a read tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, no redundant words. Efficiently conveys the tool's purpose and scope.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given one optional parameter and no output schema, description adequately explains what the tool does. Could benefit from hinting at return format (e.g., structured vs text) but is sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (1 parameter). Description adds context that the 'civilization' parameter personalizes the analysis, going beyond the schema description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states verb 'get', resource 'strategic briefing', and specific components (threats, opportunities, conflicts, victory race, production). Distinguishes from siblings like get_strategy_brief or get_trend_analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives. Does not mention when to choose get_strategic_overview over get_strategy_brief, get_trend_analysis, or others in the sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_strategy_briefC

Get a formatted strategy briefing from a Civilization VI save file, suitable for discussing strategy and next moves

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathYesFull path to the .Civ6Save file

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It describes a read operation ('Get') but does not disclose any other behavioral traits such as side effects, performance implications, file access requirements, or whether it modifies the save file. The description is minimal and leaves the agent with little additional behavioral insight beyond the tool name.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no unnecessary words. It efficiently conveys the core purpose and context, achieving maximum conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema and many sibling tools, the description is incomplete. It does not specify what a 'formatted strategy briefing' contains, how it is formatted, what criteria it covers, or any constraints like required game state. This leaves the agent with insufficient context to set expectations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the parameter description is detailed ('Full path to the .Civ6Save file'). The tool's description does not add any new information about the parameter beyond what the schema already provides, so it meets the baseline but does not enhance understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves a 'formatted strategy briefing' from a Civ VI save file, intended for discussing strategy. It distinguishes from siblings like 'get_strategic_overview' by specifying formatting and strategic discussion purpose, though the exact differentiation is not fully explicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context (discussing strategy and next moves) but provides no explicit guidance on when to use this tool versus alternatives like 'get_strategic_overview' or 'get_game_context'. No exclusion criteria or prerequisites are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_tech_statusB

Get technology research progress for all civilizations.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits, but it only states it is a read operation ('Get') without additional details like whether it modifies state, requires permissions, or has rate limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence of 9 words that is front-loaded and contains no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description states what the tool returns but lacks detail on the format or content of the progress data. Given no output schema and no annotations, it is minimally adequate but leaves the agent uncertain about the response structure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are zero parameters, so schema coverage is trivially 100%. The description adds no parameter info, but no further explanation is needed. Baseline of 4 is appropriate as it correctly describes the tool's lack of input requirements.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get' and the resource 'technology research progress', and specifies scope 'for all civilizations'. However, it does not differentiate from similar sibling tools like get_strategic_overview or get_civ_statistics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. There is no mention of context, prerequisites, or recommended use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_trend_analysisA

Analyze trends over multiple turns showing how each civilization's score, science, culture, military, and territory are changing. Highlights military buildups, fastest growing civs, and declining powers.

ParametersJSON Schema
NameRequiredDescriptionDefault
turnsNoNumber of turns to analyze (default: 10)

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so description must cover behavior. It discloses what trends are included and highlights provided, but does not state non-destructiveness, performance, data limits, or any side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no fluff, front-loaded with the core action and scope. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Without output schema, the description should clarify return format or structure. It lists what is shown but not how the agent can use the returned data, leaving some ambiguity for automated processing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Only one parameter with 100% schema coverage; schema already explains its purpose. The description adds context about what the trend analysis covers, aligning with schema, but no extra parameter-level detail is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the tool analyzes trends across multiple game metrics (score, science, etc.) and highlights specific patterns (military buildups, fastest growing, declining), distinguishing it from snapshot or comparison tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Describes use case (analyze trends) but lacks explicit guidance on when to use this tool over siblings like get_civ_statistics or get_yield_comparison, and no mention of prerequisites or limitations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_victory_progressA

Get victory progress positions for all civilizations across Science, Culture, Domination, and Score victories. Shows who is leading each victory type.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It states the tool reads victory progress data, which is non-destructive, but does not disclose details like data freshness, ordering, or whether it returns only the leader or all positions. For a simple read tool, this is adequate but could be more explicit.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences front-load the action and outcome. Every word is earned with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter simple retrieval tool, the description provides the essential purpose. However, the absence of output schema means the agent lacks details on response format (e.g., is it a list of civ leaders per victory type?). Including an example or structure would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has no parameters, and schema coverage is 100% (empty object). Baseline is 4, no additional parameter info needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves victory progress positions for all civilizations across four specific victory types. It explicitly mentions showing who is leading each type, which is specific and distinguishes it from sibling tools like get_score_breakdown that might provide aggregated scores.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like get_score_breakdown or get_strategic_overview. The description does not mention context, prerequisites, or exclusions, leaving the agent without decision support.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_world_congressA

Get World Congress voting records and resolution outcomes.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden but only states what is retrieved. It does not disclose whether the operation is read-only, if it requires specific game state, or if it can be called repeatedly without side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence of 8 words, front-loading the essential information with no unnecessary details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no parameters and no output schema, the description is minimal but sufficient to understand the basic purpose. However, it lacks details on scope (e.g., all time vs current session) or return format, which would be helpful for completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has no parameters (schema coverage 100%), and the description adds meaning by specifying the content returned. Baseline for 0 parameters is 4, and the description provides adequate context beyond the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get' and the resource 'World Congress voting records and resolution outcomes', which is specific and distinguishes it from other get_* siblings like get_city_production or get_diplomatic_status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternative tools. For example, it does not explain whether to use this for current session records or historical data, nor does it mention prerequisites or limitations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_yield_comparisonA

Get a comparison table of all civilizations' yields (science, culture, gold, faith per turn), cities, and military strength.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the output (comparison table) but does not explicitly declare the operation as read-only, safe, or idempotent. Although the tool name suggests read-only, the absence of such affirmation or any mention of side effects or prerequisites leaves a gap for complex use cases.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence with no wasted words. It front-loads the action ('Get') and the resource ('comparison table'), immediately conveying the tool's purpose. Every clause adds detail, and the structure is efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (no parameters, no output schema, no annotations), the description is fairly complete: it describes the returned data (yields, cities, military strength) and scope (all civilizations). It lacks any mention of formatting, pagination, or performance, but for a basic data retrieval tool, this is sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and schema coverage is 100% (no params to describe). The description adds value by enumerating the data fields (yields, cities, military strength) beyond the empty schema, giving the agent a clear expectation of what the table contains. Baseline for 0-param tools is 4, and this description meets it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Get' and resource 'comparison table', clearly listing the included yields (science, culture, gold, faith per turn), cities, and military strength. It distinguishes itself from siblings like get_civ_statistics or get_strategic_overview by focusing on a cross-civilization comparison of yields and military.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when a comparison of all civilizations' yields and military is needed, but it provides no explicit guidance on when not to use this tool or alternatives. Sibling tools like get_civ_statistics or get_strategic_overview may overlap, but no exclusions or references are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_savesA

List all Civilization VI save files. Saves are located at: /root/Library/Application Support/Sid Meier's Civilization VI/Sid Meier's Civilization VI/Saves

ParametersJSON Schema
NameRequiredDescriptionDefault
filterNoFilter saves by type. Default: all

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description includes the file path, which adds context, but lacks details on behavior such as performance, whether it scans subdirectories, or the format of returned data. With no annotations, more transparency would be beneficial.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with two sentences, front-loading the purpose and then providing the file path. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with one optional parameter and no output schema, the description covers basic usage but could be improved by indicating what the output contains (e.g., file names or full paths).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already describes the single parameter fully (enum values with default), so the description adds no additional meaning. Baseline score of 3 is appropriate given 100% schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('List') and the resource ('all Civilization VI save files'), making the purpose unambiguous. It is distinct from sibling tools, which focus on game state or statistics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. While sibling tools are different, there is no explicit when-to-use or when-not-to-use advice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

read_game_stateA

Parse a Civilization VI save file and return the current game state including leader, civilization, era, difficulty, and other players

ParametersJSON Schema
NameRequiredDescriptionDefault
save_pathYesFull path to the .Civ6Save file

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description bears full burden. It does not disclose side effects, required permissions, error behavior, or performance implications. Only states basic read operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, 20 words, front-loaded with purpose. No filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one param and no output schema, the description lists some return fields but lacks full details on return format, error handling, and preconditions. Adequate but leaves gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a clear description for 'save_path'. The tool description adds no extra meaning beyond what the schema already provides, so baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('parse') and resource ('save file') and lists what is returned ('leader, civilization, era, difficulty, and other players'). It clearly differentiates from siblings that return individual aspects.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is used to load initial game state, but does not explicitly state when to use it versus alternatives or when not to use it. No exclusions or prerequisites are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_game_contextB

Store additional game context that cannot be parsed from the save file (e.g., current yields, military strength, cities, technologies, goals, diplomatic relations). This information will be included in strategy briefs.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYesGame context information. Can include: Gold/Science/Culture/Faith per turn, Military strength, City names and populations, Key technologies/civics, Current goals, Relations with other civs, etc.

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must convey behavioral traits. It says 'store' but does not specify whether calling again overwrites or appends context, whether there are size limits, if the context persists across sessions, or if any side effects occur. This lack of detail makes it hard for an agent to know how to use it safely.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no waste. The first sentence defines the purpose and scope, the second explains the benefit. Every word is meaningful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema or annotations, the description should provide more behavioral context (e.g., idempotency, merging behavior, persistence). With 1 parameter and simple schema, it's missing key usage details that an agent needs to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (1 param with description). The description adds examples of what can be included, which aids understanding but does not go beyond what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: storing additional game context not parseable from save files. It lists specific examples like yields, military strength, cities, etc., which distinguishes it from sibling tools that retrieve or analyze data rather than store.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for adding context that will appear in strategy briefs, but does not explicitly state when to use it versus alternatives (e.g., when not to use, if it should be called before or after other tools). No exclusion criteria or guidance on frequency.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 21 tool updatesv1.0.0
    • First observedget_city_production
    • First observedget_city_status
    • First observedget_civ_statistics
    • First observedget_combat_log
    • First observedget_diplomatic_modifiers
    • First observedget_diplomatic_status
    • First observedget_game_context
    • First observedget_great_people
    • First observedget_great_people_culture
    • First observedget_military_intelligence
    • First observedget_score_breakdown
    • First observedget_strategic_overview
    • First observedget_strategy_brief
    • First observedget_tech_status
    • First observedget_trend_analysis
    • First observedget_victory_progress
    • First observedget_world_congress
    • First observedget_yield_comparison
    • First observedlist_saves
    • First observedread_game_state
    • First observedset_game_context

TDQS

A3.7/5.0
Disambiguation5/5

Each tool targets a distinct aspect of the game (cities, civilizations, combat, diplomacy, great people, tech, victory, etc.). Even potentially overlapping tools like get_strategic_overview and get_strategy_brief have clearly differentiated purposes.

Naming Consistency4/5

Most tools follow the get_<noun> pattern, but list_saves and set_game_context use different verbs. This is a minor deviation from an otherwise consistent naming scheme.

Tool Count5/5

21 tools is well-scoped for the complexity of Civilization VI. Each tool covers a specific gameplay aspect without being excessive or redundant.

Completeness4/5

The toolset covers major game systems (cities, tech, diplomacy, victory, etc.) but lacks direct tools for religion and detailed unit management. These are minor gaps for a read-only server.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Connects Claude to your Steam library via the Steam Web API. Query your games, playtime, recently played history, and store metadata using natural language. Zero-config install via npx steam-mcp.
    5
    18
    5
    MIT
  • F
    license
    A
    quality
    Not graded
    maintenance
    An MCP server that provides Claude with direct access to EVE Online character data, market prices, killboard intelligence, wiki knowledge, and game mechanics. It enables natural language interaction for checking skills, analyzing fittings, setting in-game destinations, and accessing real-time EVE Online information.
    37
    -
  • A
    license
    A
    quality
    B
    maintenance
    Enables Claude to access and query your Garmin Connect data, including sleep, activities, training load, and health metrics, through a set of read-only MCP tools.
    28
    1
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Exposes Steam Web API tools as MCP resources for Claude Code, Claude Desktop, and Gemini CLI, enabling profile lookups, game searches, achievement tracking, and more.
    11
    18
    1
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/lowrykun/civ6mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server