面向 Midnight 区块链生态的 MCP Server,为 AI 助手提供 Compact 合约语义搜索、静态分析、实时编译与 ZK 电路生成、版本迁移等能力。
Midnight MCP Server 是一个社区维护的 MCP Server,由 Olanetsoft(Idris Olubisi)及贡献者开发,旨在为 AI 助手(Claude、Cursor、Windsurf、VS Code Copilot 等)提供对 Midnight 区块链生态的深度访问能力。
核心能力#
语义搜索#
- 对 Compact 合约、TypeScript 代码、文档进行语义检索
- 后端使用 Cloudflare Workers + Vectorize(OpenAI Embeddings)
- 索引覆盖 102+ 个 Midnight 生态仓库(来自 midnightntwrk 组织与社区合作伙伴)
- 支持实时文档获取(fetch-docs)
代码分析与编译#
- 静态分析:
extract-contract-structure检测 15+ 类常见错误(deprecated_ledger_block、invalid_void_type、invalid_pragma_format 等) - 实时编译:通过托管编译服务对 Compact 代码进行校验与 ZK 电路生成
- 快速模式(skipZk=true):约 1-2 秒完成语法校验
- 完整模式(fullCompile=true):约 10-30 秒完成 ZK 电路生成
- 自动回退:编译服务不可用时退回静态分析
AI 代码生成(需客户端支持采样)#
generate-contract:生成合约review-contract:审查合约document-contract:文档化合约
版本管理与迁移#
get-version-info、check-breaking-changes、get-migration-guideget-file-at-version、compare-syntax、get-latest-syntax
复合工具(节省 50-70% tokens)#
upgrade-check、get-repo-context
嵌入式资源与提示词#
- 9 个离线可用资源:Compact 语法指南(v0.16-0.18)、SDK API 参考、OpenZeppelin 合约、代币经济学概览、钱包集成、常见错误与解决方案等
- 5 个提示词模板:
create-contract、review-contract、explain-concept、compare-approaches、debug-contract
安装部署#
前提条件:Node.js 20+(LTS 推荐)
一键安装(Claude Desktop 配置示例):
{
"mcpServers": {
"midnight": {
"command": "npx",
"args": ["-y", "midnight-mcp@latest"]
}
}
}
Cursor(.cursor/mcp.json)、Windsurf(~/.codeium/windsurf/mcp_config.json)、VS Code Copilot(.vscode/mcp.json)配置同上。
无需 API Key。如需更高 GitHub API 限流,可在
env中添加"GITHUB_TOKEN": "ghp_..."。
本地开发:
git clone https://github.com/Olanetsoft/midnight-mcp.git && cd midnight-mcp
npm install && npm run build && npm test
CLI 选项与 HTTP 端点#
npx midnight-mcp --help
--stdio(默认,用于 Claude Desktop)--http(HTTP + SSE)--port <number>(默认 3000)--json(默认 YAML,可提升 LLM 令牌效率约 20-30%)--github-token(覆盖环境变量GITHUB_TOKEN)
HTTP 端点:/health(健康检查)、/mcp(Streamable HTTP)、/sse(Server-Sent Events)
本地模式(隐私/离线)#
{
"mcpServers": {
"midnight": {
"command": "npx",
"args": ["-y", "midnight-mcp@latest"],
"env": {
"MIDNIGHT_LOCAL": "true",
"OPENAI_API_KEY": "sk-...",
"CHROMA_URL": "http://localhost:8000"
}
}
}
}
需本地运行 ChromaDB:docker run -d -p 8000:8000 chromadb/chroma
架构概览#
- 前端(MCP Server):TypeScript + tsup 构建,实现 MCP 协议(工具 28+、资源 9、提示词 5、日志、补全、进度、采样),支持 stdio / HTTP + SSE 传输
- 后端 API:Cloudflare Workers + Vectorize(向量数据库),OpenAI Embeddings 语义搜索
- 编译服务:托管编译器(从 onrender 迁移至 railway),支持 Compact 编译与 ZK 电路生成
- 管理面板:
/dashboard?p=PASSWORD展示查询量、相关性分数、质量分布与搜索趋势 - 开发工具链:Changesets(版本管理)、Vitest(测试)、GitHub Actions(CI/CD)
项目信息#
- 主要语言:TypeScript (99.7%), JavaScript (0.3%)
- 发布形式:NPM 包(
midnight-mcp@latest) - 最新版本:v0.2.16
- 许可证:MIT