CodeSavant Coding Assistant

CodeSavant Coding Assistant

🚀 MCP-CodeSavant

CodeSavant 是一个正在开发中的项目,它基于 Model Context Protocol (MCP) 构建,是一个强大的服务器。该服务器提供了代码操作、执行和版本控制等功能,允许 AI 助手读取、写入和执行代码,同时还能维护代码更改的历史记录,为代码开发和管理带来了极大的便利。

🚀 快速开始

CodeSavant 是一个基于 Model Context Protocol (MCP) 的服务器,它为代码操作、执行和版本控制提供了全面的支持。以下是快速开始使用 CodeSavant 的步骤:

  1. 克隆仓库:
git clone https://github.com/twolven/mcp-codesavant.git
cd mcp-codesavant
  1. 安装所需的依赖项:
pip install -r requirements.txt
  1. 将服务器配置添加到您的 Claude 桌面 config.json 文件中:
{
"mcpServers": {
"codesavant": {
"command": "python",
"args": ["path/to/codesavant.py"]
}
}
}

✨ 主要特性

  • 支持读取和写入代码文件,并能按行进行特定操作,方便对代码进行精细处理。
  • 可在多种编程语言(Python、Node.js)中执行代码,满足不同开发需求。
  • 能在受控环境中执行 shell 命令,增强了代码执行的灵活性。
  • 具备版本控制功能,可跟踪和管理代码更改,方便回溯和恢复代码版本。
  • 支持在代码文件中搜索内容,提高查找代码的效率。
  • 可以将代码恢复到先前版本,确保代码的稳定性和可维护性。

📦 安装指南

  1. 克隆仓库:
git clone https://github.com/twolven/mcp-codesavant.git
cd mcp-codesavant
  1. 安装所需的依赖项:
pip install -r requirements.txt
  1. 将服务器配置添加到您的 Claude 桌面 config.json 文件中:
{
"mcpServers": {
"codesavant": {
"command": "python",
"args": ["path/to/codesavant.py"]
}
}
}

📚 详细文档

目录结构

服务器创建和管理以下目录结构:

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

工具参考

1. 读取代码文件

  • 功能:读取指定路径的代码文件内容。
  • 输入示例
{
"project": "myproject",
"path": "src/main.js"
}
  • 输出示例
{
"success": true,
"timestamp": 1234567890,
"data": {
"content": "console.log('Hello World!');"
}
}

2. 按行读取代码文件

  • 功能:按指定的起始和结束行读取代码文件内容。
  • 输入示例
{
"project": "myproject",
"path": "src/main.js",
"start_line": 1,
"end_line": 5
}
  • 输出示例
{
"success": true,
"timestamp": 1234567890,
"data": {
"content": "console.log('Hello World!');\n// 第二行注释"
}
}

3. 执行代码

  • 功能:在指定语言环境中执行代码。
  • 输入示例(Python)
{
"language": "python",
"code": "print('Hello World!')"
}
  • 输出示例
{
"success": true,
"timestamp": 1234567890,
"data": {
"output": "'Hello World!'\n"
}
}

4. 执行 shell 命令

  • 功能:在受控环境中执行 shell 命令。
  • 输入示例
{
"command": "ls -a"
}
  • 输出示例
{
"success": true,
"timestamp": 1234567890,
"data": {
"output": ". .. .bashrc .config ..."
}
}

5. 恢复到代码版本

  • 功能:将代码文件恢复到指定时间戳的版本。
  • 输入示例
{
"path": "src/main.js",
"timestamp": 1234567890
}
  • 输出示例
{
"success": true,
"timestamp": 1234567890,
"data": {
"diff": {
"changes": [["- console.log('Hello World!');", "+ console.log('Hi there!');"], ...],
"timestamp": 1234567890
}
}
}

错误处理

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

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

可能的错误类型包括:

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

语言支持

目前支持以下语言用于代码执行:

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

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

贡献

  1. 叉克隆仓库
  2. 创建功能分支
  3. 提交更改
  4. 推送到分支
  5. 创建新的拉取请求

📄 许可证

本项目根据 MIT License 许可,详细信息请参阅 LICENSE 文件。

作者

Todd Wolven - (https://github.com/twolven)

致谢

  • 使用 Model Context Protocol (MCP) 构建
  • 为 Anthropic 的 Claude 开发
  • 0 关注
  • 0 收藏,14 浏览
  • system 提出于 2025-09-26 23:03

相似服务问题

相关AI产品