Wick
MCP를 통해 노출되는 Godot 엔진용 Roslyn 강화 C# 예외 텔레메트리.
Wick이란 무엇인가요?
Godot C# 게임이 충돌하면 AI 어시스턴트는 원시 스택 트레이스만 보고 8번 이상의 대화를 통해 파일을 열어달라고 요청하게 됩니다. Wick은 해당 예외를 캡처하여 Roslyn 기반의 소스 컨텍스트(실제 메서드 본문, 호출자 체인, 최근 로그, 씬 상태)로 강화한 뒤, 한 번의 호출로 AI에게 전체 정보를 전달합니다. 열 번의 대화 대신 한 번의 대화로 진단이 가능합니다.
Wick의 차별점은 무엇인가요?
다른 Godot MCP 서버(예: 훌륭한 GoPeak)는 씬 조작과 GDScript 도구에 중점을 둡니다. Wick은 C#/.NET 개발자 경험에 중점을 둡니다:
Roslyn 강화 예외 텔레메트리 -- stderr로 캡처된 C# 예외를 호출 메서드 본문, 주변 소스 라인, 포함된 타입, 호출자 체인으로 강화합니다. 다른 Godot MCP 서버는 이 기능을 제공하지 않습니다.
프로세스 내 예외 캡처 -- 선택 사항인 Wick.Runtime NuGet 컴패니언이 stderr에서 볼 수 없는 TaskScheduler.UnobservedTaskException 및 비동기 예외를 포착합니다.
소스 컨텍스트를 포함한 빌드 진단 -- 런타임 예외와 동일한 파이프라인을 통해 Roslyn 소스 컨텍스트로 강화된 dotnet 빌드 오류를 제공합니다.
C# 분석 도구 -- Roslyn 워크스페이스를 통해 심볼 찾기, 참조 찾기, 멤버 시그니처 확인이 가능합니다.
5개 기둥 도구 그룹 시스템 -- 필요한 기능만 활성화: core, runtime, csharp, build, scene.
Related MCP server: GodotIQ
시작하기
사전 요구 사항
.NET 10 SDK (10.0.201 이상)
Godot 4.6.1+ (.NET/Mono 지원 포함)
설치
Wick은 Godot 측 브리지 애드온(/addons/wick/)과 .NET MCP 서버, 두 부분으로 구성됩니다.
Godot 브리지 — 에디터 내 Godot 에셋 라이브러리를 통해 설치하거나(권장), /addons/wick/을 프로젝트에 수동으로 복사하세요.
MCP 서버 — 복제 및 빌드:
git clone https://github.com/buildepicshit/Wick.git
cd Wick
dotnet build Wick.slnx --configuration Release -maxcpucount:1MCP 설정
AI 코딩 어시스턴트의 MCP 설정에 Wick을 추가하세요:
{
"mcpServers": {
"wick": {
"command": "dotnet",
"args": ["run", "--project", "path/to/Wick/src/Wick.Server"],
"env": {
"WICK_GROUPS": "core,runtime,csharp,build",
"WICK_GODOT_BIN": "/path/to/godot",
"WICK_PROJECT_PATH": "/path/to/your/godot-project"
}
}
}
}도구 그룹
WICK_GROUPS 환경 변수 또는 --groups CLI 플래그를 통해 도구 기둥을 활성화하세요:
기둥 | 포함 내용 | 기본값 |
core | GDScript 도구, 씬 파싱, GDScript LSP, 인트로스펙션 | 항상 켜짐 |
runtime | 예외 파이프라인, 게임 시작/중지, 로그 테일, runtime_diagnose | 선택 사항 |
csharp | Roslyn 분석, 심볼 찾기, 참조 찾기, 멤버 시그니처 | 선택 사항 |
build | dotnet build/test/clean, NuGet 관리, build_diagnose | 선택 사항 |
scene | 헤드리스 Godot 디스패치를 통한 씬 생성/수정 | 선택 사항 |
예시: WICK_GROUPS=core,runtime,csharp,build 또는 --groups=all.
선택 사항: Wick.Runtime 컴패니언
프로세스 내 예외 캡처(비동기 예외, TaskScheduler.UnobservedTaskException) 및 실시간 씬 트리 쿼리를 위해, Godot C# 프로젝트에 Wick.Runtime NuGet 컴패니언을 추가하세요:
dotnet add package Wick.Runtime게임의 진입점에 Install()과 Tick()을 모두 연결하세요. 둘 다 필수입니다:
using Wick.Runtime;
public partial class Main : Node
{
public override void _Ready() => WickRuntime.Install();
public override void _Process(double delta) => WickRuntime.Tick();
}프로세스 내 브리지 도구(
runtime_query_scene_tree등)가 계속 응답하지 않는다면Tick()을 잊으신 것입니다.Install()만으로는 예외 캡처만 가능하며, 실시간 RPC 핸들러가 작동하려면 메인 스레드 디스패처를 비우기 위한Tick()이 필요합니다. 자세한 내용은docs/getting-started.md와 패키지 README를 참조하세요.
아키텍처
Wick은 외부 프로세스로 실행되며, Godot 내부에서 실행되지 않습니다. 통신 방식:
stdio -- AI 클라이언트로의 MCP 프로토콜
TCP 6505 -- 에디터 브리지 (Godot 플러그인에서 Wick 서버로)
TCP 7777 -- 런타임 브리지 (실행 중인 게임에서 Wick 서버로)
TCP 7878 -- Wick.Runtime 컴패니언 브리지 (프로세스 내에서 Wick 서버로)
이 아키텍처를 통해 Wick 서버와 공급자 프로젝트는 .NET 10을 타겟팅할 수 있으며, 선택 사항인 프로세스 내 Wick.Runtime 컴패니언은 Godot 4.6.1의 현재 안정적인 .NET 런타임인 net8.0을 유지할 수 있습니다.
저작자 표시
Wick은 GoPeak(MIT 라이선스, (c) 2025 Solomon Elias / HaD0Yun)에서 영감을 받아 클린룸 방식으로 재구현되었습니다. 자세한 크레딧은 ATTRIBUTION.md를 참조하세요.
기여
기여를 환영합니다! PR을 제출하기 전에 CONTRIBUTING.md를 읽어주세요.
데모
저장소를 복제하고 브라우저에서 docs/demo/player.html을 열어 데모를 시청하거나, 캐스트 파일을 직접 재생하세요:
asciinema play docs/demo/wick-demo.cast라이선스
Maintenance
Appeared in Searches
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/buildepicshit/Wick'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
