使用说明
Axon。MCP。服务器
AI IDE的模型上下文协议(MCP)服务器——光标、反重力和克劳德
使用Cursor IDE、Google AntiGravity和启用MCP的助手将您的代码库转换为人工智能驱动开发的智能知识库
📋 目录
🎯 问题
现代代码库是复杂的迷宫——数千个文件、复杂的依赖关系和不断发展的架构。 像ChatGPT和Claude这样的人工智能助手非常出色。..但他们正在盲目飞行。 如果不深入了解代码库的结构、关系和模式,他们只能看到树,而不能看到森林。
💡 解决方案
Axon。MCP。服务器 使用 模型上下文协议(MCP)。可以把它看作是让你的人工智能助手对你的代码进行X射线视觉——不仅理解语法,还理解语义、架构和关系。
Axon为何脱颖而出
- 🧠 语义理解:超越grep理解什么代码 手段,而不仅仅是它所说的
- 🔗 关系映射:自动构建调用图、继承树和依赖关系网络
- 🤖 AI原生集成:专为ChatGPT、Claude、Cursor IDE和其他启用MCP的工具构建
- 📊 多语言掌握:C#(Roslyn)、Python、JavaScript、TypeScript的深度分析
- 🔍 矢量搜索:使用语义嵌入按含义查找代码
- 🏗️ 建筑智能:自动检测服务、API、实体框架映射、设计模式
- ⚡ 生产就绪性能:<500ms p95延迟,轻松处理10000+个文件
- 🔐 企业安全:JWT身份验证、RBAC、审计日志记录、速率限制——不是玩具项目
� 在行动中看到它
🤖 AI IDE集成-主要用例
Axon MCP Server与领先的AI驱动的IDE无缝集成,以增强您的开发工作流程
谷歌反重力-Vibe程序员的最佳AI IDE
Axon MCP为Google AntiGravity提供深度代码上下文,以实现智能代码辅助
Cursor IDE-AI第一代码编辑器
基于Axon在Cursor中的语义理解的实时代码智能
🏛️ 管理仪表盘
代码分析和同步的实时监控
🛠️ 架构可视化
自动生成的服务依赖关系图
🏗️ 架构概述
10服务微体系结构
┌─────────────────────────────────────────────────────────────┐
│ Client Layer: AI Assistants, IDEs, React UI, REST Clients │
└─────────────────────────────────────────────────────────────┘
│
┌───────────────┼───────────────┐
│ │ │
┌───────────▼────┐ ┌──────▼──────┐ ┌────▼──────┐
│ MCP Server │ │ REST API │ │ React UI │
│ :8001 │ │ :8080 │ │ :80 │
└───────┬────────┘ └──────┬──────┘ └───────────┘
│ │
│ ┌────────┼────────┐
│ │ │ │
│ ┌────▼───┐ ┌─▼────┐ ┌─▼─────────┐
│ │ Worker │ │ Beat │ │ Enrichment│
│ │ (Sync) │ │ Sched│ │ Worker │
│ └────┬───┘ └──────┘ └─────┬─────┘
│ │ │
┌───▼─────────▼─────────────────────▼──────┐
│ Analysis: Tree-sitter + Roslyn + EF │
└───────────────────┬──────────────────────┘
│
┌───────────────┼───────────────┐
│ │ │
┌───────▼──────┐ ┌────▼────┐ ┌──────▼────────┐
│ PostgreSQL │ │ Redis │ │ Prometheus + │
│ + pgvector │ │ Cache │ │ Grafana │
└──────────────┘ └─────────┘ └───────────────┘
技术栈
后端:FastAPI、Celery、SQLAlchemy 2.0(异步)、Python 3.11+
解析:树保姆(多语言),Roslyn(C#语义分析)
数据库:PostgreSQL 15+pgvector,Redis
AI/ML:OpenAI/OpenRouter(LLM),句子转换器(嵌入)
前端:React+TypeScript,Vite
基础设施:Docker Compose、普罗米修斯、Grafana
🔌 面向人工智能助理的MCP工具
服务器暴露 12个强大的工具 通过模型上下文协议向AI助手发送:
| 工具 | 描述 | 用例 |
|---|---|---|
search |
语义+全文代码搜索 | “查找所有身份验证控制器” |
get_call_graph |
函数调用关系 | “谁调用UserService.CreateUser?” |
get_inheritance_hierarchy |
类继承树 | “显示所有BaseController实现” |
get_api_endpoints |
列出REST API路由 | “哪些端点修改用户表?” |
get_ef_entities |
实体框架映射 | “显示订单的数据库架构” |
get_module_summary |
人工智能生成的代码摘要 | “解释PaymentService的功能” |
explore_service |
导航服务架构 | “显示API服务结构” |
find_implementations |
接口实现 | “查找所有IRepository实现” |
get_system_architecture_map |
生成架构图 | “可视化系统依赖关系” |
get_symbol_details |
详细符号信息 | “显示UserController登录签名” |
get_file_symbols |
列出文件中的符号 | “AuthService.cs中有什么?” |
get_repository_structure |
项目/解决方案组织 | “显示.NET解决方案结构” |
✨ 主要特点
🔬 1.混合Python/C#分析引擎
- 树保姆:Python、JavaScript、TypeScript和C的闪电般快速的语法解析#
- Roslyn子流程:C#编译器级语义分析(类型解析、跨文件引用、元数据)
- EF岩心分析仪:自动提取实体框架实体、表映射和关系
🗂️ 2.智能代码索引
- 🔄 自动从GitLab/Azure DevOps中发现存储库
- 🏷️ 提取具有丰富元数据(文档字符串、参数、返回类型)的符号(类、函数、变量)
- 📞 构建调用图、继承层次结构和导入依赖关系图
- 🏗️ 通过自动分类检测服务、API、worker和库
- 🧮 生成由pgvector支持的语义搜索的向量嵌入
🤖 3.人工智能驱动的丰富
- 📝 LLM为符号和模块生成摘要(使用OpenRouter/OpenAI)
- ⚡ 使用8个工作线程的Celery流水线进行并行处理,速度极快
- 💾 智能缓存可避免重新生成并降低API成本
📊 4.生产级可观察性
- 📈 预先配置的Prometheus指标(API延迟、同步状态、搜索性能、缓存命中率)
- 📉 用于实时监控的精美Grafana仪表板
- 📄 结构化JSON日志记录
structlog便于解析 - 📡 通过Redis Pub/Sub实时同步进度,以实现响应式UI更新
🔐 5.企业安全
- 🔑 JWT身份验证+API密钥,用于灵活的身份验证策略
- 👥 基于角色的访问控制(管理员,只读),用于细粒度权限
- 🍪 具有CSRF保护的仅限HTTP的Cookie
- ⏱️ 速率限制和全面的审计日志记录
📊 数据模型亮点
该系统维护着一个丰富的关系模型:
- 仓库:源代码管理仓库(GitLab/Azure DevOps)
- 文件:包含内容哈希的源代码文件
- 符号:具有AI丰富功能的函数、类、变量
- 关系:继承、实现、调用、引用、导入
- 服务:检测到的API、workers、库
- Ef实体:实体框架→ 数据库表映射
- 嵌入:用于语义搜索的pgvector嵌入
- 块:RAG的代码块(函数/类级别)
表格总数:14个具有优化索引、级联删除和唯一约束
🚀 快速开始
起床跑步 5分钟 使用Docker Compose。
先决条件
- 🐳 已安装Docker和Docker Compose
- 🐍 Python 3.11+(用于本地开发)
- 🔑 GitLab或Azure DevOps访问令牌
步骤1:克隆和配置
# Clone the repository
git clone https://github.com/ali-kamali/Axon.MCP.Server.git
cd axon.mcp.server
# Copy environment template
cp .env.example .env
编辑 .env 使用您的凭据:
# Source control (choose one)
GITLAB_TOKEN=glpat-xxxxxxxxxxxxxxxxxxxx
# OR
AZUREDEVOPS_PASSWORD=your-azure-devops-pat
# Security (generate strong keys)
ADMIN_API_KEY=$(python -c "import secrets; print(secrets.token_urlsafe(32))")
ADMIN_PASSWORD=your-secure-password
# Optional: AI enrichment (for LLM-generated code summaries)
OPENROUTER_API_KEY=sk-or-v1-xxxxxxxxxxxxxxxx
步骤2:启动服务
# Start all services (PostgreSQL, Redis, API, Workers, UI, Monitoring)
make docker-up
# Run database migrations
make migrate
# Verify health
curl http://localhost:8080/api/v1/health
# ✅ Expected: {"status":"ok"}
步骤3:访问您的平台
| 🎯 服务 | 🌐 URL | 🔐 证书 |
|---|---|---|
| React仪表板 | http://localhost:80 | 登录方式 ADMIN_PASSWORD |
| REST API文档 | http://localhost:8080/api/docs | X-API-Key: ADMIN_API_KEY |
| MCP 服务器 | http://localhost:8001 |
对于AI助手(请参见 MCP工具) |
| 格拉法纳 | http://localhost:3000 | admin / admin |
| 普罗米修斯 | http://localhost:9090 | 无身份验证 |
🎉 你准备好了!
下一步:
- 📊 查看React仪表板并添加您的第一个存储库
- 🔍 尝试语义搜索:“查找所有身份验证控制器”
- 🤖 使用MCP服务器连接AI助手
- 📈 在Grafana仪表板中监控性能
💡 专业提示: 看看 开发指南 用于本地开发设置和测试。
🎯 用例
🚀 主要:AI IDE集成(光标、反重力、VS代码)
Axon MCP Server的主要目的是为AI驱动的IDE提供深度代码智能:
光标IDE
- 上下文代码完成:AI理解你的整个代码库结构
- 智能聊天:询问有关架构、依赖关系和实现细节的问题
- 语义代码搜索:根据代码的功能查找代码,而不仅仅是它的名称
- 重构协助:AI知道整个代码库中的所有用法
谷歌反重力
- Vibe编码智能对代码模式和架构有深入的理解
- 跨存储库上下文:无缝地处理多个项目
- 智能代码生成:基于您实际代码库模式的AI建议
- 实时文档:复杂代码段的即时解释
其他启用MCP的工具
- 克劳德桌面版:询问有关代码库的自然语言问题
- 带MCP的ChatGPT:深度代码分析和架构见解
- 自定义MCP客户端:构建自己的AI驱动开发工具
📊 对于开发团队
- 入职:新开发人员可以问“身份验证是如何工作的?”并得到全面的答案
- 代码审查:人工智能辅助审查,充分考虑依赖关系和影响
- 文档:自动生成复杂模块的解释
- 影响分析:“如果我更改此API会中断什么?”带有完整的依赖关系跟踪
🔍 面向软件架构师
- 架构可视化:自动生成的服务依赖关系图
- 设计模式检测:识别代码库中的模式和反模式
- 技术债务分析:查找复杂、紧密耦合的代码段
- 迁移规划:在主要重构之前了解所有依赖关系
📚 文档
🏗 建筑
📖 指南
🔌 API和工具
- REST API参考 -API端点和使用
- MCP工具参考 -用于AI助手的MCP工具
⚙️ 参考
🔧 发展
# Install dependencies
make dev-install
# Run tests
make test
# Start API (dev mode with hot reload)
make api-dev
# Start MCP server
make mcp-dev
# Start UI
make ui-dev
# Lint and format
make lint
make format
🌟 是什么让这个特别?
- 混合智能:句法(树型)+语义(Roslyn)分析
- AI优先设计:专门为AI助手提供代码上下文而构建
- 生产级:真实身份验证、监控、分布式处理、缓存
- 多源:支持GitLab和Azure DevOps
- 深度C#支持:通过Roslyn进行编译器等级分析
- 语义搜索:矢量嵌入支持“查找相似代码”查询
- 建筑意识:检测服务、API、实体,而不仅仅是函数
🗺️ 路线图
这个项目是 积极维护 并不断发展。以下是我们即将看到的:
✅ 已完成(v3.2-当前)
- [x] API身份验证:用于混合身份验证方案的JWT令牌+API密钥
- [x] 混合验证:使用cookie的UI登录+编程API密钥访问
- [x] 内存优化:用于高效处理大型数据集的键集分页
- [x] 向量搜索:基于pgvector嵌入的语义代码搜索
- [x] 多语言支持:Python、JavaScript、TypeScript、C#(通过Roslyn)
🚧 正在进行中(v3.2→ v3.3)
- [ ] Roslyn流程经理重构:改善稳定性和资源管理
- [ ] 管道模式重构器:更模块化和可测试的处理架构
🎯 下一版本(v3.3-2026年第一季度)
- [ ] RAG管道:询问有关代码库的自然语言问题(“身份验证是如何工作的?”)
- [ ] 架构可视化:从代码结构自动生成Mermaid/PlantUML图
- [ ] 影响分析工具:在更改之前,先看看会发生什么(“什么取决于UserService?”)
- [ ] 对话记忆:具有上下文保留功能的多回合人工智能对话
🚀 未来增强功能(v4.0+)
- [ ] AI测试生成:自动为代码生成单元测试
- [ ] 代码审查助理:人工智能支持的公关审查,包括安全和质量检查
- [ ] 复杂性热图:视觉复杂性分析,以确定重构候选者
- [ ] 依赖性审计:跟踪和可视化包依赖关系和漏洞
- [ ] 语言扩展:Java、Go、Rust、Ruby、PHP支持
- [ ] IDE插件:VS代码、JetBrains IDE的原生插件
- [ ] 协作功能:团队注释、共享搜索、代码库书签
💡 有一个功能想法吗? 在我们的GitLab仓库上打开一个问题!
📄 许可证和商业使用
Axon。MCP。服务器 获得双重许可,以确保可持续性和快速发展。
1.开源(AGPLv3)
该项目是自由软件 GNU Affero通用公共许可证v3.0(AGPLv3).
- 最适合: 开源项目、业余爱好者、研究人员和教育用途。
- 规则: 如果修改此代码或在可通过网络访问的服务中使用它,则 必须 在相同的AGPLv3许可证下开源您自己的项目。
- 细节: 请参阅 许可证 文件以获取完整条款。
2.商业许可证(企业)
想要将Axon集成到专有/闭源产品中吗?
- 最适合: 无法开源代码的初创公司、企业和SaaS产品。
- 优点:
- 根据您自己的专有许可发布您的产品
- 无需共享源代码
- 优先支持和直接联系维护人员
- 法律赔偿选项
- 自定义功能和集成
📩 联系我们 获得商业许可证。
为什么双重许可?
我们相信开源 和 持续性。AGPLv3确保社区从改进中受益,而商业许可证则为持续开发、全面测试和企业功能提供资金,使每个人都受益。
🤝 贡献
我们欢迎社区的贡献!无论是bug修复、新功能还是文档改进,您的帮助都会使这个项目变得更好。
1.“现实”检验:CLA
由于这个项目是双重许可的,我们必须确保我们有分配捐款的合法权利。
在合并任何PR之前,我们要求贡献者回复一条评论:
“我特此将此贡献的版权转让给项目维护者,并同意《贡献者许可协议》的条款。”
2.入门
- 分叉存储库
- 创建要素分支(
git checkout -b feature/amazing-feature) - 提交您的更改(
git commit -m 'Add amazing feature') - 推到分支(
git push origin feature/amazing-feature) - 打开拉取请求
3.准则
- 📘 开发指南 -设置、编码标准和最佳实践
- ✅ 代码质量:我们使用Black、mypy和pylint来保证代码质量
- 🧪 测试:对所有新代码保持>80%的测试覆盖率
- 🔄 拉取请求:遵循我们的公关模板,确保CI通过
📞 支持与社区
需要帮助或想讨论功能?
建于❤️ Axon DevOps团队
赋予开发人员AI驱动的代码智能
