Skip to main content
Glama

unity-api-mcp

PyPI Version PyPI Downloads MCP Registry GitHub Stars GitHub Last Commit Weekly DB Build License: MIT Python 3.10+

Servidor MCP que proporciona a los agentes de IA documentación precisa de la API de Unity. Evita firmas alucinadas, espacios de nombres incorrectos y uso de API obsoletas.

Admite Unity 6 (una base de datos por versión menor), Unity 2023 y Unity 2022 LTS. Funciona con Claude Code, Cursor, Windsurf o cualquier herramienta de IA compatible con MCP. No requiere instalación de Unity. Consulta las versiones compatibles. Las nuevas versiones de Unity se detectan y compilan automáticamente cada semana.

Inicio rápido

Añade a tu configuración de MCP (.mcp.json, mcp.json o la configuración de MCP de tu herramienta), estableciendo UNITY_VERSION para que coincida con tu proyecto:

{
  "mcpServers": {
    "unity-api": {
      "command": "uvx",
      "args": ["unity-api-mcp"],
      "env": {
        "UNITY_VERSION": "6000.3"
      }
    }
  }
}

Valores válidos: una versión de Unity 6 como "6000.3", o "6", "2023", "2022".

En la primera ejecución, el servidor descarga la base de datos correcta (~20-30 MB) en ~/.unity-api-mcp/.

Related MCP server: Funplay MCP for Unity

Cómo funciona

  1. Detección de versión. El servidor determina qué versión de Unity servir:

Prioridad

Fuente

Ejemplo

1

Variable de entorno UNITY_VERSION

"2022", "6", "6000.3" o "6000.3.8f1"

2

UNITY_PROJECT_PATH

Lee ProjectSettings/ProjectVersion.txt, asigna 2022.3.62f1 a "2022", 6000.3.8f1 a "6000.3"

3

Predeterminado

"6"

  1. Descarga de base de datos. Si la base de datos para esa versión no está en caché local, se descarga desde GitHub. Las versiones menores de Unity 6 (6000.0, 6000.3, 6000.5, …) tienen su propia base de datos por versión, con retroceso a la base de datos genérica 6 cuando no se publica una base de datos de esa versión. Las bases de datos en caché se verifican con la versión al inicio, por lo que las reconstrucciones semanales llegan automáticamente a las instalaciones existentes.

  2. Servir. Todas las llamadas a herramientas consultan la base de datos SQLite específica de la versión. Cada consulta devuelve resultados en menos de 15 ms.

Cada versión tiene su propia base de datos con las firmas correctas, advertencias de obsolescencia y listas de miembros para esa versión.

Herramientas

Herramienta

Propósito

Ejemplo

search_unity_api

Buscar APIs por palabra clave

"Tilemap SetTile", "async load scene"

get_method_signature

Firmas exactas con todas las sobrecargas

UnityEngine.Physics.Raycast

get_namespace

Resolver directivas using

"SceneManager" -> using UnityEngine.SceneManagement;

get_class_reference

Tarjeta de referencia completa de clase

"InputAction" -> todos los métodos/campos/propiedades

get_deprecation_warnings

Verificar si una API está obsoleta

"WWW" -> Usar UnityWebRequest en su lugar

Cobertura

Todos los módulos de UnityEngine y UnityEditor, más paquetes analizados desde código fuente C#: Input System, Addressables, uGUI (incl. TextMeshPro en Unity 6), AI Navigation y Netcode. ~42,500 registros por base de datos de Unity 6, ~500 advertencias de obsolescencia cada una.

Lista completa de versiones: página de versión db-v1. La CI regenera esa tabla en cada compilación. Los nuevos parches de Unity se detectan y compilan automáticamente cada lunes.

No cubre activos de terceros (DOTween, VContainer, Newtonsoft.Json). Para esos, confía en el código fuente del proyecto.

Puntos de referencia

Medidos, no prometidos: 25 preguntas de investigación en 3 entornos de prueba, respondidas por 3 configuraciones de agente, cada respuesta evaluada contra la verdad fundamental verificada en la fuente de antemano. El conjunto completo de pruebas está en docs/benchmark/ y se vuelve a ejecutar con un solo comando.

Configuración

Correcto

Parcial

Incorrecto

APIs alucinadas

MCP + Lectura dirigida

