关于 CodeInteliMCP - Intelligent Code Analysis Server
CodeInteliMCP 是用于跨多个代码仓库分析代码的 MCP 服务,结合语法解析、图查询和向量搜索,支持代码导航与影响分析。
主要功能
- 01多仓库索引
- 02符号与用法搜索
- 03语义代码搜索
- 04依赖与影响分析
- 05增量索引
- 06多语言解析
适用场景
- 01跨仓库查找函数引用
- 02用自然语言描述搜索代码
- 03修改符号前检查依赖
MCP 相关
该 MCP 服务向 MCP 客户端提供仓库管理、索引和代码分析工具,包括符号查找、用法搜索与语义搜索。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
CodeInteliMCP - 智能代码分析服务
一款先进的 MCP(Model Context Protocol)服务,结合 Tree-sitter 解析、图数据库和向量搜索,为多个代码仓库提供闪电般快速的代码智能分析。
🚀 功能特性
- 多仓库支持:同时管理和分析多个代码库
- 即时用法搜索:在毫秒内查找函数/类的使用位置
- 语义代码搜索:使用向量嵌入查找相似代码模式
- 依赖分析:可视化并查询代码依赖关系
- 影响分析:查看修改某项内容会导致哪些部分出错
- 自动索引:随编码智能增量更新
- 多语言支持:Python、JavaScript、TypeScript、Go、Rust 等
🏗 架构
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ Claude Code │────▶│ MCP Server │────▶│ Tree-sitter │
└─────────────────┘ └──────────────────┘ └─────────────────┘
│ │
▼ ▼
┌──────────────┐ ┌────────────────┐
│ DuckDB │ │ ChromaDB │
│ (Graph) │ │ (Vectors) │
└──────────────┘ └────────────────┘
🎯 核心功能
1. 图查询(通过 DuckDB)
- 函数调用关系
- 导入依赖
- 类继承树
- 变量用法跟踪
2. 向量搜索(通过 ChromaDB)
- 语义代码相似度
- 自然语言代码搜索
- 模式检测
- 查找重复代码
3. 实时分析(通过 Tree-sitter)
- 按需解析
- 语法验证
- 代码结构分析
- AST 操作
🚦 快速开始
自动设置(推荐)
# Clone the repository
git clone https://github.com/rahulvgmail/CodeInteliMCP.git
cd CodeInteliMCP
# Run the setup script
python setup_for_claude.py
设置脚本将:
- 安装所有依赖项
- 配置 Claude Desktop/Code
- 创建数据目录
- 设置环境变量
手动设置
# Install dependencies
pip install mcp duckdb chromadb sentence-transformers aiofiles
pip install tree-sitter tree-sitter-python tree-sitter-javascript
# Add to Claude Desktop config (~/.config/claude/claude_desktop_config.json):
{
"mcpServers": {
"code-intelligence": {
"command": "python",
"args": ["/path/to/CodeInteliMCP/code_intelligence_mcp/server_minimal.py"],
"env": {
"CODE_INTEL_PROJECT_ROOT": "/path/to/your/project"
}
}
}
}
🛠️ 可用工具
此 MCP 服务提供以下工具:
仓库管理
-
add_repository- 添加要跟踪的新仓库name(字符串,必需):仓库名称path(字符串,必需):仓库路径description(字符串,可选):仓库描述make_active(布尔值,可选):设为活动仓库
-
list_repositories- 列出所有跟踪的仓库 -
set_active_repository- 设置操作所用的活动仓库name(字符串,必需):要设为活动状态的仓库名称
-
index_repository- 为整个仓库建立索引repository_name(字符串,必需):要建立索引的仓库名称include_patterns(字符串,可选):要包含的文件模式,以逗号分隔exclude_patterns(字符串,可选):要排除的文件模式,以逗号分隔
代码分析
-
index_file- 将单个文件编入代码图file_path(字符串,必需):要建立索引的文件路径
-
find_symbol- 按名称查找符号name(字符串,必需):要搜索的符号名称file_path(字符串,可选):将搜索范围限定在特定文件中
-
find_usages- 查找符号的所有用法name(字符串,必需):要查找用法的符号名称file_path(字符串,可选):将搜索范围限定在特定文件中
-
semantic_search- 使用语义相似度搜索代码query(字符串,必需):自然语言搜索查询limit(整数,可选):结果数量上限(默认值:10)symbol_types(字符串,可选):以逗号分隔的符号类型列表,用于筛选
-
find_similar_code- 查找与指定符号相似的代码symbol_name(字符串,必需):参考符号名称file_path(字符串,可选):包含参考符号的文件
系统工具
-
test_connection- 测试服务是否正常运行 -
get_index_stats- 获取当前索引统计信息 -
get_vector_stats- 获取向量存储统计信息
📖 使用示例
完成配置后,在 Claude 中使用这些工具:
# Add a new repository
add_repository(name="my-app", path="/path/to/my-app", description="Main application")
# Index the repository
index_repository(repository_name="my-app", include_patterns="**/*.py,**/*.js")
# Search for authentication functions
semantic_search(query="authentication and login functions", limit=20)
# Find where a class is used
find_usages(name="UserService")
# Find similar implementations
find_similar_code(symbol_name="login_user")
📚 文档
- USER_GUIDE.md:完整的设置和使用指南
- ARCHITECTURE.md:技术架构详情
- IMPLEMENTATION_PLAN.md:开发路线图
📊 性能目标
- 初始索引:为 100k LOC 建立索引耗时 < 1 分钟
- 增量更新:每个文件耗时 < 1 秒
- 用法查询:< 50ms
- 语义搜索:< 200ms
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。