# steipete
## 基本信息
- Slug: `steipete-claude-code-mcp`
- Source: modelscope
- Publisher: @steipete/claude-code-mcp
- Categories: code-execution / file-systems / developer-tools
- Hosted: No
- License: MIT License
- Source URL: https://www.modelscope.cn/mcp/servers/@steipete/claude-code-mcp
## 简介
暂无描述。
## MCP Server 详情

# Claude Code MCP 服务器

<img src="assets/claude_code_mcp_logo.png" alt="Claude Code MCP 徽标">

[![npm 包](https://img.shields.io/npm/v/@steipete/claude-code-mcp)](https://www.npmjs.com/package/@steipete/claude-code-mcp)
[![查看变更日志](https://img.shields.io/badge/探索变更日志-亮绿色)](/CHANGELOG.md)

这是一个 MCP（模型上下文协议）服务器，允许以一次性模式运行 Claude Code，并自动绕过权限。

你是否注意到 Cursor 在处理复杂的多步骤编辑或操作时有时会遇到困难？这个服务器通过其强大的统一 `claude_code` 工具，旨在使 Claude 成为你的编码任务中更直接和有能力的代理。

<img src="assets/screenshot.png" width="300" alt="屏幕截图">

## 概述

此 MCP 服务器提供了一个工具，可以被 LLMs 用来与 Claude Code 交互。当与 Claude Desktop 或其他 MCP 客户端集成时，它允许 LLMs：

- 使用 `--dangerously-skip-permissions` 绕过所有权限运行 Claude Code
- 执行任何提示的 Claude Code 而不会受到权限中断
- 直接访问文件编辑功能
- 默认启用特定工具

## 优点

- Claude/Windsurf 经常在编辑文件时遇到困难。Claude Code 更好更快。
- 可以将多个命令排队而不是直接执行。这节省了上下文空间，因此更多重要信息可以保留更长时间，减少压缩次数。
- 文件操作、git 或其他操作不需要昂贵的模型。如果你注册了 Antropic Max，Claude Code 是非常经济的。你可以使用 Gemini 或 o3 的 Max 模式，并通过将任务卸载到更便宜的模型上来节省成本。
- Claude 具有更广泛的系统访问权限，可以做 Cursor/Windsurf 不能做（或认为不能做）的事情，所以每当它们卡住时，只需告诉它们“使用 Claude Code”，通常就能解决问题。
- 代理中的代理规则。

<img src="assets/agents_in_agents_meme.jpg" alt="代理中的代理梗图">

## 前提条件

- Node.js v20 或更高版本（使用 fnm 或 nvm 安装）
- 本地安装了 Claude CLI（运行并调用 /doctor），并且接受 `-dangerously-skip-permissions`。

## 配置

### 环境变量

- `CLAUDE_CLI_NAME`：覆盖 Claude CLI 二进制文件名或提供绝对路径（默认值：`claude`）。这允许你使用自定义的 Claude CLI 二进制文件。这对于以下情况很有用：
  - 使用自定义 Claude CLI 封装
  - 测试模拟二进制文件
  - 并行运行多个 Claude CLI 版本
  
  支持的格式：
  - 简单名称：`CLAUDE_CLI_NAME=claude-custom` 或 `CLAUDE_CLI_NAME=claude-v2`
  - 绝对路径：`CLAUDE_CLI_NAME=/path/to/custom/claude`
  
  不允许相对路径（例如，`./claude` 或 `../claude`），否则会抛出错误。
  
  当设置为简单名称时，服务器将在以下位置查找指定的二进制文件：
  1. 系统 PATH（而不是默认的 `claude` 命令）
  
  注意：本地用户安装路径（`~/.claude/local/claude`）仍将被检查，但仅用于默认的 `claude` 二进制文件。

- `MCP_CLAUDE_DEBUG`：启用调试日志（设置为 `true` 以输出详细信息）

## 安装与使用

推荐使用 `npx` 来安装和使用此服务器。

json
    "claude-code-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@steipete/claude-code-mcp@latest"
      ]
    },


要使用自定义的 Claude CLI 二进制文件名，可以指定环境变量：

json
    "claude-code-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@steipete/claude-code-mcp@latest"
      ],
      "env": {
        "CLAUDE_CLI_NAME": "claude-custom"
      }
    },


## 重要的一次性设置：接受权限

**在 MCP 服务器能够成功使用 `claude_code` 工具之前，你必须先手动运行一次带有 `--dangerously-skip-permissions` 标志的 Claude CLI，登录并接受条款。**

这是 Claude CLI 的一次性要求。

bash
npm install -g @anthropic-ai/claude-code

bash
claude --dangerously-skip-permissions按照提示接受。完成此步骤后，MCP 服务器将能够非交互地使用该标志。

macOS 可能在工具首次运行时请求各种文件夹权限，导致首次运行失败。后续运行将会正常工作。

## 连接到您的 MCP 客户端

在设置好服务器之后，您需要配置您的 MCP 客户端（如 Cursor 或其他使用 `mcp.json` 或 `mcp_config.json` 的客户端）。

### MCP 配置文件

配置通常在一个 JSON 文件中完成。根据您的客户端不同，文件名和位置可能会有所不同。

#### Cursor

Cursor 使用 `mcp.json`。
- **macOS:** `~/.cursor/mcp.json`
- **Windows:** `%APPDATA%\Cursor\mcp.json`
- **Linux:** `~/.config/cursor/mcp.json`

