Skip to main content
Glama
kodaimaehata

Cursor Reviewer MCP

by kodaimaehata

cursor-reviewer-mcp

MCPサーバー「cursor-reviewer」。Claude Code から cursor.review または codex.review ツールを呼び出し、Cursor CLI(GPT‑5)または Codex CLI でレビューを実行し、レビューJSONのみを返します。仕様は 1.specs/spec.md(v3)に準拠しています。

概要

  • ツール名: cursor.review, codex.review

  • 入力: targets, reference, review_request, timeout_ms(オプション), policy(予約・null固定)

  • 実装: Node.js + TypeScript + MCP SDK(@modelcontextprotocol/sdk

  • Cursor実行: cursor-agent -p --model gpt-5 --output-format json "<プロンプト>"

  • Codex実行: codex exec "<プロンプト>"

  • 出力: 各CLIの出力からレビューJSONのみを抽出し返却

  • 監査: reviews/YYYYMMDD-HHMMSS.json にレビューJSONを保存

Related MCP server: Review MCP Server

ディレクトリ構成

.
├─ bin/
│  └─ cursor-reviewer-mcp        # 実行バイナリ(ビルド済みdistを起動)
├─ src/
│  ├─ server.ts                  # MCPサーバー本体(stdio)
│  ├─ cursor.ts                  # Cursor CLI 呼び出し・再試行・パース
│  ├─ codex.ts                   # Codex CLI 呼び出し・再試行・パース
│  ├─ prompt/
│  │  └─ template.txt            # 共有プロンプトテンプレート
│  └─ schemas/
│     ├─ cursor.review.input.schema.json
│     └─ codex.review.input.schema.json
├─ reviews/.gitkeep              # 監査ログ出力先(JSON)
├─ .cursor/cli.json              # Cursor CLI の権限制御(Read-only)
├─ .claude/agents/build-and-iterate.md  # サブエージェント定義テンプレ
├─ package.json
├─ tsconfig.json
├─ .gitignore
└─ README.md

セットアップ

  1. Node.js 22 LTS を用意(推奨)

    • nvm 利用時: nvm use(本リポジトリは .nvmrc で 22 を指定)

  2. 依存インストール(任意のパッケージマネージャ)

npm i
  1. ビルド

npm run build
  1. 実行(MCPサーバーとして stdio で起動)

./bin/cursor-reviewer-mcp
  1. Claude Code への登録例(プロジェクトスコープ)

claude mcp add --scope project cursor-reviewer $(pwd)/bin/cursor-reviewer-mcp

環境変数

  • 通常は不要です。cursor-agentcodex が既にローカル設定済みであれば、環境変数は不要です。

  • 特殊な環境(CI 等)で cursor-agent が環境変数経由の認証を要求する場合のみ、CURSOR_API_KEY を設定してください。

  • Codex CLI のパスを明示する場合は REVIEWER_MCP_CODEX_BIN、追加フラグは REVIEWER_MCP_CODEX_FLAGS を設定します(シェル風の記法で引用可、例: --model "gpt 4" --quiet)。

  • スキーマを差し替える場合は REVIEWER_MCP_SCHEMA_DIR(ディレクトリを指定)、または個別に REVIEWER_MCP_CURSOR_SCHEMA_PATH / REVIEWER_MCP_CODEX_SCHEMA_PATH を指定します。

  • JSON以外の出力を許容する場合のみ REVIEWER_MCP_ALLOW_PLAINTEXT_FALLBACK=1 を設定します(デフォルトは厳格にJSONのみ)。

ツール仕様(要点)

  • 入力スキーマは src/schemas/*.review.input.schema.json に定義。

  • targets[].path が存在しない場合はエラーを返却。

  • CursorはトップレベルJSONの result からレビューJSONを抽出、Codexは標準出力から直接抽出(失敗時1回だけ再実行)。

  • 各実行のレビューJSONは reviews/ にタイムスタンプ名で保存。

注意

  • このリポジトリにはSDK等の依存は含まれていません。npm i で取得してください。

  • Cursor CLI(cursor-agent)および Codex CLI(codex)がPATHに存在する必要があります。

ライセンス

  • 本リポジトリは MIT License です。詳細は LICENSE を参照してください。

Available Tools

2 tools
codex.reviewRun review via Codex CLIC

Review deliverables via Codex CLI and return review JSON only.

ParametersJSON Schema
NameRequiredDescriptionDefault
targetsYesレビュー対象ファイル一覧(表示名とパス)
previous_reviewsNo前回レビュー結果JSON(must_fixes/チェックリスト等)への参照一覧
referenceYesレビューで参照すべきドキュメント一覧(表示名とパス)
review_requestYesレビューワへの依頼文(自然文)
timeout_msNo外部レビュー実行のタイムアウト(ミリ秒)
policyNo将来予約(LGTM基準等)。初期バージョンは null 固定・不使用

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. While it mentions the tool returns 'review JSON only', it doesn't describe what the review process entails, whether it's read-only or modifies files, what permissions are required, potential rate limits, or error conditions. The mention of 'timeout_ms' in the schema suggests this might be a long-running operation, but the description doesn't warn about this.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise at just one sentence with no wasted words. It's front-loaded with the core purpose. However, the brevity comes at the cost of completeness - it could benefit from one more sentence about behavioral characteristics given the lack of annotations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex tool with 6 parameters (3 required), no annotations, and no output schema, the description is inadequate. It doesn't explain what the review process does, what the output looks like, how it differs from the sibling tool, or any behavioral characteristics. The schema handles parameter documentation, but the description fails to provide the necessary context for proper tool understanding and usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, so all parameters are documented in the schema. The description adds no additional parameter semantics beyond what's already in the schema descriptions. The baseline score of 3 reflects adequate coverage through the schema alone, though the description doesn't enhance understanding of how parameters interact or their practical usage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool 'Review deliverables via Codex CLI and return review JSON only', which provides a verb ('Review') and resource ('deliverables'), but is vague about what 'deliverables' specifically means and how it differs from the sibling tool 'cursor.review'. It doesn't clearly distinguish between the two review tools, leaving ambiguity about when to use one over the other.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus the sibling 'cursor.review' tool, nor does it mention any prerequisites, exclusions, or alternative approaches. Usage context is implied at best through the mention of 'Codex CLI', but this is insufficient for effective tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

cursor.reviewRun review via Cursor (GPT‑5)C

Review deliverables via Cursor CLI (GPT‑5) and return review JSON only.

ParametersJSON Schema
NameRequiredDescriptionDefault
targetsYesレビュー対象ファイル一覧(表示名とパス)
previous_reviewsNo前回レビュー結果JSON(must_fixes/チェックリスト等)への参照一覧
referenceYesレビューで参照すべきドキュメント一覧(表示名とパス)
review_requestYesレビューワへの依頼文(自然文)
timeout_msNo外部レビュー実行のタイムアウト(ミリ秒)
policyNo将来予約(LGTM基準等)。初期バージョンは null 固定・不使用

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the tool runs 'via Cursor CLI' and returns 'review JSON only', but lacks critical details such as whether this is a read-only or mutating operation, authentication requirements, rate limits, error handling, or what the review process entails (e.g., automated analysis, human-in-the-loop).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with a single sentence that efficiently conveys the core action, mechanism, and output. It is front-loaded with essential information and contains no redundant or unnecessary details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a review tool with 6 parameters, no annotations, and no output schema, the description is incomplete. It fails to explain the review process, expected outcomes, error conditions, or how the output JSON is structured, leaving significant gaps for an AI agent to understand and use the tool effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds no additional semantic context about parameters beyond what's in the schema, such as explaining how 'targets' and 'reference' interact or the purpose of 'previous_reviews'. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Review deliverables') and the mechanism ('via Cursor CLI (GPT‑5)'), and specifies the output format ('return review JSON only'). It distinguishes from the sibling 'codex.review' by specifying the Cursor platform and GPT-5 model, though it doesn't explicitly contrast their differences.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus the sibling 'codex.review' or other alternatives. It mentions the platform and model but doesn't explain the specific use cases, prerequisites, or scenarios where this tool is preferred over others.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 2 tool updatesv1.0.0
    • Changedcodex.review3 fields changed
      • addedInput schema / $schema
        Added value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / title
        Added value: +"codex.review.input"
    • Changedcursor.review3 fields changed
      • addedInput schema / $schema
        Added value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / title
        Added value: +"cursor.review.input"
  2. 2 tool updates
    • First observedcodex.review
    • First observedcursor.review

TDQS

C2.9/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have clearly distinct purposes: codex.review uses Codex CLI, while cursor.review uses Cursor CLI with GPT-5. There is no overlap in functionality as each targets a different review system, making misselection unlikely.

Naming Consistency5/5

Both tools follow a consistent naming pattern: they use a prefix (codex or cursor) followed by a dot and the action 'review'. This pattern is uniform across all tools, making them predictable and easy to identify.

Tool Count2/5

With only 2 tools, the server feels thin for a 'Cursor Reviewer' domain, as it lacks operations like listing reviews, updating reviews, or handling review feedback. The count is too low to support comprehensive review workflows.

Completeness2/5

The tool surface is severely incomplete for a review system; it only provides review creation via two CLI methods, missing essential CRUD operations such as retrieving, updating, deleting reviews, or managing review-related data. This will likely cause agent failures in broader tasks.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • -
    license
    C
    quality
    Not graded
    maintenance
    Enables comprehensive GitHub PR reviews through Cursor's AI by fetching PR diffs, running static analysis tools (ESLint, Prettier, TypeScript, Semgrep), executing tests, and generating detailed code review reports with inline comments.
    9
    867
    1
    -
  • F
    license
    A
    quality
    D
    maintenance
    Enables Claude to perform thorough code reviews by integrating with Codex and Gemini CLIs to provide senior-level feedback on code quality, security, performance, and best practices. Supports reviewing code snippets, individual files, or entire directories with automatic detection of available review tools.
    4
    -
  • A
    license
    B
    quality
    D
    maintenance
    Enables AI assistants to perform code reviews by providing access to staged files, git diffs, and repository file content. It allows users to evaluate changes and context within any local git repository before committing or pushing.
    3
    10
    ISC
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI-powered code review and improvement, including analysis, refactoring suggestions, and automatic test generation, with an optional agentic loop for iterative refinement.
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kodaimaehata/reviewer-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server