Supports Git submodule integration for managing the MCP server as a submodule within Re:VIEW projects
Supports GitHub repository integration for distributing and managing the MCP server as a submodule in Re:VIEW projects
Provides fast linting capabilities by compiling Re:VIEW documents to LaTeX format and analyzing stderr output for common errors and issues
Uses npm for package management and installation of the MCP server dependencies
review-mcp-min(Re用 最小MCPサーバー)
目的: 執筆の手を止めずに、Re原稿のエラーを未然に防ぐ。
- 保存時に 許可外タグをブロック(“勝手なタグ定義”を禁止)
- ID(空/重複)を自動修正(人間可読な命名でユニーク化)
- 迅速な Lint(
review-compile --target=latex
)で代表的な落とし穴を検出 - Re 5.8 / 2.5(ReviewStarter) の両環境に将来的に対応可能(本雛形は5.8を前提に構成)
プロジェクトルート(cwd)の指定について
MCPサーバーの各ツール呼び出しでは cwd を指定します。
これは「Reプロジェクトのルートディレクトリ」のことです。
典型的な構成例:
つまり、config.yml
と catalog.yml
があるディレクトリを cwd
として渡してください。
MCPツール呼び出し例
補足: 普段からプロジェクト直下に移動して作業する場合
もし常に cd mybook/
のように プロジェクトルートで作業しているなら、
--cwd .
を指定するだけで十分です。
例:
将来的には --cwd
を省略しても process.cwd()
を自動で使う仕様に拡張可能です。
CLIから直接呼ぶ場合
ポイント:
cwd
に渡すのは必ず「プロジェクトのトップディレクトリ」です。
その直下にconfig.yml
とcatalog.yml
が存在していなければいけません。
同梱ツール(MVP)
review.version
— Re CLI バージョン取得review.tags.list
— 内蔵の保守的Allowlist(後で動的プローブに置換予定)review.enforceTags.check
— 許可外タグの検出(保存ブロック用)review.fixIds.plan
/review.fixIds.apply
— IDの空欄/重複の自動修正review.lint
— 高速Lint(各.re
を latex 変換に通して stderr を解析)
展開方法(2つの配布形態)
A. リリースZIPとして展開(単体配布)
- 本リポジトリのリリースで配布する
review-mcp-min.zip
を展開 npm i
npm run start
で MCP サーバー起動- ClaudeCode から MCP サーバーに接続し、ツール呼び出し時の引数
cwd
に Reプロジェクトのルートを指定します。
B. Git サブモジュール運用
- GitHub 上に本サーバー(独立リポジトリ)を作成(例:
your-org/review-mcp
) - 各 Re プロジェクトでサブモジュールとして追加:
- 実行:
- ClaudeCode 側からは
cwd
を プロジェクトルートに指定してツールを呼び出してください。
保存時の推奨フロー
review.enforceTags.check
— 許可外タグがあれば保存を中断review.fixIds.plan
→review.fixIds.apply
— ID を自動修正(.bak
を残す)review.lint
— 代表的な注意点(例://' seen but is not valid command
、duplicate ID
)を警告表示
CI / Rake 連携(ヘッドレス実行)
scripts/ci-lint.mjs
- MCP クライアント不要のヘッドレス検査スクリプトです。
- 機能:許可外タグ検出、ID自動修正の計画/適用、快速Lint。
使い方:
設定ファイル(任意) review-mcp.json
よくある質問
Q. MCPサーバーはプロジェクト直下に置くべき?
- どちらでもOKです。別ディレクトリで独立運用しても、サブディレクトリに同梱しても動作します。
- 重要なのは、ツール引数
cwd
を Reプロジェクトのルートにすること。
Q. 2.5(ReviewStarter) との両対応は?
- 本雛形では 保守的Allowlist によるガードのみ提供しています。
- 将来的に
review.tags.list
を 動的プローブ+キャッシュに差し替え、5.8/2.5 双方で“実際に通るタグ”集合を確定させます。 profile: "dual"
(共通集合のみ許可)で“どちらにも通る原稿”を担保する運用を想定。
セットアップ(ClaudeCode / Claude Desktop 側)
MCPサーバーを利用するには、ClaudeCode や Claude Desktop 側で「サーバー登録」が必要です。
方法A: Claude Desktop の設定ファイルに追記
- mac の場合、
~/Library/Application Support/Claude/claude_desktop_config.json
を開きます。
(アプリのDeveloper Settings → Edit Config
からも編集可能) "mcpServers"
に以下のように追加してください(絶対パスに置き換え必須):
- Claude Desktop を再起動すると、ツール一覧に
review-mcp
が表示されます。
ログは~/Library/Logs/Claude/mcp*.log
で確認可能です。
方法B: ClaudeCode (VS Code拡張) でCLI追加
VS Code の「Claude Code」拡張を使用している場合、以下のコマンドで追加できます:
-s
はスコープを指定します(project
/local
/user
)。
まずはlocal
で試してから、安定したらproject
に切り替えるのが安全です。
開発メモ
src/index.ts
のreview.tags.list
を差し替えて、動的プローブ(review-compile
にダミー原稿を通して合否判定)+cache/
保持を実装してください。cache/
は.gitignore
推奨(配布時は空にしてOK)。
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Enables automatic validation and correction of Re:VIEW manuscript files by checking for unauthorized tags, fixing duplicate/empty IDs, and running fast lint checks to prevent common errors during writing.