AI代码智能分析服务器

Axon.MCP.Server是一个将代码库转化为智能知识库的AI开发工具,通过模型上下文协议(MCP)为Cursor IDE、Google AntiGravity等AI开发环境提供深度代码分析和语义理解功能。

  • by ali-kamali
  • Python
  • 本地部署
  • 166 星标
  • 更新于
在 GitHub 查看 ali-kamali/Axon.MCP.Server

使用说明

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 无身份验证

🎉 你准备好了!

下一步:

  1. 📊 查看React仪表板并添加您的第一个存储库
  2. 🔍 尝试语义搜索:“查找所有身份验证控制器”
  3. 🤖 使用MCP服务器连接AI助手
  4. 📈 在Grafana仪表板中监控性能

💡 专业提示: 看看 开发指南 用于本地开发设置和测试。


🎯 用例

🚀 主要:AI IDE集成(光标、反重力、VS代码)

Axon MCP Server的主要目的是为AI驱动的IDE提供深度代码智能:

光标IDE

  1. 上下文代码完成:AI理解你的整个代码库结构
  2. 智能聊天:询问有关架构、依赖关系和实现细节的问题
  3. 语义代码搜索:根据代码的功能查找代码,而不仅仅是它的名称
  4. 重构协助:AI知道整个代码库中的所有用法

谷歌反重力

  1. Vibe编码智能对代码模式和架构有深入的理解
  2. 跨存储库上下文:无缝地处理多个项目
  3. 智能代码生成:基于您实际代码库模式的AI建议
  4. 实时文档:复杂代码段的即时解释

其他启用MCP的工具

  • 克劳德桌面版:询问有关代码库的自然语言问题
  • 带MCP的ChatGPT:深度代码分析和架构见解
  • 自定义MCP客户端:构建自己的AI驱动开发工具

📊 对于开发团队

  1. 入职:新开发人员可以问“身份验证是如何工作的?”并得到全面的答案
  2. 代码审查:人工智能辅助审查,充分考虑依赖关系和影响
  3. 文档:自动生成复杂模块的解释
  4. 影响分析:“如果我更改此API会中断什么?”带有完整的依赖关系跟踪

🔍 面向软件架构师

  1. 架构可视化:自动生成的服务依赖关系图
  2. 设计模式检测:识别代码库中的模式和反模式
  3. 技术债务分析:查找复杂、紧密耦合的代码段
  4. 迁移规划:在主要重构之前了解所有依赖关系

📚 文档

🏗 建筑

📖 指南

🔌 API和工具

⚙️ 参考


🔧 发展

# 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

🌟 是什么让这个特别?

  1. 混合智能:句法(树型)+语义(Roslyn)分析
  2. AI优先设计:专门为AI助手提供代码上下文而构建
  3. 生产级:真实身份验证、监控、分布式处理、缓存
  4. 多源:支持GitLab和Azure DevOps
  5. 深度C#支持:通过Roslyn进行编译器等级分析
  6. 语义搜索:矢量嵌入支持“查找相似代码”查询
  7. 建筑意识:检测服务、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.入门

  1. 分叉存储库
  2. 创建要素分支(git checkout -b feature/amazing-feature)
  3. 提交您的更改(git commit -m 'Add amazing feature')
  4. 推到分支(git push origin feature/amazing-feature)
  5. 打开拉取请求

3.准则

  • 📘 开发指南 -设置、编码标准和最佳实践
  • ✅ 代码质量:我们使用Black、mypy和pylint来保证代码质量
  • 🧪 测试:对所有新代码保持>80%的测试覆盖率
  • 🔄 拉取请求:遵循我们的公关模板,确保CI通过

📞 支持与社区

需要帮助或想讨论功能?

  • 🐛 错误报告: GitHub问题
  • 📖 文档:浏览 docs/ 目录
  • 💬 社区:加入我们 #axon-mcp-server (内部Slack)
  • ❓ 问题:在GitHub上打开讨论或问题

建于❤️ Axon DevOps团队

赋予开发人员AI驱动的代码智能