24/25

1

0

0

Experto (Grep+Lectura)

20/25

3

2

1

Ingenuo (Lecturas completas)

19/25

3

3

1

La única alucinación reproducida es instructiva. Al pedirle que enumerara las sobrecargas de SceneManager.LoadSceneAsync, ambos agentes no MCP inventaron sobrecargas de un solo parámetro LoadSceneAsync(string) y LoadSceneAsync(int) que no existen. El código escrito con ellas no compila. El agente MCP devolvió las cuatro sobrecargas reales exactas.

¿Por qué corrección y no ahorro de tokens? Las herramientas de agente son buenas para la búsqueda de código ahora. Claude Code ha incluido una herramienta Grep desde el principio, y los modelos actuales buscan primero y luego leen un rango de líneas estrecho, por lo que el uso bruto de tokens fue comparable en todas las configuraciones en nuestras ejecuciones. Pero las sobrecargas exactas, los espacios de nombres y las obsolescencias no están en tus archivos de proyecto en absoluto. Un agente sin MCP solo puede inferirlos a partir de ejemplos de uso, y cuando infiere mal, pagas con una compilación rota.

  • 3 entornos de prueba: un proyecto de juego real de Unity 6 (11 preguntas), búsquedas puras de API de Unity (8) y código fuente del paquete Unity Input System con archivos de 2,700 a 4,600 líneas (6)

  • 3 configuraciones, mismo modelo y límite de turnos: herramientas MCP + Grep/Lectura, solo Grep/Lectura, solo Lectura

  • Verdad fundamental verificada leyendo la fuente antes de cualquier ejecución; respuestas evaluadas por una sesión de modelo separada contra esa verdad fundamental; uso de tokens tomado de los campos de uso de API

  • Ejecútalo tú mismo: python docs/benchmark/run.py --project <ruta-del-proyecto-unity> (resultados de julio de 2026; el comportamiento del agente cambia, así que vuelve a ejecutar antes de citar)

Fragmento CLAUDE.md

Añade esto al archivo CLAUDE.md de tu proyecto (o archivo de instrucciones equivalente). Este paso es importante. Sin él, la IA tiene las herramientas pero no sabrá cuándo usarlas.

## Unity API Lookup (unity-api MCP)

Use the `unity-api` MCP tools to verify Unity API usage instead of guessing. **Do not hallucinate signatures.**

| When | Tool | Example |
|------|------|---------|
| Unsure about a method's parameters or return type | `get_method_signature` | `get_method_signature("UnityEngine.Tilemaps.Tilemap.SetTile")` |
| Need the `using` directive for a type | `get_namespace` | `get_namespace("SceneManager")` |
| Want to see all members on a class | `get_class_reference` | `get_class_reference("InputAction")` |
| Searching for an API by keyword | `search_unity_api` | `search_unity_api("async load scene")` |
| Checking if an API is deprecated | `get_deprecation_warnings` | `get_deprecation_warnings("FindObjectOfType")` |

**Rules:**
- Before writing a Unity API call you haven't used in this conversation, verify the signature with `get_method_signature`
- Before adding a `using` directive, verify with `get_namespace` if unsure
- Covers: all UnityEngine/UnityEditor modules, Input System, Addressables, uGUI/TextMeshPro, AI Navigation, Netcode
- Does NOT cover: DOTween, VContainer, Newtonsoft.Json (third-party)

Detalles de configuración

En lugar de establecer UNITY_VERSION, puedes apuntar a tu proyecto de Unity. El servidor lee ProjectSettings/ProjectVersion.txt automáticamente:

{
  "mcpServers": {
    "unity-api": {
      "command": "uvx",
      "args": ["unity-api-mcp"],
      "env": {
        "UNITY_PROJECT_PATH": "/path/to/your/unity-project"
      }
    }
  }
}

Usando pip install:

pip install unity-api-mcp
{
  "mcpServers": {
    "unity-api": {
      "command": "unity-api-mcp",
      "args": [],
      "env": {
        "UNITY_VERSION": "6000.3"
      }
    }
  }
}

Variable

Propósito

Ejemplo

UNITY_VERSION

Versión de Unity a servir

6000.3, 6000.3.8f1, 6, 2023, 2022

UNITY_PROJECT_PATH

