An open source implementation of the Claude built-in text editor tool versions: text\_editor\_20241022 (Claude 3.5 Sonnet) text\_editor\_20250124 (Claude 3.7 Sonnet)
An open-source implementation of the Claude built-in text editor tool as a Model Context Protocol (MCP) server. This package provides the same functionality as Claude's built-in text editor tool, allowing you to view, edit, and create text files through a standardized API.
This package implements an equivalent tool to the built-in Claude text editor tool versions:
text_editor_20241022
(Claude 3.5 Sonnet)text_editor_20250124
(Claude 3.7 Sonnet)But using the tool name 'text_editor' to avoid name conflicts with built-in Claude tools.
# Install from npm npm install mcp-server-text-editor # Or with pnpm pnpm add mcp-server-text-editor
# Using npx npx -y mcp-server-text-editor # Or if installed globally mcp-server-text-editor
{ "mcpServers": { "textEditor": { "command": "npx", "args": ["-y", "mcp-server-text-editor"] } } }
View the contents of a file or directory.
{ "command": "view", "path": "/path/to/file.js", "view_range": [1, 10] // Optional: Show lines 1-10 only }
Create a new file with the specified content.
{ "command": "create", "path": "/path/to/file.js", "file_text": "console.log('Hello, world!');" }
Replace text in a file.
{ "command": "str_replace", "path": "/path/to/file.js", "old_str": "console.log('Hello, world!');", "new_str": "console.log('Hello, Claude!');" }
Insert text at a specific line.
{ "command": "insert", "path": "/path/to/file.js", "insert_line": 5, "new_str": "// This line was inserted by Claude" }
Revert the last edit made to a file.
{ "command": "undo_edit", "path": "/path/to/file.js" }
# 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
pnpm build
: Build the TypeScript projectpnpm lint
: Run ESLint with auto-fixingpnpm format
: Format code with Prettierpnpm clean
: Remove build artifactspnpm clean:all
: Remove build artifacts and node_modulespnpm test
: Run testspnpm test:coverage
: Run tests with coverage reportThis project uses Vitest for testing.
To run the tests:
# Run all tests pnpm test # Run tests with coverage report pnpm test:coverage
The test coverage report will be generated in the coverage
directory.
MIT
Contributions are welcome! Please feel free to submit a Pull Request.
git checkout -b feature/amazing-feature
)git commit -m 'Add some amazing feature'
)git push origin feature/amazing-feature
)Discover shared experiences
Shared threads will appear here, showcasing real-world applications and insights from the community. Check back soon for updates!