#### Windsurf

Windsurf 用户使用 `mcp_config.json`
- **macOS:** `~/.codeium/windsurf/mcp_config.json`
- **Windows:** `%APPDATA%\Codeium\windsurf\mcp_config.json`
- **Linux:** `~/.config/.codeium/windsurf/mcp_config.json`

（注意：在某些混合设置中，如果也安装了 Cursor，这些客户端可能会回退到使用 Cursor 的 `~/.cursor/mcp.json` 路径。如果使用 Codeium 扩展，请优先考虑 Codeium 特定的路径。）

如果该文件不存在，请创建它。添加或更新 `claude_code` 的配置：

## 提供的工具

此服务器提供一个主要工具：

### `claude_code`

直接使用带有 `--dangerously-skip-permissions` 参数的 Claude Code CLI 执行提示。

**参数:**
- `prompt` (字符串, 必需): 发送到 Claude Code 的提示。
- `options` (对象, 可选):
  - `tools` (字符串数组, 可选): 启用特定的 Claude 工具（例如，`Bash`, `Read`, `Write`）。默认情况下启用常用工具。

**示例 MCP 请求:**
json
{
  "toolName": "claude_code:claude_code",
  "arguments": {
    "prompt": "将 main.py 中的函数 foo 重构为异步函数。"
  }
}


### 示例

以下是一些服务器实际操作的视觉示例：

<img src="assets/claude_tool_git_example.png" alt="Claude Tool Git Example" width="50%">

<img src="assets/additional_claude_screenshot.png" alt="Additional Claude Screenshot" width="50%">

<img src="assets/cursor-screenshot.png" alt="Cursor Screenshot" width="50%">

### 修复 ESLint 设置

这是一个使用 Claude Code MCP 工具交互式修复 ESLint 设置的示例，通过删除旧配置文件并创建新文件来实现：

<img src="assets/eslint_example.png" alt="ESLint file operations example" width="50%">

### 列出文件示例

这是 Claude Code 工具列出目录中文件的示例：

<img src="assets/file_list_example.png" alt="File listing example" width="50%">

## 主要使用场景

通过其统一的 `claude_code` 工具，此服务器解锁了一系列强大的功能，使您的 AI 直接访问 Claude Code CLI。以下是一些您可以实现的例子：

1.  **代码生成、分析与重构:**
    -   `"生成一个解析 CSV 数据并输出 JSON 的 Python 脚本。"`
    -   `"分析 my_script.py 潜在的错误并提出改进建议。"`

2.  **文件系统操作（创建、读取、编辑、管理）:**
    -   **创建文件:** `"您的工作文件夹是 /Users/steipete/my_project

在 app/settings 目录下创建一个名为 config.yml 的新文件，内容如下：
port: 8080
database: main_db"`
    -   **编辑文件:** `"您的工作文件夹是 /Users/steipete/my_project

编辑 public/css/style.css 文件：在末尾添加一个新的 CSS 规则，使所有 h2 元素的颜色为 navy。"`
    -   **移动/复制/删除:** `"您的工作文件夹是 /Users/steipete/my_project

将 drafts 文件夹中的 report.docx 文件移动到 final_reports 文件夹，并将其重命名为 Q1_Report_Final.docx。"`

3.  **版本控制（Git）:**
    -   `"您的工作文件夹是 /Users/steipete/my_project

1. 将 src/main.java 文件暂存。
2. 提交更改，消息为 feat: 实现用户认证。
3. 将提交推送到 origin 的 develop 分支。"`### 运行终端命令
-   `"你的工作目录是 /Users/steipete/my_project/frontend

运行命令 npm run build 。"`
-   `"在我的默认浏览器中打开 URL https://developer.mozilla.org 。"`

### 网络搜索与总结
-   `"搜索网络上的 服务器端渲染的好处 并提供一个简洁的总结。"`

### 复杂的多步骤工作流
-   自动化版本更新、更新变更日志并标记发布：`"你的工作目录是 /Users/steipete/my_project

按照以下步骤操作：1. 将 package.json 中的版本更新为 2.5.0。2. 在 CHANGELOG.md 中为版本 2.5.0 添加一个新的部分，标题为  ### Added ，并列出 新功能 X 。3. 暂存 package.json 和 CHANGELOG.md。4. 使用消息 release: version 2.5.0 提交更改。5. 推送提交。6. 创建并推送 git 标签 v2.5.0。"`

    <img src="assets/multistep_example.png" alt="复杂多步骤操作示例" width="50%">

### 修复带有语法错误的文件
-   `"你的工作目录是 /path/to/project

src/utils/parser.js 文件在最近的一次复杂编辑后出现了语法错误，导致其结构被破坏。请分析该文件，识别语法错误，并修正文件使其再次成为有效的 JavaScript，同时尽可能保留原始逻辑。"`

### 与 GitHub 交互（例如，创建拉取请求）
-   `"你的工作目录是 /Users/steipete/my_project

在仓库 owner/repo 中从 feature-branch 分支向 main 分支创建一个 GitHub 拉取请求。标题：feat: 实现新的登录流程。正文：此 PR 为用户添加了一个新的改进版登录体验。"`

### 与 GitHub 交互（例如，检查 PR 的 CI 状态）
-   `"你的工作目录是 /Users/steipete/my_project

检查 GitHub 仓库 owner/repo 中 Pull Request #42 的 C…

