Claude Text Editor

Um servidor MCP para visualizar, editar e criar arquivos de texto, baseado na ferramenta de editor de texto integrada do Claude.

Documentação

Claude Text Editor MCP Server

npm version CI Status Test Coverage

Model Context Protocol Logo

Uma implementação de código aberto da ferramenta de editor de texto integrada do Claude como um servidor Model Context Protocol (MCP). Este pacote fornece a mesma funcionalidade que a ferramenta de editor de texto integrada do Claude, permitindo visualizar, editar e criar arquivos de texto por meio de uma API padronizada.

Recursos

  • API idêntica ao editor de texto do Claude: Implementa exatamente a mesma interface da ferramenta de editor de texto integrada do Claude
  • Implementação de servidor MCP: Segue o padrão Model Context Protocol para integração de ferramentas de IA
  • Operações de arquivo:
    • Visualizar o conteúdo de arquivos com especificação opcional de intervalo de linhas
    • Criar novos arquivos
    • Substituir texto em arquivos existentes
    • Inserir texto em números de linha específicos
    • Desfazer edições anteriores

Versões suportadas do editor de texto do Claude

Este pacote implementa uma ferramenta equivalente às versões da ferramenta de editor de texto integrada do Claude:

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

Mas usando o nome da ferramenta 'text_editor' para evitar conflitos de nome com as ferramentas integradas do Claude.

Instalação

# Install from npm
npm install mcp-server-text-editor

# Or with pnpm
pnpm add mcp-server-text-editor

Uso

Iniciando o servidor

# Using npx
npx -y mcp-server-text-editor

# Or if installed globally
mcp-server-text-editor

Configurando no Claude Desktop

{
  "mcpServers": {
    "textEditor": {
      "command": "npx",
      "args": ["-y", "mcp-server-text-editor"]
    }
  }
}

Comandos da ferramenta

Visualizar

Visualize o conteúdo de um arquivo ou diretório.

{
  "command": "view",
  "path": "/path/to/file.js",
  "view_range": [1, 10] // Optional: Show lines 1-10 only
}

Criar

Crie um novo arquivo com o conteúdo especificado.

{
  "command": "create",
  "path": "/path/to/file.js",
  "file_text": "console.log('Hello, world!');"
}

Substituição de string

Substitua texto em um arquivo.

{
  "command": "str_replace",
  "path": "/path/to/file.js",
  "old_str": "console.log('Hello, world!');",
  "new_str": "console.log('Hello, Claude!');"
}

Inserir

Insira texto em uma linha específica.

{
  "command": "insert",
  "path": "/path/to/file.js",
  "insert_line": 5,
  "new_str": "// This line was inserted by Claude"
}

Desfazer edição

Reverta a última edição feita em um arquivo.

{
  "command": "undo_edit",
  "path": "/path/to/file.js"
}

Desenvolvimento

Pré-requisitos

  • Node.js 18+
  • pnpm

Configuração

# Clone the repository
git clone https://github.com/bhouston/mcp-server-text-editor.git
cd mcp-server-text-editor

# Install dependencies
pnpm install

# Build the project
pnpm build

Scripts

  • pnpm build: Compilar o projeto TypeScript
  • pnpm lint: Executar ESLint com correção automática
  • pnpm format: Formatar código com Prettier
  • pnpm clean: Remover artefatos de build
  • pnpm clean:all: Remover artefatos de build e node_modules
  • pnpm test: Executar testes
  • pnpm test:coverage: Executar testes com relatório de cobertura

Testes

Este projeto usa Vitest para testes.

Para executar os testes:

# Run all tests
pnpm test

# Run tests with coverage report
pnpm test:coverage

O relatório de cobertura de testes será gerado no diretório coverage.

Licença

MIT

Contribuindo

Contribuições são bem-vindas! Sinta-se à vontade para enviar um Pull Request.

  1. Faça um fork do repositório
  2. Crie sua branch de recurso (git checkout -b feature/amazing-feature)
  3. Faça commit das suas alterações (git commit -m 'Add some amazing feature')
  4. Envie para a branch (git push origin feature/amazing-feature)
  5. Abra um Pull Request