项目简介

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

基本使用方法

  1. 启动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':查找符号引用
  1. 分析代码
code-scalpel analyze app.py
  1. 安全扫描
code-scalpel scan --code "cursor.execute(user_input)"]

信息

分类

开发者工具