gaea-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OUTPUT_DIR | No | Build output directory. | ./output |
| PROJECT_DIR | No | Directory for .terrain file storage. | ./projects |
| GAEA_INSTALL_DIR | No | Gaea installation directory. If not set, auto-detected from common paths. | auto-detected |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| check_gaea_statusA | Check if Gaea is installed and report executable paths, project directory, and readiness. Call this first to verify the environment. |
| get_gaea_version | Get the installed Gaea version number. |
| list_projectsA | List .terrain files in the project directory. Use absolute paths for files outside this directory. |
| build_terrainA | Build a terrain using Gaea.Swarm.exe CLI. Renders all output nodes in the .terrain file. The -v (variables) argument is always placed last automatically. Typical build time: seconds to minutes depending on resolution and node complexity. |
| list_node_types | List available Gaea node types with their categories and port definitions. Categories: Primitive, Terrain, Simulate, Surface, Modify, Derive, Colorize, Utility, Output. Use the "key" value (e.g. "Mountain") as the nodeType parameter in add_node. |
| read_terrain_graphA | Read a .terrain file and return a complete summary: all nodes, their properties, ports, and connections. Call this first when working with an existing terrain to understand the current graph structure. Each node has an "id" that you use in connect_nodes, set_node_property, remove_node, etc. |
| get_node_detailsA | Get all properties and port connections of a specific node. Use read_terrain_graph first to find node IDs. |
| create_terrainA | Create a new empty .terrain file compatible with Gaea 2.2.9. The file is saved in the project directory. After creation, use add_node to populate the graph. A typical workflow: create_terrain → add_node (generators: Mountain, RadialGradient) → add_node (processors: Erosion2, Thermal2, Rivers, Craggy, Snow) → add_node (colorizers: SatMap, ColorErosion) → add_node (outputs: Export, Mesher) → connect_nodes to wire the chain. |
| add_node | Add a node to the terrain graph. Use list_node_types to see available types and their ports. Common types: Mountain, Erosion2, Combine, SatMap, Export. Set initial properties for best results, e.g. Mountain: {Scale: 1.5, Height: 3}, Erosion2: {Duration: 15}, Combine: {Method: "Multiply"}, Mesher: {Format: "GLB"}. Position nodes left-to-right by increasing X (spacing ~300-500). Y=26250 for a single row. After adding, use connect_nodes to wire it into the graph. |
| remove_nodeA | Remove a node and all its connections (both incoming and outgoing) from the terrain graph. |
| connect_nodes | Connect two nodes by wiring an output port to an input port. Default ports: "Out" → "In" (works for most simple chains). For nodes with multiple ports (e.g. Combine has Input2, Mask; Erosion2 outputs Flow, Wear, Deposits), specify the port names explicitly. For Combine, set Method property before connecting (e.g. "Multiply" for masking, "Max" for blending terrains, "Screen" for color compositing). Each input port accepts only one connection — connecting replaces any existing connection on that input. |
| disconnect_port | Remove the incoming connection on a specific input port of a node. |
| set_node_propertyA | Set a property value on a node. Properties vary by node type. Common properties: Seed (int), Duration (float), Scale (float), Style (string enum). Use get_node_details to see current properties and their values. Only non-default values are stored — setting a property to its default effectively removes it. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/yushimatenjin/gaea-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server