项目简介
Code Scalpel 是一个基于 Model Context Protocol (MCP) 构建的智能代码分析服务器,专门为AI助手(如Claude、GitHub Copilot、Cursor)提供上下文服务。它采用程序依赖图(PDG)技术,能够精确提取相关代码片段而非整个文件,显著减少token消耗,让LLM能够高效处理大型代码库。
主要功能
- 手术式代码提取:仅提取目标函数及其依赖,而非整个文件
- 多语言支持:Python、TypeScript、JavaScript、Java
- 安全漏洞检测:17+种漏洞类型检测,包括SQL注入、XSS、命令注入等
- 跨文件分析:自动追踪跨模块的函数调用和变量依赖
- 符号执行引擎:使用Z3求解器探索所有执行路径
- 自动测试生成:基于符号路径生成精确的单元测试
- 缓存性能优化:200x缓存加速,提升分析效率
- 智能依赖解析:自动识别并包含所需的导入和依赖项
安装步骤
方式一:使用pip安装
pip install code-scalpel
方式二:使用uv安装(推荐)
uvx code-scalpel --help
服务器配置
VS Code / GitHub Copilot 配置
在项目根目录创建 '.vscode/mcp.json':
{ "servers": { "code-scalpel": { "type": "stdio", "command": "uvx", "args": ["code-scalpel", "mcp", "--root", "${workspaceFolder}"] } }
Claude Desktop 配置
在Claude配置文件中添加:
{ "mcpServers": { "code-scalpel": { "command": "uvx", "args": ["code-scalpel", "mcp", "--root", "项目路径"] }
HTTP服务器部署
code-scalpel mcp --http --port 8593
Docker部署
docker run -d -p 8593:8593 -v $(pwd):/project code-scalpel
基本使用方法
- 启动MCP服务器后,AI助手可以通过19种工具进行代码操作:
- 'analyze_code':解析代码结构
- 'extract_code':手术式提取函数/类
- 'security_scan':安全漏洞检测
- 'generate_unit_tests':自动生成测试用例
- 'symbolic_execute':符号执行探索路径
- 'cross_file_security_scan':检测跨模块漏洞
- 'update_symbol':安全替换代码片段
- 'simulate_refactor':验证修改的安全性
- 'get_call_graph':生成函数调用图
- 'get_symbol_references':查找符号引用
- 分析代码:
code-scalpel analyze app.py
- 安全扫描:
code-scalpel scan --code "cursor.execute(user_input)"]
信息
分类
开发者工具