代码分析 MCP 服务器
模型上下文协议 (MCP) 服务器,使 AI 模型能够通过自然语言对话理解和分析代码库。
✨ 亮点
自然代码探索:询问有关代码库的高级问题
"What are all the different payment providers integrated in the system?"
深度代码理解:提取有关数据模型和系统架构的见解
"How does the user authentication flow work from frontend to database?"
动态分析:跟踪数据流并了解系统关系
"Show me all the places where we calculate transaction fees"
Related MCP server: Notion MCP Server
限制
此工具是Aider等更复杂的代码分析工具/副驾驶的一个更简单的替代方案。虽然它缺乏 Aider 等工具的高级代码分析功能和稳健性,但如果您已经订阅了 Claude Pro,它为代码库探索提供了一个轻量级的解决方案。主要优点如下:
请注意,由于其代码分析方法更简单,与更专业的工具相比,它可能会犯更多错误或提供不太详细的见解。
🚀 快速入门
安装服务器:
git clone https://github.com/saiprashanths/code-analysis-mcp.git
cd code-analysis-mcp
安装Claude 桌面应用。有关使用 Claude 桌面应用设置 MCP 服务器的更多说明,请参阅文档
在Claude Desktop的配置文件中配置服务器:
{
"mcpServers": {
"code-analysis": {
"command": "uv",
"args": [
"--directory",
"/PATH/TO/YOUR/REPO",
"run",
"code_analysis.py"
]
}
}
}
重新启动 Claude Desktop 并开始分析您的代码!
确保工具正确设置
💡 使用示例
您可以按照以下方式使用该工具来理解复杂的代码库:
首先点击下面显示的analyze_code_repository提示符。这将引导您完成初始化代码库并开始使用。
You: How does the transaction processing work in this system?
Claude: Let me analyze the data flow for transactions.
Looking at the codebase, I can see that transaction processing happens through several key components:
1. Raw transaction data is captured in the `TransactionEvent` model with fields for:
- Payment status
- Amount
- Fee calculations
- Processing timestamps
2. This data is then processed through the PaymentSummary model, which:
- Validates payment provider responses
- Calculates processing fees
- Records transaction status
Would you like me to explain any part of this in more detail?
You: What are the key database tables involved?
Claude: The main tables in the transaction processing pipeline are:
1. transaction_events: Stores raw payment events
2. payment_summary: Processed transaction records
3. payment_providers: Provider configuration
4. merchant_accounts: Account-specific settings
Let me know if you'd like to see the schema for any of these tables!
🔧 可用工具
初始化存储库
初始化代码存储库以供分析:
initialize_repository("/path/to/repo")
# Output: Successfully initialized code repository at: /path/to/repo
获取仓库信息
检索有关已初始化存储库的信息:
get_repo_info()
# Output:
# Code Repository Information:
# Path: /path/to/repo
# Exists: True
# Is Directory: True
# Found .gitignore file
获取仓库结构
检查存储库文件结构:
get_repo_structure(depth=2)
# Output:
# 📁 src/
# 📁 api/
# 📄 routes.py
# 📄 models.py
# 📁 utils/
# 📄 helpers.py
# 📄 main.py
读取文件
阅读并分析具体文件:
read_file("src/api/models.py")
# Output:
# File: src/api/models.py
# Language: python
# Size: 2.3 KB
#
# [File contents...]
⚙️ 技术细节
默认扫描深度:3级
最大文件大小:1MB
每个文件的最大行数:1000
忽略 .gitignore 中列出的路径
仅限本地文件系统访问
验证文件路径以防止目录遍历
📝 许可证
该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅LICENSE文件。