neuron-explorer
Qwen3.5‑4B 전용 조향형 뉴런 탐색기, 모든 MLP 뉴런을 밀어 결과를 보관·탐색
MCP는 Strada와 Unity를 연결해 AI 어시스턴트가 클라이언트로 Unity Editor와 직접 연동하도록 합니다
A MCP acts as a bridge between Strada and Unity, allowing AI assistants like (Strada.Brain, Claude, Cursor) to interact directly with your Unity Editor via a local MCP (Model Context Protocol) Client.
개발 도구TypeScript · C#GitHub @okandemirel직접 설치운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
설치형 프로젝트는 배포 도메인 없이도 확인할 수 있습니다. 개인 저장소는 GitHub 로그인으로, 조직 저장소는 위의 저장소 확인 파일로 직접 확인해 주세요.
A MCP acts as a bridge between Strada and Unity, allowing AI assistants like (Strada.Brain, Claude, Cursor) to interact directly with your Unity Editor via a local MCP (Model Context Protocol) Client. Your LLM tools can manage assets, control scenes, edit scripts, and automate tasks within Unity.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Strada.MCP
The most comprehensive framework-aware Unity MCP server
76 tools, 10 resources, 6 prompts — with Strada.Core intelligence, RAG-powered search, and Unity Editor bridge
Strada.MCP is a Model Context Protocol (MCP) server purpose-built for Unity and Strada.Core development. It bridges AI assistants (Claude, GPT, etc.) directly into your Unity workflow.
Dual-user architecture:
• Standalone mode — Works with Claude Desktop, Cursor, Windsurf, VS Code + Continue out of the box
• Brain mode — Integrates with Strada.Brain for enhanced memory, learning, and goal executionREADME 전문 보기 ↗Strada.MCP is a Model Context Protocol (MCP) server purpose-built for Unity and Strada.Core development. It bridges AI assistants (Claude, GPT, etc.) directly into your Unity workflow.
Dual-user architecture:
Why Strada.MCP?
npm install -g strada-mcp
Or clone and build:
git clone https://github.com/okandemirel/Strada.MCP.git
cd Strada.MCP
npm install
npm run build
Claude Desktop — Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"strada-mcp": {
"command": "strada-mcp",
"env": {
"UNITY_PROJECT_PATH": "/path/to/your/unity/project"
}
}
}
}
Cursor — Add to .cursor/mcp.json:
{
"mcpServers": {
"strada-mcp": {
"command": "strada-mcp",
"env": {
"UNITY_PROJECT_PATH": "/path/to/your/unity/project"
}
}
}
}
Open Unity Package Manager > "+" > Add package from git URL:
https://github.com/okandemirel/Strada.MCP.git?path=unity-package/com.strada.mcp
Ask your AI assistant to work with your Unity project:
| Category | Count | Requires Unity Bridge |
|---|---|---|
| Strada Framework | 10 | No |
| Unity Runtime | 18 | Yes |
| Unity Scene/Prefab | 8 | Mixed |
| Unity Asset | 8 | Mixed |
| Unity Subsystem | 6 | Yes |
| Unity Config | 4 | Yes |
| Advanced | 5 | Mixed |
| File Operations | 6 | No |
| Search | 3 | No |
| Git | 6 | No |
| .NET Build | 2 | No |
| Analysis | 4 | No |
These tools are unique to Strada.MCP — no competitor has framework-aware scaffolding.
| Tool | Description |
|---|---|
strada_create_component | Generate an ECS component struct implementing IComponent with StructLayout |
strada_create_system | Generate a Strada ECS system (SystemBase, JobSystemBase, or BurstSystemBase) |
strada_create_module | Generate a Strada module with ModuleConfig, assembly definition, and folder structure |
strada_create_mediator | Generate an EntityMediator binding ECS components to a Unity View |
strada_create_service | Generate a Strada service (Service, TickableService, FixedTickableService, or OrderedService) |
strada_create_controller | Generate a Strada Controller with typed model reference and view injection |
strada_create_model | Generate a Strada Model or ReactiveModel with typed properties |
strada_analyze_project | Scan .cs files to map modules, systems, components, services, and DI usage |
strada_validate_architecture | Validate Strada.Core naming conventions, lifetime rules, and dependency rules |
strada_scaffold_feature | Generate a complete feature skeleton: module + components + systems + optional MVCS views |
| Tool | Description |
|---|---|
unity_create_gameobject | Create a new GameObject (empty, primitive, or from prefab) |
unity_find_gameobjects | Find GameObjects by name, tag, layer, or component type |
unity_modify_gameobject | Modify GameObject properties (name, active, tag, layer, static) |
unity_delete_gameobject | Delete a GameObject from the scene by instance ID |
unity_duplicate_gameobject | Duplicate a GameObject with optional new name, parent, or offset |
unity_add_component | Add a component to a GameObject by type name |
unity_remove_component | Remove a component from a GameObject by type name |
unity_get_components | List all components attached to a GameObject |
unity_set_transform | Set position, rotation, and/or scale of a GameObject transform |
unity_get_transform | Get the current transform (position, rotation, scale) of a GameObject |
unity_set_parent | Reparent a GameObject under a new parent transform |
unity_play | Control Unity play mode (play, pause, stop, or step one frame) |
unity_get_play_state | Get the current Unity editor play state |
unity_execute_menu | Execute a Unity editor menu command by path |
unity_console_log | Write a message to the Unity console (log, warning, or error) |
unity_console_clear | Clear the Unity editor console |
unity_selection_get | Get the currently selected objects in the Unity editor |
unity_selection_set | Set the editor selection to the specified instance IDs |
| Tool | Description |
|---|---|
file_read | Read file contents with line numbers, optional offset/limit |
file_write | Write content to a file, creating directories as needed |
file_edit | Replace text in a file using exact string matching |
file_delete | Delete a file |
file_rename | Rename or move a file |
list_directory | List directory contents with file/directory indicators |
glob_search | Search for files matching a glob pattern |
grep_search | Search file contents using regex with optional context lines |
code_search | RAG-powered semantic code search (requires indexing) |
| Tool | Description |
|---|---|
git_status | Show working tree status (porcelain format) |
git_diff | Show changes between working tree and index (staged/unstaged) |
git_log | Show commit history |
git_commit | Stage files and create a commit |
git_branch | List, create, delete, or switch branches |
git_stash | Stash or restore uncommitted changes |
| Tool | Description |
|---|---|
dotnet_build | Build a .NET project and parse errors/warnings |
dotnet_test | Run .NET tests and parse results summary |
| Tool | Description |
|---|---|
code_quality | Analyze C# code for Strada.Core anti-patterns and best-practice violations |
csharp_parse | Parse C# source code into a structured AST with classes, structs, methods, fields, namespaces |
dependency_graph | Analyze Unity project assembly references and namespace dependencies, detect circular dependencies |
project_health | Comprehensive project health check combining code quality, dependency analysis, and file statistics |
| Tool | Description |
|---|---|
unity_scene_create | Create a new Unity scene |
unity_scene_open | Open an existing scene in the editor |
unity_scene_save | Save the current scene |
unity_scene_info | Get scene metadata and statistics |
unity_scene_analyze | Analyze scene hierarchy from YAML (no bridge required) |
unity_prefab_create | Create a new prefab from a GameObject |
unity_prefab_instantiate | Instantiate a prefab in the current scene |
unity_prefab_analyze | Analyze prefab structure from YAML (no bridge required) |
| Tool | Description |
|---|---|
unity_asset_find | Search for assets by name, type, or label |
unity_asset_dependencies | Analyze asset dependency chains |
unity_asset_unused | Find potentially unused assets in the project |
unity_material_get | Read material properties and shader assignments |
unity_material_set | Modify material properties |
unity_shader_list | List available shaders with keywords and properties |
unity_scriptableobject_create | Create a new ScriptableObject asset |
unity_texture_info | Get texture import settings and metadata |
| Tool | Description |
|---|---|
unity_animation_play | Control animator playback |
unity_animation_list | List animation clips and parameters |
unity_physics_raycast | Perform physics raycasts in the scene |
unity_navmesh_bake | Bake or configure NavMesh settings |
unity_particles_control | Control particle system playback |
unity_lighting_bake | Bake lighting and configure light settings |
| Tool | Description |
|---|---|
unity_player_settings | Get/set player settings (company, product, platform) |
unity_quality_settings | Get/set quality levels and graphics settings |
unity_build_settings | Get/set build targets, scenes, and options |
unity_project_settings | Get/set tags, layers, physics, and input settings |
| Tool | Description |
|---|---|
batch_execute | Execute multiple tools in a single request |
script_execute | Execute C# scripts via Roslyn (opt-in, disabled by default) |
script_validate | Validate C# script syntax without execution |
csharp_reflection | Inspect types, methods, and assemblies via reflection |
unity_profiler | Access Unity profiler data and performance metrics |
C# Source -> Tree-sitter AST -> Structural Chunks -> Gemini Embeddings -> HNSW Vector Index
Real-time TCP connection to Unity Editor (port 7691):
The bridge broadcasts Unity Editor events in real-time:
scene.changed — Scene opened, closed, savedconsole.line — New console log entriescompile.started / compile.finished — Script compilationplaymode.changed — Play/pause/stop transitionsselection.changed — Selected object changes| URI | Description | Source |
|---|---|---|
strada://api-reference | Strada.Core API documentation | File-based |
strada://namespaces | Strada.Core namespace hierarchy | File-based |
strada://examples/{pattern} | Code examples (ECS, MVCS, DI) | File-based |
unity://manifest | Unity package manifest (Packages/manifest.json) | File-based |
unity://project-settings/{category} | Unity project settings by category | File-based |
unity://assemblies | Unity assembly definitions (.asmdef files) | File-based |
unity://file-stats | Unity project file statistics | File-based |
unity://scene-hierarchy | Active scene hierarchy | Bridge |
unity://console-logs | Recent console output | Bridge |
unity://play-state | Current play mode state | Bridge |
| Prompt | Description |
|---|---|
create_ecs_feature | Multi-message sequence guiding ECS feature creation (component, system, module registration) |
create_mvcs_feature | MVCS pattern scaffold guidance for Strada.Core |
analyze_architecture | Architecture review prompt for Strada.Core projects |
debug_performance | Performance debugging guidance for Unity projects |
optimize_build | Build optimization checklist for Unity projects |
setup_scene | Scene setup workflow guidance for Unity projects |
npm install -g strada-mcp
git clone https://github.com/okandemirel/Strada.MCP.git
cd Strada.MCP
npm install
npm run build
File: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
{
"mcpServers": {
"strada-mcp": {
"command": "strada-mcp",
"env": {
"UNITY_PROJECT_PATH": "/path/to/project",
"EMBEDDING_API_KEY": "your-gemini-key"
}
}
}
}
File: .cursor/mcp.json in your workspace root:
{
"mcpServers": {
"strada-mcp": {
"command": "npx",
"args": ["strada-mcp"],
"env": {
"UNITY_PROJECT_PATH": "/path/to/project"
}
}
}
}
File: ~/.windsurf/mcp.json:
{
"mcpServers": {
"strada-mcp": {
"command": "strada-mcp",
"env": {
"UNITY_PROJECT_PATH": "/path/to/project"
}
}
}
}
File: ~/.claude/settings.json or project .mcp.json:
{
"mcpServers": {
"strada-mcp": {
"command": "strada-mcp",
"env": {
"UNITY_PROJECT_PATH": "/path/to/project"
}
}
}
}
File: .continue/config.json:
{
"experimental": {
"modelContextProtocolServers": [
{
"transport": {
"type": "stdio",
"command": "strada-mcp",
"env": {
"UNITY_PROJECT_PATH": "/path/to/project"
}
}
}
]
}
}
https://github.com/okandemirel/Strada.MCP.git?path=unity-package/com.strada.mcpAfter installation:
All options are configured via environment variables:
| Variable | Description | Default |
|---|---|---|
MCP_TRANSPORT | Transport mode: stdio or http | stdio |
MCP_HTTP_PORT | Streamable HTTP port | 3100 |
MCP_HTTP_HOST | HTTP bind address | 127.0.0.1 |
UNITY_BRIDGE_PORT | TCP port for Unity Editor bridge | 7691 |
UNITY_BRIDGE_AUTO_CONNECT | Auto-connect to Unity on startup | true |
UNITY_BRIDGE_TIMEOUT | Bridge connection timeout (ms) | 5000 |
UNITY_PROJECT_PATH | Path to Unity project (auto-detect if empty) | — |
EMBEDDING_PROVIDER | Embedding provider: gemini, openai, ollama | gemini |
EMBEDDING_MODEL | Embedding model name | gemini-embedding-2-preview |
EMBEDDING_DIMENSIONS | Embedding dimensions (128-3072) | 768 |
EMBEDDING_API_KEY | API key for embedding provider | — |
RAG_AUTO_INDEX | Auto-index on startup | true |
RAG_WATCH_FILES | Watch for file changes | false |
BRAIN_URL | Strada.Brain HTTP URL (empty = disabled) | — |
BRAIN_API_KEY | Brain API key | — |
ALLOWED_PATHS | Comma-separated list of allowed root directories | — |
READ_ONLY | Global read-only mode | false |
SCRIPT_EXECUTE_ENABLED | Enable Roslyn script execution |
When connected to Strada.Brain (BRAIN_URL configured):
Without Brain, Strada.MCP operates as a fully independent MCP server.
| Layer | Protection |
|---|---|
| Input Validation | Zod schema + type checking on all tools |
| Path Guard | Directory traversal prevention, null byte rejection, symlink traversal prevention |
| Read-Only Mode | Global + per-tool write permission enforcement |
| Credential Scrub | API key/token pattern scrubbing in all output |
| Tool Allowlist | Unity bridge accepts only registered JSON-RPC commands |
| Rate Limiting | Embedding API rate limit protection |
| Localhost Only | Unity bridge binds to 127.0.0.1 only |
| Script Execution | Roslyn execution disabled by default, explicit opt-in |
For full details, see SECURITY.md.
git clone https://github.com/okandemirel/Strada.MCP.git
cd Strada.MCP
npm install
npm run build
npm test # Run all tests
npm run test:watch # Watch mode
npm run typecheck # TypeScript type checking
npm run dev # Run with tsx (auto-reload)
src/
config/ - Zod-validated configuration
security/ - Path guard, sanitizer, validator
tools/
strada/ - 10 Strada framework tools
unity/ - 18 bridge-dependent Unity tools
file/ - 6 file operation tools
search/ - 3 search tools (glob, grep, RAG)
git/ - 6 git tools
dotnet/ - 2 .NET build tools
analysis/ - 4 code analysis tools
intelligence/
parser/ - Tree-sitter C# parser
rag/ - Embedding, chunker, HNSW index
bridge/ - Unity TCP bridge client
context/ - Brain HTTP client
resources/ - 10 MCP resources
prompts/ - 6 MCP prompts
utils/ - Logger, process runner
unity-package/
com.strada.mcp/ - C# Unity Editor package (UPM)
See CONTRIBUTING.md for development setup, code standards, and PR guidelines.
MIT License. See LICENSE for details.
false |
REFLECTION_INVOKE_ENABLED | Enable C# reflection method invocation | false |
MAX_FILE_SIZE | Maximum file size (bytes) | 10485760 |
LOG_LEVEL | Log level: debug, info, warn, error | info |
LOG_FILE | Log file path (stderr if empty) | — |