zig mcp
用于Zig的MCP服务器,将AI编码助手连接到 ZLS 通过语言服务器协议。
使用 克劳德代码、Cursor、Windsurf和任何兼容MCP的客户端。
AI assistant zig-mcp ZLS
|
zig build / test / check需求
安装
Claude Code插件(推荐)
直接从Claude Code界面安装——无需手动构建:
# 1. Add the marketplace
/plugin marketplace add nzrsky/zig-mcp
# 2. Install the plugin
/plugin install zig-mcp@zig或者作为码头的一条班轮:
claude plugin marketplace add nzrsky/zig-mcp && claude plugin install zig-mcp@zig首次使用时,二进制文件会自动构建。只要确保 zig 和 zls 在你的路径。
手动构建
git clone https://github.com/nzrsky/zig-mcp.git
cd zig-mcp
zig build -Doptimize=ReleaseFast二进制位于 zig-out/bin/zig-mcp.
设置(仅限手动安装)
如果你是通过插件系统安装的,跳过这一节——一切都是自动配置的。
克劳德代码
# add globally
claude mcp add zig-mcp -- /absolute/path/to/zig-mcp --workspace /path/to/your/zig/project
# add for current project only
claude mcp add --scope project zig-mcp -- /absolute/path/to/zig-mcp --workspace /path/to/your/zig/project或编辑 ~/.claude/mcp_servers.json:
{
"mcpServers": {
"zig-mcp": {
"command": "/absolute/path/to/zig-mcp",
"args": ["--workspace", "/path/to/your/zig/project"]
}
}
}如果你忽略了 --workspace,zigmcp使用当前工作目录。光标
增添 .cursor/mcp.json 在您的项目中:
{
"mcpServers": {
"zig-mcp": {
"command": "/absolute/path/to/zig-mcp",
"args": ["--workspace", "/path/to/your/zig/project"]
}
}
}帆板运动
增添 ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"zig-mcp": {
"command": "/absolute/path/to/zig-mcp",
"args": ["--workspace", "/path/to/your/zig/project"]
}
}
}选项
--workspace, -w
Project root directory (default: cwd)
--zls-path
Path to ZLS binary (default: auto-detect from PATH)
--help, -h Show help
--version Show version工具
代码智能(通过ZLS)
| 工具 | 它做什么 |
|---|---|
zig_hover | 键入符号的信息和文档 |
zig_definition | 转到定义 |
zig_references | 查找所有参考文献 |
zig_completion | 竣工建议 |
zig_diagnostics | 文件的错误和警告 |
zig_format | 格式化文件 |
zig_rename | 在整个工作区重命名符号 |
zig_document_symbols | 列出文件中的所有符号 |
zig_workspace_symbols | 在整个项目中搜索符号 |
zig_code_action | 一系列的快速修复和重构 |
zig_signature_help | 光标处的函数签名 |
构建和运行
| 工具 | 它做什么 |
|---|---|
zig_build | 快跑 zig build 带有可选参数 |
zig_test | 运行测试(整个项目或单个文件,带可选过滤器) |
zig_check | 快跑 zig ast-check 在文件上 |
zig_version | 显示Zig和ZLS版本 |
zig_manage | 通过以下方式管理Zig版本 zvm |
运作原理
zig-mcp将ZLS作为子进程生成,并使用LSP协议(Content-Length框架)通过stdin/stdout与之通信。另一方面,它向AI助手讲MCP(换行JSON-RPC)。
三个线程:
- 主要的 --读取MCP请求、分派工具调用、写入响应
- 读者 --从ZLS读取LSP响应,按请求ID进行关联
- 标准错误 --将ZLS stderr转发到服务器日志
如果ZLS崩溃,zig-mcp会自动重新启动它并重新打开所有跟踪的文档。
首次访问时,文件在ZLS中缓慢打开,无需手动管理文档状态。
发展
# build
zig build
# run tests (~75 unit tests)
zig build test
# run manually
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"capabilities":{}}}' | \
zig-out/bin/zig-mcp --workspace . 2>/dev/null许可证
麻省理工学院
