Skip to main content
Glama

Godot MCP Server

An MCP (Model Context Protocol) server that provides tools for Godot Engine development.

Features

  • godot_run_tests - Run GUT (Godot Unit Test) tests and get structured results

  • godot_check_errors - Check for parse/syntax errors without running the game

  • godot_import - Import/reimport assets

  • godot_run_scene - Run a specific scene

  • godot_export - Export project to a platform

Related MCP server: godotlens-mcp

Installation

cd mcp/godot-mcp
uv pip install -e .

Or with pip:

pip install -e mcp/godot-mcp

Configuration

Add to your Claude Code MCP configuration (~/.claude/mcp.json):

{
  "mcpServers": {
    "godot": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/mcp/godot-mcp", "godot-mcp"],
      "env": {
        "QT_QPA_PLATFORM": "xcb",
        "__GLX_VENDOR_LIBRARY_NAME": "mesa"
      }
    }
  }
}

Or if installed globally:

{
  "mcpServers": {
    "godot": {
      "command": "godot-mcp"
    }
  }
}

Usage

Once configured, Claude Code can use these tools:

Run Tests

Use godot_run_tests to run the unit tests

Check for Errors

Use godot_check_errors to check for parse errors

Run a Scene

Use godot_run_scene to run the game

Requirements

  • Python 3.10+

  • Godot 4.x installed and in PATH

  • GUT (Godot Unit Test) addon for test functionality

License

MIT

Available Tools

5 tools
godot_check_errorsA

Check a Godot project for parse errors and syntax issues without running the game.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_pathNoPath to the Godot project directory (containing project.godot).

TDQS

A4/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively communicates that this is a read-only, non-destructive operation ('Check... without running the game'), which is appropriate for a static analysis tool. However, it doesn't mention potential side effects like file system access, performance characteristics, or error handling behavior.

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, well-structured sentence that efficiently communicates the tool's purpose, scope, and limitation. Every word earns its place, with no redundant information or unnecessary elaboration.

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 single-parameter tool with no output schema and no annotations, the description provides good context about what the tool does and its non-execution nature. However, it doesn't describe what the output looks like (e.g., error list, success/failure status) or potential limitations, leaving some gaps in completeness.

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%, with the single parameter 'project_path' well-documented in the schema. The description doesn't add any parameter-specific information beyond what's already in the schema, so it meets the baseline score of 3 for high schema coverage without providing additional parameter semantics.

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 specific action ('Check') and resource ('Godot project'), specifying what it checks for ('parse errors and syntax issues') and what it doesn't do ('without running the game'). It distinguishes itself from siblings like godot_run_scene and godot_run_tests by emphasizing it's a static analysis tool rather than execution.

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 provides clear context about when to use this tool ('Check a Godot project for parse errors and syntax issues') and implicitly distinguishes it from execution tools by stating 'without running the game.' However, it doesn't explicitly mention when NOT to use it or name specific alternatives among siblings for different scenarios.

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

godot_exportC

Export a Godot project to a specific platform.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_pathNoPath to the Godot project directory.
presetYesExport preset name (as defined in export_presets.cfg).
output_pathYesOutput file path for the export.

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the export action but fails to describe critical behaviors: whether this is a destructive operation (overwrites output files), requires specific permissions, has side effects on the project, or includes error handling. This leaves significant gaps for a tool that performs file system operations.

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 that efficiently conveys the core purpose without any wasted words. It is appropriately sized and front-loaded, making it easy to understand at a glance.

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?

For a tool that performs export operations (potentially involving file system changes and platform-specific builds) with no annotations and no output schema, the description is insufficient. It lacks details on return values, error conditions, platform support, or dependencies like export preset configuration, leaving the agent with incomplete operational context.

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 description coverage is 100%, with all three parameters well-documented in the schema itself. The description adds no additional parameter semantics beyond what's already in the schema (e.g., format examples, constraints, or relationships between parameters), 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.

Purpose4/5

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

The description clearly states the verb ('Export') and resource ('a Godot project') with the specific target ('to a specific platform'), making the purpose immediately understandable. It distinguishes from siblings like 'godot_import' (import vs export) and 'godot_run_scene' (run vs export), though it doesn't explicitly mention these distinctions.

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 provides no guidance on when to use this tool versus alternatives like 'godot_check_errors' or 'godot_run_tests', nor does it mention prerequisites such as having a configured export preset. It simply states what the tool does without contextual usage information.

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

godot_importA

Import/reimport assets in a Godot project. Useful after adding new files.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_pathNoPath to the Godot project directory.

TDQS

A3.5/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 the full burden of behavioral disclosure. It mentions the tool is 'useful after adding new files,' which adds some context about timing, but lacks details on permissions needed, whether it's destructive (e.g., overwrites existing assets), rate limits, or what the import process entails (e.g., formats supported, error handling). For a mutation tool with zero annotation coverage, this is a significant gap.

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 appropriately sized and front-loaded, consisting of two concise sentences that directly state the purpose and usage context without unnecessary elaboration. Every sentence adds value, making it efficient and easy to understand.

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 tool's moderate complexity (importing assets, likely a mutation), lack of annotations, and no output schema, the description is minimally adequate. It covers the basic purpose and usage timing but misses behavioral details like side effects or return values. For a tool with no structured safety or output information, it should provide more context to be fully complete.

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 has 1 parameter with 100% description coverage, providing a clear definition for 'project_path.' The description doesn't add any parameter-specific details beyond what the schema already covers, such as explaining how the path is used or format requirements. With high schema coverage, the baseline score of 3 is appropriate as the schema handles the parameter documentation adequately.

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's purpose as 'Import/reimport assets in a Godot project,' specifying both the action (import/reimport) and resource (assets in Godot project). It distinguishes from siblings like godot_check_errors or godot_run_scene by focusing on asset management rather than error checking or execution. However, it doesn't explicitly differentiate from godot_export, which might also involve asset handling.

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 provides clear context for usage with 'Useful after adding new files,' indicating when to use this tool. It implies an alternative workflow (not using it if no new files are added), but doesn't explicitly state when not to use it or name specific alternatives among siblings like godot_check_errors for validation.

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

