返回 MCP 目录
public公开dns本地运行

mcp-server-text-editor

Claude文本编辑器MCP服务器实现

article

README

🚀 Claude 文本编辑器 MCP 服务器

Claude 文本编辑器 MCP 服务器是一个开源项目,它实现了 Model Context Protocol (MCP) 服务器,模仿了 Claude 的内置文本编辑器工具。该项目提供了与 Claude 内置文本编辑器工具相同的接口,允许用户通过标准 API 查看、编辑和创建文本文件。

npm 版本 CI 状态 测试覆盖率

🚀 快速开始

Claude 文本编辑器 MCP 服务器为开发者提供了便捷的文本文件操作方式。通过标准 API,你可以轻松查看、编辑和创建文本文件。以下是快速开始的步骤:

安装

# 从 npm 安装
npm install mcp-server-text-editor

初始化配置

在项目中引入并初始化文本编辑器服务器:

import { TextEditorServer } from 'mcp-server-text-editor';

// 创建一个文本编辑器服务器实例
const textEditor = new TextEditorServer({
  port: 3000, // 可选,默认端口为 3000
  logger: console // 可选,默认使用控制台日志
});

使用示例

// 查看帮助信息
textEditor.help();

// 显示版本信息
textEditor.version();

// 打开文件进行编辑
textEditor.open('path/to/file.txt', (content) => {
  // 在此处编辑内容
});

// 创建新文件
textEditor.create('newFile.txt', () => {
  console.log('文件已创建');
});

✨ 主要特性

  • 与 Claude 文本编辑器相同的 API:实现了与 Claude 的内置文本编辑器工具完全相同的接口,方便开发者无缝对接。
  • MCP 服务器实现:遵循 AI 工具集成的标准 Model Context Protocol 协议,确保系统的规范性和兼容性。
  • 文件操作丰富
    • 查看文件内容,可选指定行范围,满足不同的查看需求。
    • 创建新文件,快速生成所需文本文件。
    • 替换现有文件中的文本,高效修改文件内容。
    • 在特定行插入文本,灵活编辑文件。
    • 撤销上一次编辑,避免误操作带来的损失。

📦 安装指南

# 从 npm 安装
npm install mcp-server-text-editor

💻 使用示例

基础用法

import { TextEditorServer } from 'mcp-server-text-editor';

// 创建一个文本编辑器服务器实例
const textEditor = new TextEditorServer({
  port: 3000, // 可选,默认端口为 3000
  logger: console // 可选,默认使用控制台日志
});

// 查看帮助信息
textEditor.help();

// 显示版本信息
textEditor.version();

// 打开文件进行编辑
textEditor.open('path/to/file.txt', (content) => {
  // 在此处编辑内容
});

// 创建新文件
textEditor.create('newFile.txt', () => {
  console.log('文件已创建');
});

高级用法

const config = {
  port: 3001,
  logger: {
    log: console.log,
    error: console.error
  },
  middleware: [
    // 自定义中间件
    (req, res, next) => {
      console.log('请求来自:', req.ip);
      next();
    }
  ]
};

const textEditor = new TextEditorServer(config);

📚 详细文档

支持的 Claude 文本编辑器版本

此包实现了与 Claude 的内置文本编辑器工具 相同的功能,支持以下版本:

  • text_editor_20241022(Claude 3.5 Sonnet)
  • text_editor_20250124(Claude 3.7 Sonnet)

但使用工具名称 'textEditor' 来避免与 Claude 的内置工具发生命名冲突。

🔧 技术细节

开发

安装依赖

npm install

启动测试服务器

npm run dev

测试

此项目使用 Vitest 进行测试。

  • 运行所有测试
npm test
  • 带覆盖率报告的测试
npm test:coverage

测试覆盖率报告将生成在 coverage 目录中。

📄 许可证

本项目采用 MIT 许可证。

🤝 贡献

欢迎贡献!请随时提交 Pull Request。

  1. 叉分仓库
  2. 创建功能分支(git checkout -b feature/amazing-feature
  3. 提交更改(git commit -m 'Add some amazing feature'
  4. 推送到分支(git push origin feature/amazing-feature
  5. 打开 Pull Request
help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端