shareMCP
开发文档
开发文档
shareMCP

最大的MCP服务器和客户端集合,轻松搜索和发现

资源

  • 文档
  • 指南
  • API

社区

  • 博客
  • github

关于

  • 关于我们
  • 隐私政策
  • 服务条款

© 2025 shareMCP. 保留所有权利。

    mcp-codesavant

    twolven/mcp-codesavant
    ttwolven
    更新于 7/23/2025
    首页mcp-codesavant

    MCP-CodeSavant: 为Claude Desktop提供强大的代码操作功能

    仓库概览

    • 仓库名称: mcp-codesavant
    • 仓库作者: twolven (Todd Wolven)
    • 仓库URL: 点击访问mcp-codesavant GitHub仓库
    • 描述: Code execution and line-editing for Claude Desktop using MCP

    项目简述

    MCP-CodeSavant是一个工作进行中的(Model Context Protocol, MCP)服务器项目,为Claude Desktop提供代码操作、执行和版本控制的能力。它不仅能让AI助手读取、编写及执行代码,还能维护代码变更历史,确保代码的完整性与安全性。

    项目特色

    • 代码读写与行操作: 提供针对代码文件的精细化行操作,方便开发者高效编辑代码。
    • 多语言代码执行: 支持Python与Node.js的代码执行,满足多语言开发需求。
    • 受控环境中的Shell命令执行: 可在安全的沙盒环境中执行Shell命令,确保系统安全。
    • 代码变更追踪与管理: 整合版本控制工具,简化变更管理流程。
    • 代码内搜索: 支持在代码文件内进行快速搜索,提高搜索效率。
    • 代码版本回退: 可以还原至历史版本,避免代码更改失误。

    安装指南

    克隆仓库

    你可以通过以下命令克隆代码库:

    git clone https://github.com/twolven/mcp-codesavant.git
    cd mcp-codesavant
    

    安装依赖

    确认进入仓库目录后,运行以下命令安装必须的依赖:

    pip install -r requirements.txt
    

    配置服务器

    根据以下配置指令,将服务器配置添加到你的Claude Desktop的config.json文件中:
    {
      "mcpServers": {
        "codesavant": {
          "command": "python",
          "args": ["path/to/codesavant.py"]
        }
      }
    }
    

    目录结构

    本项目将创建和管理以下目录结构以组织项目文件:

    workspaces/
    ├── project1/
    │   ├── .code_history.json
    │   └── [代码文件]
    ├── project2/
    │   ├── .code_history.json
    │   └── [代码文件]
    └── ...
    

    工具参考

    详细使用说明

    1. read_code_file

    读取代码文件的内容,可选地搜索特定部分。

    {
        "project": "string",     // 项目名称
        "path": "string",        // 文件相对项目工作空间的路径
        "search": "string"       // (可选) 要在文件中搜索的文本/模式
    }
    

    返回示例:

    {
        "success": true,
        "timestamp": 1234567890,
        "data": {
            "content": "string",      // 文件内容
            "start_line": number,     // (仅在使用搜索时) 找到部分的起始行
            "end_line": number       // (仅在使用搜索时) 找到部分的结束行
        }
    }
    

    2. write_code_file

    对代码文件中的特定行进行写入或更新。

    {
        "project": "string",     // 项目名称
        "path": "string",        // 文件相对工作空间的路径
        "content": "string",     // 要写入的内容(仅限于更改的行)
        "start_line": number,    // 更改的起始行号
        "end_line": number      // (可选) 更改的结束行号
    }
    

    返回示例:

    {
        "success": true,
        "timestamp": 1234567890,
        "data": {
            "diff": {
                "changes": [           // 所做更改的列表
                    [string, number, number, number, number]  // (类型, 旧开始, 旧结束, 新开始, 新结束)
                ],
                "timestamp": number    // 更改的时间戳
            }
        }
    }
    

    3. get_code_history

    获取代码文件的变更历史。

    {
        "path": "string"        // 文件相对工作空间的路径
    }
    

    返回示例:

    {
        "success": true,
        "timestamp": 1234567890,
        "data": {
            "history": [
                {
                    "changes": [       // 所做更改的列表
                        [string, number, number, number, number]
                    ],
                    "timestamp": number
                }
            ]
        }
    }
    

    4. execute_code_command

    执行与代码相关的Shell命令。

    {
        "command": "string",     // 要执行的Shell命令
        "timeout": number       // (可选) 命令超时时间,单位秒 (默认: 30)
    }
    

    返回示例:

    {
        "success": true,
        "timestamp": 1234567890,
        "data": {
            "state": "success|error|timeout|cancelled",
            "output": "string",        // 命令输出
            "error": "string",         // 错误信息(如果有)
            "runtime": number,         // 执行时间,单位秒
            "exit_code": number       // 命令退出码
        }
    }
    

    5. execute_code

    执行指定语言的代码。

    {
        "code": "string",        // 要执行的代码
        "language": "string",    // 编程语言 ("python"或者"node")
        "timeout": number       // (可选) 执行超时时间,单位秒 (默认: 30)
    }
    

    返回示例:

    {
        "success": true,
        "timestamp": 1234567890,
        "data": {
            "state": "success|error|timeout|cancelled",
            "output": "string",        // 代码执行输出
            "error": "string",         // 错误信息(如果有)
            "runtime": number,         // 执行时间,单位秒
            "exit_code": number       // 执行退出码
        }
    }
    

    6. revert_to_version

    将代码文件还原到特定版本。

    {
        "path": "string",        // 文件相对工作空间的路径
        "timestamp": number     // 要还原到的版本时间戳
    }
    

    返回示例:

    {
        "success": true,
        "timestamp": 1234567890,
        "data": {
            "diff": {
                "changes": [           // 所做更改的列表
                    [string, number, number, number, number]
                ],
                "timestamp": number    // 还原的时间戳
            }
        }
    }
    

    7. read_code_file_lines

    读取代码文件中的特定行。

    {
        "project": "string",     // 项目名称
        "path": "string",        // 文件相对项目工作空间的路径
        "start_line": number,    // 要读取的起始行号
        "end_line": number      // (可选) 要读取的结束行号
    }
    

    返回示例:

    {
        "success": true,
        "timestamp": 1234567890,
        "data": {
            "content": "string"        // 指定行的内容
        }
    }
    

    错误处理

    服务器将提供详细的错误响应,格式如下:

    {
        "success": false,
        "timestamp": 1234567890,
        "data": null,
        "error": "错误信息"
    }
    

    可能的错误类型包括:

    • CodeFileError: 文件操作错误
    • CodeValidationError: 代码验证错误
    • CodeExecutionError: 代码执行错误

    语言支持

    当前支持以下语言进行代码执行:

    • Python (使用系统Python解释器)
    • Node.js (使用node命令)

    每种语言执行时都会在工作空间目录下创建一个临时文件,并使用相应的解释器执行。

    贡献指南

    如果你对本项目感兴趣并希望做出贡献,请遵循以下步骤:

    1. Fork 仓库
    2. 创建你的功能分支
    3. 提交你的代码更改
    4. 推送到分支
    5. 创建一个新的Pull Request

    协议

    本项目依据MIT协议授权 - 详情请参阅LICENSE文件。

    作者信息

    Todd Wolven - Github档案

    致谢

    • 本项目建立在Anthropic的Model Context Protocol (MCP)之上
    • 为Anthropic的Claude设计开发

    潜在应用场景与价值

    MCP-CodeSavant在科技和商业领域都具备颇多潜力。其能够高效地帮助开发者进行代码管理和自动化操作,特别适用于需要频繁进行代码迭代和调试的项目。同时,结合AI助手增强了自动化和智能化的编程体验,进一步推动了AI在软件开发中的应用。它亦能在教育领域中,以实时代码运行为技术教学贡献力量,为学生提供自主学习和实践的平台。

    关于 mcp-codesavant
    CodeSavant是一个MCP服务器,为Claude Desktop提供代码操控和执行功能,支持多语言代码执行及版本管理。

    部署安装命令:

    { "mcpServers": { "twolven-mcp-codesavant": { "env": {}, "args": [ "path/to/codesavant.py" ], "command": "python" } } }

    服务统计

    649查看次数
    264使用人数
    88质量评分
    有状态服务
    安装难度: 复杂
    部署环境: 本地
    服务特性
    MCP
    代码执行
    版本控制

    相关MCP

    查看更多

    smallcloud-mcp-server

    SmallCloud MCP 服务器展示,使用Anthropic的Model Context Protocol SDK,为Claude Desktop及其他MCP主机提供服务。

    查看详情