Claude Text Editor MCP Server について
Claude Text Editor MCP Server は、Claude の組み込みテキストエディタツールをオープンソースで再実装した MCP サーバーです。標準的なインターフェースでテキストファイルの閲覧、作成、編集を行いたい開発者向けです。API は組み込みツールと同一で、名前衝突を避けるため text_editor という名前を使用します。
主な機能
- 01行範囲を指定できるファイル内容の表示
- 02新規ファイルの作成
- 03既存ファイル内のテキスト置換
- 04指定行へのテキスト挿入
- 05直前の編集の取り消し
活用シーン
- 01Claude が MCP クライアント経由でローカルのソースファイルを読み書きする
- 02Claude Desktop で標準的な MCP サーバーとしてファイル編集を提供する
MCP 対応
MCP サーバーとして、view、create、str_replace、insert、undo_edit コマンドを備えた text_editor ツールを MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
1掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| command | enum | はい | 実行するコマンド。使用できるオプション:`view`、`create`、`str_replace`、`insert`、`undo_edit`。view | create | str_replace | insert | undo_edit |
| path | string | はい | ファイルまたはディレクトリの絶対パス。例:`/repo/file.py` または `/repo`。 |
| file_text | string | いいえ | `create` コマンドの必須パラメーター。作成するファイルの内容を指定します。 |
| insert_line | number | いいえ | `insert` コマンドの必須パラメーター。`new_str` は `path` の `insert_line` で指定した行の後に挿入されます。 |
| new_str | string | いいえ | `str_replace` コマンドのオプションパラメーター。置換後の文字列を指定します(指定しない場合、文字列は追加されません)。`insert` コマンドの必須パラメーター。挿入する文字列を指定します。 |
| old_str | string | いいえ | `str_replace` コマンドの必須パラメーター。`path` 内で置換する文字列を指定します。 |
| view_range | array | いいえ | `path` がファイルを指す場合の `view` コマンドのオプションパラメーターです。指定しない場合、ファイル全体が表示されます。指定すると、行番号の範囲内のファイルが表示されます。例:`[11, 12]` は 11 行目と 12 行目を表示します。行番号は 1 から始まります。`[start_line, -1]` を設定すると、`start_line` からファイル末尾までのすべての行が表示されます。 |
| description | string | はい | テキストエディターを使用する理由(最大 80 文字) |
詳細
Claude テキストエディター MCP サーバー
Claude 組み込みのテキストエディターツールを、Model Context Protocol(MCP)サーバーとして実装したオープンソースのプロジェクトです。このパッケージは、Claude 組み込みのテキストエディターツールと同じ機能を提供し、標準化された API を通じてテキストファイルの表示、編集、作成を行えます。
特長
- Claude のテキストエディターと同一の API:Claude 組み込みのテキストエディターツールとまったく同じインターフェースを実装しています
- MCP サーバーの実装:AI ツール統合のための Model Context Protocol 標準に準拠しています
- ファイル操作:
- 行範囲を指定してファイルの内容を表示
- 新しいファイルを作成
- 既存ファイル内のテキストを置換
- 指定した行番号にテキストを挿入
- 直前の編集を元に戻す
対応する Claude テキストエディターのバージョン
このパッケージは、Claude 組み込みのテキストエディターツールの次のバージョンと同等のツールを実装しています。
text_editor_20241022(Claude 3.5 Sonnet)text_editor_20250124(Claude 3.7 Sonnet)
ただし、Claude 組み込みツールとの名前の競合を避けるため、ツール名には「text_editor」を使用します。
インストール
# 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
Claude Desktop での設定
{
"mcpServers": {
"textEditor": {
"command": "npx",
"args": ["-y", "mcp-server-text-editor"]
}
}
}
ツールのコマンド
表示
ファイルまたはディレクトリの内容を表示します。
{
"command": "view",
"path": "/path/to/file.js",
"view_range": [1, 10] // Optional: Show lines 1-10 only
}
作成
指定した内容で新しいファイルを作成します。
{
"command": "create",
"path": "/path/to/file.js",
"file_text": "console.log('Hello, world!');"
}
文字列の置換
ファイル内のテキストを置換します。
{
"command": "str_replace",
"path": "/path/to/file.js",
"old_str": "console.log('Hello, world!');",
"new_str": "console.log('Hello, Claude!');"
}
挿入
指定した行にテキストを挿入します。
{
"command": "insert",
"path": "/path/to/file.js",
"insert_line": 5,
"new_str": "// This line was inserted by Claude"
}
編集を元に戻す
ファイルに対する最後の編集を取り消します。
{
"command": "undo_edit",
"path": "/path/to/file.js"
}
開発
前提条件
- Node.js 18+
- pnpm
セットアップ
# 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:TypeScript プロジェクトをビルドしますpnpm lint:自動修正付きで ESLint を実行しますpnpm format:Prettier でコードをフォーマットしますpnpm clean:ビルド成果物を削除しますpnpm clean:all:ビルド成果物と node_modules を削除しますpnpm test:テストを実行しますpnpm test:coverage:カバレッジレポート付きでテストを実行します
テスト
このプロジェクトでは、テストに Vitest を使用しています。
テストを実行するには、次のコマンドを実行します。
# Run all tests
pnpm test
# Run tests with coverage report
pnpm test:coverage
テストカバレッジレポートは coverage ディレクトリに生成されます。
ライセンス
MIT
コントリビューション
コントリビューションを歓迎します。お気軽にプルリクエストを送信してください。
- リポジトリをフォークします
- 機能ブランチを作成します(
git checkout -b feature/amazing-feature) - 変更をコミットします(
git commit -m 'Add some amazing feature') - ブランチにプッシュします(
git push origin feature/amazing-feature) - プルリクエストを作成します
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。