代码助手MCP服务器添加福利群:解决AI开发者的「MCP实战痛点」一个用Rust构建的CLI工具,用于辅助代码相关任务。
确保您的系统上已安装Rust。然后:
# 克隆仓库
git clone https://github.com/stippi/code-assistant
# 进入项目目录
cd code-assistant
# 构建项目
cargo build --release
# 二进制文件将位于target/release/code-assistant

code-assistant实现了Anthropic的模型上下文协议。
这意味着它可以作为插件添加到MCP客户端应用程序中,例如Claude Desktop。
创建一个文件~/.config/code-assistant/projects.json。
该文件在MCP服务器模式下添加可用项目(list_projects和文件操作工具)。
其结构如下:
{
"code-assistant": {
"path": "/Users/<用户名>/workspace/code-assistant"
},
"asteroids": {
"path": "/Users/<用户名>/workspace/asteroids"
},
"zed": {
"path": "Users/<用户名>/workspace/zed"
}
}

注意事项:
将打开一个Finder窗口,高亮显示文件claude_desktop_config.json。
在您喜欢的文本编辑器中打开该文件。
示例如下:
{
"mcpServers": {
"code-assistant": {
"command": "/Users/<用户名>/workspace/code-assistant/target/release/code-assistant",
"args": [
"server"
],
"env": {
"PERPLEXITY_API_KEY": "pplx-...", // 可选,启用perplexity_ask工具
"SHELL": "/bin/zsh" // 您的登录shell,在此配置"env"时需要
}
}
}
}

代码助手可以运行在两种模式下:
code-assistant --task <任务> [选项]
可用选项:
--path <路径>:要分析的代码目录路径(默认:当前目录)-t, --task <任务>:在代码库上执行的任务(除非使用--continue-task或--ui,否则为必需)--ui:启动GUI界面--continue-task:从之前的状态继续-v, --verbose:启用详细日志记录-p, --provider <提供商>:使用的LLM提供商 [ai-core, anthropic, open-ai, ollama, vertex, openrouter](默认:anthropic)-m, --model <模型>:使用的模型名称(默认值:anthropic="claude-3-7-sonnet-20250219", open-ai="gpt-4o", vertex="gemini-2.5-pro-exp-03-25", openrouter="anthropic/claude-3-7-sonnet", ollama=必需)--base-url <URL>:LLM提供商的API基础URL--tools-type <工具类型>:工具声明类型 [native, xml](默认:xml)native = 通过LLM提供商API的工具,xml = 自定义系统消息--num-ctx <数量>:上下文窗口大小(以token为单位,默认:8192,仅对Ollama相关)--agent-mode <模式>:使用的代理模式 [working_memory, message_history](默认:message_history)--record <路径>:将API响应记录到文件中以供测试(目前支持Anthropic和AI Core提供商)--playback <路径>:从文件中回放录制的会话--fast-playback:快速回放模式 - 在回放时忽略块计时环境变量:
ANTHROPIC_API_KEY:使用Anthropic提供商时必需OPENAI_API_KEY:使用OpenAI提供商时必需GOOGLE_API_KEY:使用Vertex提供商时必需OPENROUTER_API_KEY:使用OpenRouter提供商时必需PERPLEXITY_API_KEY:使用Perplexity搜索API工具时必需示例:
# 使用Anthropic的Claude分析当前目录中的代码
code-assistant --task "解释此代码库的用途"
# 继续之前中断的任务
code-assistant --continue-task
# 启动GUI界面
code-assistant --ui
# 记录会话以供稍后回放
code-assistant --task "优化数据库查询" --record ./recordings/db-optimization.json
# 快速回放录制的会话(无计时延迟)
code-assistant --playback ./recordings/db-optimization.json --fast-playback

作为模型上下文协议服务器运行:
code-assistant server [选项]
可用选项:
-v, --verbose:启用详细日志记录本节并不是真正的路线图,因为项目没有特定的顺序。 以下是一些可能成为下一个重点的主题。
execute_command工具运行一个带有提供的命令行的shell,目前完全没有检查。\n行尾,无尾随空格)。
这大大提高了匹配搜索块的成功率,但某些模糊匹配方式可能会进一步提高成功率。
匹配失败会引入相当多的低效,因为它们几乎总是触发LLM重新读取文件。
即使replace_in_file工具的错误输出包括完整文件并告诉LLM不要重新读取文件。欢迎贡献!请随时提交Pull Request。