Skip to main content
Glama
guharoyAntik

Unity Context Slicer

by guharoyAntik

Unity Context Slicer

License: MIT Python 3.9+ MCP Standard

Unity Context Slicer is a graph-based context extraction engine and Model Context Protocol (MCP) server designed for Unity projects. It parses C# scripts, Unity scenes (.unity), prefabs (.prefab), and .meta asset GUIDs into an in-memory knowledge graph. By slicing targeted $N$-hop neighborhoods around relevant components and compressing raw YAML/AST structures, it delivers 5–10Γ— token reduction, producing compact context bundles optimized for local and cloud LLMs.


πŸ”‘ Key Features

  • πŸ•ΈοΈ Graph-Based Project Indexing: Maps C# classes, methods, events, Unity GameObjects, MonoBehaviours, scenes, and prefabs into a unified directed graph.

  • πŸ’Ύ Project-Local Disk Graph Cache: Caches parsed project graphs to .unity_context_slicer/graph_cache.json for near-instant (< 15ms) startup across new chats, automatically invalidating when project files change.

  • πŸ€– Automated Agent Rule Provisioning: Automatically generates and maintains .cursorrules, .windsurfrules, .clinerules, and .gemini/rules.md in target Unity projects to ensure AI agents proactively use slicer tools in every chat session.

  • ⚑ 5–10Γ— Context Compression: Converts verbose scene YAML and code structures into dense, high-information text representations suited for restricted LLM context windows (e.g., 7B local models).

  • 🎯 Focused Slicing: Extracts $N$-hop relational neighborhoods (unity_slice) or comprehensive class context cards (unity_class) including method callers, attached scene objects, and inheritance hierarchies.

  • πŸ”„ Auto-Reloading Resident Session: Monitors file modification times (mtime) across project files to keep the graph up to date.

  • πŸ”Œ Built-in MCP Server: Exposes stdio-based MCP tools for direct integration with MCP clients such as Cursor, Windsurf, Claude Desktop, VS Code (Cline / Roo Code), and custom AI agents.

  • πŸ†” Unity GUID Resolution: Resolves .meta file GUIDs to bridge C# MonoBehaviours with serialized scene/prefab component references.


Related MCP server: Graft

πŸ› οΈ Architecture & Pipeline

graph TD
    A["Unity Project Directory"] --> B["C# Roslyn Scanner / YAML Parser"]
    A --> C["Meta GUID Resolver"]
    B --> D["Loader & In-Memory Graph"]
    C --> D
    D --> E["Session Manager"]
    E --> F["Graph Slicer"]
    F --> G["Compressor & Task Bundler"]
    G --> H["MCP Server & Prompt Bundles"]

Pipeline Steps

  1. Parsing & Resolution: C# AST analysis via Roslyn (ScannerCore.cs) combined with Python-native Unity scene/prefab parsing (unity_parser.py) and GUID resolution (meta_resolver.py).

  2. Graph Construction: Builds a unified node/edge model in ProjectGraph indexed for bidirectional lookup.

  3. Neighborhood Slicing: SubGraph algorithms isolate relevant subgraphs based on class, method, or GameObject seeds.

  4. Dense Compression: Renders subgraphs into task-ready prompt context via compressor.py.


πŸ”Œ MCP Tools Provided

Tool Name

Description

unity_search

Search for project graph nodes by name substring and optional node type (class, method, scene, prefab, etc.).

unity_class

Retrieve structured class context (methods, callers, attached GameObjects/scenes, inheritance).

unity_slice

Extract an $N$-hop neighborhood graph surrounding a target seed node.

unity_bundle

Generate a full LLM coding prompt context bundle combining task requirements, graph context, and constraints.

unity_stats

View graph node and edge count statistics.

unity_reload

Force-reload the project graph from disk.


1. Cursor

Navigate to Cursor Settings $\rightarrow$ Features $\rightarrow$ MCP Servers and click + Add New MCP Server:

  • Name: unity-context-slicer

  • Type: command

  • Command: python -m unity_context_slicer.mcp_server --project-dir "${workspaceFolder}"

2. Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "unity-context-slicer": {
      "command": "python",
      "args": [
        "-m",
        "unity_context_slicer.mcp_server",
        "--project-dir",
        "C:/Path/To/Your/UnityProject"
      ]
    }
  }
}

3. Windsurf (Codeium)

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "unity-context-slicer": {
      "command": "python",
      "args": [
        "-m",
        "unity_context_slicer.mcp_server",
        "--project-dir",
        "${workspaceFolder}"
      ]
    }
  }
}

4. VS Code Extensions (Cline / Roo Code / Continue.dev)

Add to your extension's MCP server configuration JSON:

{
  "mcpServers": {
    "unity-context-slicer": {
      "command": "python",
      "args": [
        "-m",
        "unity_context_slicer.mcp_server",
        "--project-dir",
        "${workspaceFolder}"
      ]
    }
  }
}

To help AI coding agents use Unity Context Slicer effectively, add this instruction to your project's rule file:

When answering questions or writing C#/Unity code:
1. Use `unity_search` to discover relevant classes, methods, or scene GameObjects.
2. Use `unity_class` to inspect MonoBehaviour callers, attached scene objects, and class inheritance.
3. Use `unity_bundle` before initiating large refactors to receive a compressed graph context bundle.

πŸ“ Repository Structure


πŸš€ Installation & Quick Start

Installation via Pip / Editable Install

pip install -e .

Running the MCP Server

unity-context-slicer --project-dir "path/to/UnityProject"

Testing with MCP Inspector

npx -y @modelcontextprotocol/inspector unity-context-slicer --project-dir "path/to/UnityProject"

πŸ“œ License

This project is licensed under the MIT License.

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Local-first codebase context engine that parses code into a ranked dependency graph and serves it to AI tools via MCP for deep structural understanding.
    5
    9 npm
    1
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Universal MCP server that analyzes any codebase and provides structured context to AI assistants. Dynamic, accurate, and token-efficient.
    18
    7 npm
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Serves structured code context via MCP, enabling AI agents to understand codebases with dependency graphs and significantly reduce token usage.
    13 npm
    MIT