Detectar versión automáticamente desde el proyecto

F:/Unity Projects/mi-proyecto

UNITY_INSTALL_PATH

Sobrescribir ruta de instalación de Unity (solo para ingest)

D:/Unity/6000.3.8f1

Si deseas compilar una base de datos desde tu propia instalación de Unity en lugar de descargarla:

# Install with ingest dependencies
pip install unity-api-mcp[ingest]

# Windows
python -m unity_api_mcp.ingest --unity-version 6000.3 --unity-install "D:/Unity/6000.3.8f1" --project "F:/Unity Projects/MyProject"

# macOS
python -m unity_api_mcp.ingest --unity-version 6000.3 --unity-install "/Applications/Unity/Hub/Editor/6000.3.20f1" --project "/path/to/UnityProject"

# Legacy versions
python -m unity_api_mcp.ingest --unity-version 2022 --unity-install "D:/Unity/2022.3.62f1"

Las bases de datos se escriben en ~/.unity-api-mcp/unity_docs_{version}.db de forma predeterminada.

Si un agente de IA está configurando esto por ti:

Añade unity-api-mcp a mi configuración de MCP usando uvx con UNITY_VERSION establecido para que coincida con mi proyecto, añade el fragmento de CLAUDE.md del README y verifica con get_namespace("SceneManager").

unity-api-mcp/
├── src/unity_api_mcp/
│   ├── server.py          # MCP server (5 tools)
│   ├── db.py              # SQLite + FTS5 database layer
│   ├── version.py         # Version detection + DB download
│   ├── xml_parser.py      # Parse Unity XML IntelliSense files
│   ├── cs_doc_parser.py   # Parse C# doc comments from package source
│   ├── unity_paths.py     # Locate Unity install + package dirs
│   └── ingest.py          # CLI ingestion pipeline
└── pyproject.toml

Las bases de datos se almacenan en ~/.unity-api-mcp/ (descargadas en la primera ejecución).

Solución de problemas

Problema

Solución

"No se pudo descargar la base de datos de Unity X"

Verifica la conexión a Internet. O compila localmente: python -m unity_api_mcp.ingest --unity-version 2022

Se está sirviendo la versión de API incorrecta

Establece UNITY_VERSION explícitamente. Verifica stderr: unity-api-mcp: sirviendo documentación de API de Unity <versión>

El servidor no se inicia

Verifica python --version (necesita 3.10+). Verifica la ruta: which unity-api-mcp o where unity-api-mcp

Los paquetes de terceros no devuelven resultados

DOTween, VContainer, Newtonsoft.Json no están indexados (son de terceros, no paquetes de Unity)


Ver también

unreal-api-mcp: mismo concepto para Unreal Engine (C++), con bases de datos compiladas automáticamente cada semana por versión de UE.

Contacto

¿Necesitas un servidor MCP personalizado para tu motor o framework? Construyo herramientas MCP que reducen el desperdicio de tokens y previenen alucinaciones para el desarrollo de juegos asistido por IA. Si deseas algo similar para el stack de tu equipo, contáctame.

fuatcankoseoglu@gmail.com

Licencia

MIT

A
license - permissive license
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
3wRelease cycle
8Releases (12mo)
Commit activity
Issues opened vs closed

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Servers

  • F
    license
    -
    quality
    D
    maintenance
    An intelligent MCP server that enables AI agents to crawl, index, and semantically search official framework documentation using local RAG. It prevents hallucinations by providing precise, up-to-date documentation excerpts directly into the AI's context window.
    1
  • A
    license
    -
    quality
    A
    maintenance
    This MCP server integrates AI assistants with Unity Editor, allowing them to create scenes, generate scripts, simulate input, and automate workflows using 91 built-in tools.
    214
    MIT
  • A
    license
    -
    quality
    B
    maintenance
    An MCP server that provides tools to fetch live, version-accurate documentation, changelogs, examples, and method signatures for npm and PyPI packages, preventing AI coding agents from hallucinating stale APIs.
    16
    ISC

View all related MCP servers

Related MCP Connectors

  • Augments MCP Server - A comprehensive framework documentation provider for Claude Code

  • An MCP server that gives your AI access to the source code and docs of all public github repos

  • Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.

View all MCP Connectors

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/Codeturion/unity-api-mcp'

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