godot_run_sceneA

Run a specific scene in the Godot project (non-headless, will open a window).

ParametersJSON Schema
NameRequiredDescriptionDefault
project_pathNoPath to the Godot project directory.
sceneNoScene path to run (e.g., 'res://src/GameLoop.tscn'). If not provided, runs main scene.
timeoutNoTimeout in seconds. Default: 60

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations provided, the description carries full burden. It discloses the key behavioral trait that execution is 'non-headless, will open a window' - important runtime behavior. However, it doesn't mention what happens on timeout, whether the tool blocks until scene completion, error handling, or resource cleanup. For a tool that launches graphical applications, more behavioral context would be helpful.

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, efficient sentence that front-loads the core purpose and includes the critical behavioral detail about window opening. Every word earns its place with no redundancy or unnecessary elaboration.

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 3 parameters, 100% schema coverage, but no annotations and no output schema, the description provides adequate but minimal context. It covers the core purpose and key runtime behavior but doesn't address error conditions, return values, or integration considerations. Given the complexity of launching graphical applications, more completeness would be beneficial.

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 schema already documents all three parameters thoroughly. The description doesn't add any parameter-specific information beyond what's in the schema. The baseline of 3 is appropriate when the schema does the heavy lifting for parameter documentation.

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 specific action ('Run a specific scene') and resource ('Godot project'), and distinguishes it from siblings by specifying it's 'non-headless, will open a window' - which differentiates it from test-running or headless execution tools. The verb+resource combination is precise and unambiguous.

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 context through 'non-headless, will open a window' which suggests this is for visual testing/demo purposes rather than automated testing. However, it doesn't explicitly state when to use this vs. alternatives like godot_run_tests or godot_export, nor does it provide any exclusion criteria or prerequisites for usage.

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

godot_run_testsA

Run GUT (Godot Unit Test) tests for a Godot project. Returns test results including pass/fail counts and any failures.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_pathNoPath to the Godot project directory (containing project.godot). If not provided, searches upward from current directory.
test_dirNoDirectory containing tests (relative to project). Default: 'res://test/unit'res://test/unit
test_scriptNoSpecific test script to run (e.g., 'test_combatant.gd'). If not provided, runs all tests.
timeoutNoTimeout in seconds. Default: 120

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the tool returns test results including pass/fail counts and failures, which adds some context beyond the input schema. However, it lacks details on execution behavior (e.g., whether it runs tests synchronously, potential side effects, or error handling), leaving gaps in transparency.

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 front-loaded with the core purpose in the first sentence and efficiently adds return value information in the second. Both sentences earn their place by providing essential context without redundancy, making it appropriately sized and well-structured.

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 tool's moderate complexity (4 parameters, no annotations, no output schema), the description is partially complete. It covers the purpose and return values but lacks details on behavioral aspects like execution flow or error conditions. Without an output schema, it should ideally explain return formats more thoroughly, but it provides a basic overview.

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 has 100% description coverage, providing full documentation for all 4 parameters. The description does not add any additional meaning or semantics beyond what the schema already specifies, such as explaining parameter interactions or usage nuances. This 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 specific action ('Run GUT (Godot Unit Test) tests') and resource ('for a Godot project'), distinguishing it from sibling tools like godot_export or godot_run_scene. It precisely defines the tool's function without being vague or tautological.

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 testing Godot projects but does not explicitly state when to use this tool versus alternatives like godot_check_errors or godot_run_scene. There is no guidance on prerequisites, exclusions, or specific contexts, leaving usage inferred rather than clearly defined.

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. 5 tool updates
    • First observedgodot_check_errors
    • First observedgodot_export
    • First observedgodot_import
    • First observedgodot_run_scene
    • First observedgodot_run_tests

TDQS

A3.7/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose with no overlap: checking errors, exporting projects, importing assets, running scenes, and running tests. The descriptions specify unique actions (e.g., parse errors vs. export vs. import), making it easy for an agent to select the correct tool without confusion.

Naming Consistency5/5

All tool names follow a consistent 'godot_verb_noun' pattern (e.g., godot_check_errors, godot_export, godot_import), using snake_case throughout. This predictability enhances readability and reduces cognitive load for agents when scanning the toolset.

Tool Count4/5

With 5 tools, the count is well-scoped for a Godot project management server, covering key development tasks. It's slightly lean but reasonable, as each tool earns its place without feeling bloated or insufficient for common workflows like testing and deployment.

Completeness4/5

The toolset covers essential Godot project operations: error checking, exporting, importing, running scenes, and running tests. Minor gaps exist, such as no project creation or build management tools, but agents can work around these for core development tasks without significant failures.

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
    B
    quality
    D
    maintenance
    An MCP server for Godot game development that provides 45 tools for reading, analyzing, and editing projects. It enables users to manage scene trees, navigate GDScript symbols, and interact with the Godot runtime for debugging and state capture.
    52
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    An MCP server that enables AI assistants to directly run, inspect, modify, and debug Godot game development projects through 110+ tools covering scenes, scripts, resources, runtime debugging, and asset management.
    33
    21
    2
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    An MCP server that enables AI agents to interact with the Godot game engine by launching the editor, running projects, capturing debug output, and managing scenes and resources. It provides tools for project analysis, scene creation, and execution control to help agents understand and debug Godot projects in real-time.
    14
    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/struktured-labs/godot-mcp'

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