textlint v14.8.0をリリースしました - MCP(Model Context Protocol)をサポート
textlint v14.8.0をリリースしました!
- リリースノート: Release v14.8.0 · textlint/textlint
今回のリリースでは、実験的な機能としてMCP(Model Context Protocol)サポートを追加しました。 MCPは、AI言語モデルが外部のツールやサービスと統一されたインターフェースを通じて連携できるプロトコルです。
MCP(Model Context Protocol)サポート
textlint v14.8.0では、新しい--mcp
フラグを追加しました。このフラグにより、textlintをMCPサーバーとして起動し、AI搭載のコードエディタ(VS Code with Copilot Chat、Cursor、Windsurf)から直接textlintを利用できるようになります。
MCPとは
Model Context Protocol(MCP)は、AI言語モデルが外部のツールやサービスと統一されたインターフェースを通じて連携するためのプロトコルです。これにより、AIアシスタントがtextlintの機能を直接利用して、文章のチェックや修正を行えるようになります。
前提条件
MCPサーバーを使用するには、次の条件を満たす必要があります。
- textlint v14.8.0以降
- MCPサポートを持つAI搭載のコードエディタ(VS Code with Copilot Chat、Cursor、Windsurf)
- 設定済みのtextlintプロジェクト - textlintにはデフォルトルールがないため、MCPサーバーを使用する前に既存のtextlint設定が必要です
基本的な使い方
まず、プロジェクトでtextlintを設定する必要があります。 textlintにはデフォルトルールがないため、MCPサーバーを使用する前にプロジェクトで使うルールを設定する必要があります。
# textlintとルールをインストール
npm install --save-dev textlint textlint-rule-preset-ja-technical-writing
npx textlint --init
を実行して、textlintの設定ファイルを作成します。これにより、基本的な設定が自動生成されます。
npx textlint --init
作成された.textlintrc.json
ファイルに必要な設定などがあれば、手動で編集します。
次の設定はtextlint --init
で生成されたものです。
{
"rules": {
"preset-ja-technical-writing": true
}
}
設定が動くかは、textlint
コマンドを実行して確認できます。
npx textlint README.md
これでtextlintの設定は確認できたので、あとはエディタにMCPサーバの設定を追加します。
エディタ別の設定方法
VS Code with GitHub Copilot
VS CodeでtextlintのMCPサーバーを設定するには、プロジェクトに.vscode/mcp.json
ファイルを作成します:
{
"servers": {
"textlint": {
"type": "stdio",
"command": "npx",
"args": ["textlint", "--mcp"]
}
}
}
また、コマンドパレットを使用して設定することも可能です:
Ctrl+Shift+P
(Windows/Linux) またはCmd+Shift+P
(macOS) を押すMCP: Add Server
を選択- ドロップダウンから
Command (stdio)
を選択 - コマンドとして
npx textlint --mcp
を入力 - サーバーIDとして
textlint
を入力 Workspace Settings
を選択して.vscode/mcp.json
に設定を作成
Cursor
プロジェクトディレクトリに .cursor/mcp.json
ファイルを作成します:
{
"mcpServers": {
"textlint": {
"command": "npx",
"args": ["textlint", "--mcp"],
"env": {}
}
}
}
グローバル設定の場合は、ホームディレクトリに~/.cursor/mcp.json
を作成し、同じ設定を記述します。
Windsurf
- Windsurf → Settings → Advanced Settings に移動
- Cascadeセクションまでスクロールし、「Add Server」をクリック
- 「Add custom server +」を選択
~/.codeium/windsurf/mcp_config.json
に次の設定を追加:
{
"mcpServers": {
"textlint": {
"command": "npx",
"args": ["textlint", "--mcp"],
"env": {}
}
}
}
- 更新ボタンを押してMCPサーバーリストを更新
利用可能なツール
textlint MCPサーバーでは、textlintを使った文章のチェックや修正するツールを提供しています。
使用例
AIアシスタントで使用できるプロンプトの例:
現在のファイルをtextlint MCPを使って、見つかったテキストの問題を説明してください
src/README.mdのすべてのtextlintの問題を修正してください
このMarkdownテキストの文章の問題をチェックして、改善案を提案してください
docs/ディレクトリのすべてのファイルにtextlintの自動修正を適用してください
次のような感じで、textlintのlint結果をみながら修正までやってくれます。
サンプルリポジトリ
次のリポジトリは、VSCodeでtextlint MCPサーバーを設定したサンプルです。
git clone https://github.com/azu/textlint-mcp-example.git
cd textlint-mcp-example
npm ci
code .
トラブルシューティング
textlint MCPサーバーで問題が発生した場合:
- MCPサーバーの状態を確認: エディタのMCPサーバーリスト/ステータス機能を使用
- textlintのインストールを確認: textlintとルールが正しくインストールされていることを確認
- 設定を確認:
.textlintrc
ファイルが有効であることを確認 - ログを確認: MCPサーバーログでエラーメッセージを確認
- 手動でテスト: ターミナルから
npx textlint --mcp
を実行してサーバーが起動するかテスト
よくある問題:
- textlint設定ファイルが存在しない
- textlintルールやプラグインがインストールされていない
- MCP設定のファイルパスが間違っている
- バージョンの互換性(textlint v14.8.0以降が必要)
まとめ
textlint v14.8.0では、実験的な機能としてMCP(Model Context Protocol)サポートを追加しました。 これにより、AI搭載のコードエディタから直接textlintの機能を利用できるようになり、エディタ上で文章チェックと修正を行えるようになります。
この機能は実験的なものですが、AI Agentとtextlintの連携が簡単になります。 ぜひお試しいただき、フィードバックをお寄せください。
textlint --mcp
は、@chick-pさんが実装してくれました。
textlintでは、Contributionを歓迎しています。
また、GitHub Sponsorsでのサポートも歓迎しています。
参考リンク
お知らせ欄
JavaScript Primerの書籍版がAmazonで購入できます。
JavaScriptに関する最新情報は週一でJSer.infoを更新しています。
GitHub Sponsorsでの支援を募集しています。