Claude Text Editor MCP Server
bhouston/mcp-server-text-editor · 36 stars · TypeScript · MIT
MCP server An open source implementation of the Claude built-in text editor tool
Install
The repo has no one-line install. Follow its README.
Files
Claude Text Editor MCP Server
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.
Features
- Identical API to Claude's Text Editor: Implements the exact same interface as Claude's built-in text editor tool
- MCP Server Implementation: Follows the Model Context Protocol standard for AI tool integration
- File Operations:
- View file contents with optional line range specification
- Create new files
- Replace text in existing files
- Insert text at specific line numbers
- Undo previous edits
Supported Claude Text Editor Versions
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.
Installation
# Install from npm npm install mcp-server-text-editor # Or with pnpm pnpm add mcp-server-text-editor
Usage
Starting the Server
# Using npx npx -y mcp-server-text-editor # Or if installed globally mcp-server-text-editor
Configuring in Claude Desktop
{
"mcpServers": {
"textEditor": {
"command": "npx",
"args": ["-y", "mcp-server-text-editor"]
}
}
}
Tool Commands
View
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
Create a new file with the specified content.
{
"command": "create",
"path": "/path/to/file.js",
"file_text": "console.log('Hello, world!');"
}
String Replace
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
Insert text at a specific line.
{
"command": "insert",
"path": "/path/to/file.js",
"insert_line": 5,
"new_str": "// This line was inserted by Claude"
}
Undo Edit
Revert the last edit made to a file.
{
"command": "undo_edit",
"path": "/path/to/file.js"
}
Development
Prerequisites
- Node.js 18+
- pnpm
Setup
# 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: 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 report
Testing
This 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.
License
MIT
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Facts
- Kind
- MCP server
- Group
- Uncategorized
- Stars
- 36
- License
- MIT
- Language
- TypeScript
- Last push
- 2025-03-17
- Forks
- 6
- Topics
- ai-tools, claude, mcp, model-context-protocol, text-editor
- 1REAio.github.morluto/reaReverse engineer anything from your terminal or agent with one CLI and MCP server.125.3k
- 2com.browser-use/browser-usecom.browser-use/browser-useControl a real Chrome browser to complete any task: fill forms, extract data, book flights.117.7k
- 3World Monitorapp.worldmonitor/mcpLive markets, conflicts, country risk, chokepoints, energy, and China decision signals. 93 tools.88.3k
- 4Scrapling MCP Serverd4vinci/scrapling🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scraplingdev86.9k
- 5Everythingmodelcontextprotocol/serversThis MCP server attempts to exercise all the features of the MCP protocol. It is not intended to be a useful server, but rather a test server for builders of MCP clients. It implements prompts, tools, resources, sampling, and more to showcase MCP capabilities.85.8k
- 6Fetchmodelcontextprotocol/serversA Model Context Protocol server that provides web content fetching capabilities. This server enables LLMs to retrieve and process content from web pages, converting HTML to markdown for easier consumption.85.8k