Skip to main content
Glama

pr-mcp-server

MCP (Model Context Protocol) server to automate Pull Request creation with AI. Analyzes Git branches, generates descriptions, titles, suggests reviewers, and performs code reviews. Designed to speed up reviews and improve PR quality.

✨ Features

  • πŸš€ Unified PR Workflow - Complete PR creation with one command ("Create a PR")

  • 🧠 AI-Powered Code Review - Context-aware review integrated into PR description

  • πŸ” Project Context Analysis - Detects TypeScript, i18n, state management, styling, testing frameworks

  • πŸ“ PR Generation - Generate PR descriptions (standard, detailed, minimal templates | EN/FR)

  • 🏷️ Conventional Titles - Generate conventional PR titles (feat, fix, docs, etc.)

  • 🎨 Smart GIFs - Automatically adds relevant GIFs based on work type

  • πŸ‘₯ Auto Reviewers - Suggest and add reviewers based on contribution history

  • πŸ”Ž Code Review - Automated code review with actionable feedback

  • πŸ€– AI-Ready - Works with MCP Inspector, Cursor, and Claude Desktop

Related MCP server: Cursor Auto-Review MCP Server

πŸ“š Documentation

πŸš€ Quick Start

Requirements

  • Node.js 18+

  • A Git repository

Installation

Local development:

npm install
npm run build

Global installation (recommended):

npm link

This makes the pr-mcp-server command available globally.

Test with MCP Inspector

After npm link, run:

npx @modelcontextprotocol/inspector pr-mcp-server

The Inspector will list all available tools. Run it inside a Git repository for full functionality.

Use with Cursor

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "pr-mcp-server": {
      "command": "pr-mcp-server",
      "cwd": "{workspaceFolder}"
    }
  }
}

Restart Cursor, then ask:

  • "Create a PR" - Uses the unified workflow (recommended)

  • "GΓ©nΓ¨re le titre de ma PR"

  • "Analyse ma branche et gΓ©nΓ¨re la description de la PR"

  • "CrΓ©e une PR sur GitHub avec des reviewers"

See Configuration Guide for more details.

🎯 Unified PR Creation Workflow (AI-Powered)

When you say "Create a PR", Claude (the AI) orchestrates an intelligent workflow:

How It Works

  1. Call review tool - Gathers comprehensive project context:

    • Detects language/framework (TypeScript, PHP, Python, Go, Rust, etc.)

    • Identifies technologies (i18n, state management, styling, testing)

    • Extracts full diff and commit history

    • Returns structured prompt with all context

  2. Claude analyzes and generates review - True AI-powered analysis:

    • Understands project conventions automatically

    • Identifies issues specific to YOUR tech stack

    • Provides intelligent, context-aware suggestions

    • Works for ANY language/framework (not just TypeScript!)

  3. Call create_pr_complete with review - Creates complete PR:

    • Generates conventional commit-style title

    • Creates comprehensive description

    • Includes Claude's intelligent review

    • Adds smart GIF based on PR type

    • Creates/updates GitHub PR

    • Assigns reviewers from Git history

What Makes It Intelligent

Unlike rule-based tools, this uses Claude's intelligence to:

  • βœ… Adapt to ANY project (PHP Laravel, Python Django, Go, Rust, etc.)

  • βœ… Understand complex patterns and context

  • βœ… Provide project-specific recommendations

  • βœ… Detect violations of YOUR project's conventions

Example: In a PHP Laravel project, it will flag SQL injection vulnerabilities and suggest Eloquent ORM. In a React i18n project, it will catch hardcoded strings. All automatically!

Example Usage

# In Cursor or Claude Desktop, simply say:
"Create a PR"

# Claude will automatically:
# 1. Call 'review' to get project context
# 2. Analyze the context and generate intelligent review
# 3. Call 'create_pr_complete' with the review
# 4. Return the PR URL

# With specific options:
"Create a PR in English with the detailed template"
"Create a draft PR without reviewers"

See AI_POWERED_REVIEW.md for technical details on how the AI review works.

πŸ› οΈ Available Tools

Tool

Description

Recommended

create_pr_complete

πŸš€ Unified workflow - Complete PR creation with AI review

⭐ YES

create_pr

Create PR on GitHub with auto-reviewers (no AI review)

analyze_branch

Analyze differences between branches

generate_pr_title

Generate conventional PR title

generate_pr_description

Generate PR description

generate_pr_complete

Generate both title and description

suggest_reviewers

Suggest reviewers based on Git history

review

Automated code review (context-aware)

Recommendation: Use create_pr_complete for the best experience. It combines all features with intelligent, context-aware code review.

See Tools Reference for detailed documentation.

πŸ“¦ Useful Scripts

npm run build        # Compile TypeScript to dist/
npm start            # Start the MCP server
npm test             # Run tests
npm run test:watch   # Run tests in watch mode
npm run test:ui      # Run tests with UI
npm run dev          # Run in development mode

πŸ› Troubleshooting

  • "Not a git repository": Run the server inside a Git repo

  • ESM import issues: Use Node 18+ and build the project (npm run build)

  • Permission errors: Ensure your shell has access to the repo

  • "GitHub token is required": Set GITHUB_TOKEN environment variable

  • "Branch does not exist on remote": Push your branch first

See GitHub Integration for more troubleshooting.

πŸ“„ License

MIT

Available Tools

8 tools
analyze_branchA

Analyzes the differences between the current Git branch and a base branch. Automatically detects the main branch (dev/main/master) and current Git repository from the working directory. Use this when the user asks to analyze a branch, check changes, or understand what's in the current branch.

ParametersJSON Schema
NameRequiredDescriptionDefault
detailedNoInclude detailed analysis
baseBranchNoBase branch for comparison (auto-detected if not provided)

TDQS

A4.2/5.0
Behavior3/5

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

Discloses auto-detection behavior but no annotations provided. Does not mention error handling, permissions, or if it is read-only. Moderate transparency.

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?

Three concise sentences, front-loaded with purpose, no unnecessary detail.

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

Completeness4/5

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

Adequate for a simple tool with two optional params. Lacks output description but acceptable given no output schema.

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

Parameters4/5

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

Schema covers 100% of parameters with descriptions. Description adds context on auto-detection of baseBranch, enhancing understanding.

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

Purpose5/5

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

Clearly states it analyzes differences between current and base branch, with auto-detection. Distinguishes from siblings focused on PR creation.

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

Usage Guidelines4/5

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

Explicitly says when to use (analyze branch, check changes). Implies alternatives for PR generation. Could add when not to use.

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

create_prA

Creates a Pull Request on GitHub WITHOUT AI review. RECOMMENDED WORKFLOW: (1) Call 'generate_pr_title' β†’ get prompt, (2) YOU analyze and generate title, (3) Call 'generate_pr_description' β†’ get prompt, (4) YOU analyze and generate description, (5) Call THIS tool with 'title' and 'description' parameters. If not provided, simple versions are auto-generated from commits/templates. NOTE: This tool does NOT include AI code review. For complete PR WITH AI review, use 'create_pr_complete' instead. This tool: analyzes branch, creates/updates PR, adds reviewers automatically. Requires GITHUB_TOKEN. Use when user asks to create a simple PR without code review.

ParametersJSON Schema
NameRequiredDescriptionDefault
draftNoCreate the PR as a draft
titleNoRECOMMENDED: YOUR (Claude's) generated PR title. Workflow: (1) Call 'generate_pr_title' to get analysis prompt, (2) YOU analyze and create intelligent title, (3) Pass YOUR title here. DO NOT pass the tool's output directly - it's a prompt for YOU, not the final title. If not provided, a simple title is auto-generated from commit messages.
languageNoDescription languagefr
templateNoTemplate to use for the descriptionstandard
baseBranchNoBase branch for comparison (auto-detected if not provided)
descriptionNoRECOMMENDED: YOUR (Claude's) generated PR description. Workflow: (1) Call 'generate_pr_description' to get analysis prompt, (2) YOU analyze and write intelligent description, (3) Pass YOUR description here. DO NOT pass the tool's output directly - it's a prompt for YOU, not the final description. If not provided, a simple template-based description is auto-generated.
githubTokenNoGitHub token for authentication (optional, defaults to GITHUB_TOKEN env var)
addReviewersNoAutomatically suggest and add reviewers based on Git history
includeStatsNoInclude statistics in the description
maxReviewersNoMaximum number of reviewers to add (1-20)
maxTitleLengthNoMaximum length for the title (optional, e.g., 72)

TDQS

A4.6/5.0
Behavior4/5

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

With no annotations provided, the description carries full burden. It discloses key behaviors: no AI review, branch analysis, auto-update, automatic reviewer addition, and token requirement. Update behavior could be clearer.

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 well-structured with workflow steps and notes, but somewhat verbose. Every sentence earns its place, though some repetition exists (e.g., 'RECOMMENDED' emphasis).

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

Completeness4/5

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

Given 11 parameters and no output schema, the description comprehensively covers the workflow, auto-generation fallback, and sibling distinction. It could explicitly mention what the tool returns (e.g., PR object) but is otherwise complete.

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

Parameters5/5

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

All 11 parameters have schema coverage, but the description adds extensive workflow context (e.g., how to use title/description parameters, guidance on NOT passing tool output directly) that significantly enhances understanding beyond the schema.

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

Purpose5/5

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

The description clearly states 'Creates a Pull Request on GitHub WITHOUT AI review', uses specific verbs and resource, and explicitly distinguishes from sibling 'create_pr_complete'.

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

Usage Guidelines5/5

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

Provides a step-by-step RECOMMENDED WORKFLOW, explicitly tells when to use this tool vs 'create_pr_complete', and advises against passing tool outputs directly.

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

create_pr_completeA

πŸš€ UNIFIED PR CREATION WORKFLOW - WHEN USER SAYS 'Create a PR', YOU MUST FOLLOW THESE STEPS IN ORDER: (1) Call 'generate_pr_title' β†’ get prompt, (2) YOU analyze and generate intelligent title, (3) Call 'generate_pr_description' β†’ get prompt, (4) YOU analyze and generate intelligent description, (5) Call 'review' β†’ get context/diff prompt, (6) YOU analyze and write code review, (7) Call THIS tool with 'title', 'description', and 'aiReviewText' parameters. IMPORTANT: ALL 3 parameters (title, description, aiReviewText) should be YOUR generated content, NOT the tool outputs (which are prompts). If any are omitted, simple fallbacks are auto-generated. This creates a professional PR with: YOUR intelligent title, YOUR comprehensive description, YOUR AI code review, smart GIF, automatic reviewer assignment. Works for ANY language/framework. Requires GITHUB_TOKEN.

ParametersJSON Schema
NameRequiredDescriptionDefault
draftNoCreate the PR as a draft
titleNoRECOMMENDED: YOUR (Claude's) generated PR title. Workflow: (1) Call 'generate_pr_title' to get analysis prompt, (2) YOU analyze and create intelligent title, (3) Pass YOUR title here. DO NOT pass the tool's output directly - it's a prompt for YOU, not the final title. If not provided, a simple title is auto-generated from commit messages.
languageNoDescription languagefr
templateNoTemplate to use for the descriptionstandard
baseBranchNoBase branch for comparison (auto-detected if not provided)
descriptionNoRECOMMENDED: YOUR (Claude's) generated PR description. Workflow: (1) Call 'generate_pr_description' to get analysis prompt, (2) YOU analyze and write intelligent description, (3) Pass YOUR description here. DO NOT pass the tool's output directly - it's a prompt for YOU, not the final description. If not provided, a simple template-based description is auto-generated.
githubTokenNoGitHub token for authentication (optional, defaults to GITHUB_TOKEN env var)
addReviewersNoAutomatically suggest and add reviewers based on Git history
aiReviewTextNoREQUIRED for complete PR with review: YOUR (Claude's) generated code review text. Workflow: (1) Call 'review' tool to get analysis prompt with context/diff, (2) YOU analyze and write the review following the format in that prompt, (3) Pass YOUR review text here. DO NOT pass the review tool's output directly - it's a prompt for YOU to analyze, not the final review.
includeStatsNoInclude statistics in the description
maxReviewersNoMaximum number of reviewers to add (1-20)
maxTitleLengthNoMaximum length for the title (optional, e.g., 72)

TDQS

A3.9/5.0
Behavior4/5

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

No annotations are provided, so the description carries full burden. It discloses that the tool requires GITHUB_TOKEN, auto-generates fallbacks for omitted parameters, and expects AI-generated content for title/description/review. It also mentions it creates a smart GIF and assigns reviewers. However, it does not describe potential side effects or permission requirements beyond the token, and could be more explicit about mutation behavior.

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

Conciseness2/5

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

The description is verbose, using emojis, bold, all caps, and step-by-step instructions that blend workflow guidance with tool documentation. While detailed, it is not concise and may overwhelm agents with unnecessary formatting and redundant explanations. A more streamlined description would serve better.

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

Completeness3/5

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

Given the complexity (12 parameters, no output schema, multiple siblings), the description covers the workflow and parameter usage well. However, it lacks information about the return value or success/failure behavior. The mention of 'creates professional PR' gives some output context, but more detail on what the agent can expect from the call would improve completeness.

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

Parameters4/5

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

With 100% schema coverage, baseline is 3. The description adds significant value by explaining the workflow for key parameters (title, description, aiReviewText) and emphasizing that they should be AI-generated content, not direct tool outputs. It also clarifies defaults and fallbacks for other parameters (draft, language, template, etc.), improving understanding beyond the schema alone.

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 tool creates a 'UNIFIED PR CREATION WORKFLOW' and generates a professional PR with title, description, AI review, etc. It distinguishes itself from sibling tools by positioning as the final step after calling generate_pr_title, generate_pr_description, and review. However, the description is dense and mixes workflow instructions with tool purpose, slightly reducing clarity.

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

Usage Guidelines5/5

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

The description explicitly outlines a step-by-step workflow: (1) call generate_pr_title, (2) YOU analyze, (3) call generate_pr_description, (4) YOU analyze, (5) call review, (6) YOU analyze, (7) call this tool. It also explains when to use fallbacks if parameters are omitted. This provides clear context and distinguishes from alternative sibling tools like generate_pr_title, etc.

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

generate_pr_completeA

Generates both a conventional commit-style PR title and a complete Pull Request description in one operation. Combines the functionality of generate_pr_title and generate_pr_description. Automatically analyzes the current Git branch from the working directory. Use this when the user wants both title and description generated together.

ParametersJSON Schema
NameRequiredDescriptionDefault
languageNoDescription languagefr
templateNoTemplate to use for the descriptionstandard
baseBranchNoBase branch for comparison (auto-detected if not provided)
includeStatsNoInclude statistics in the description
maxTitleLengthNoMaximum length for the title (optional, e.g., 72)

TDQS

A3.7/5.0
Behavior2/5

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

No annotations are provided, so the description must fully disclose behavioral traits. It mentions automatic branch analysis but does not specify whether the tool has side effects, required permissions, or the nature of the operation (read/query vs. modification). This is a significant gap for a generation tool.

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 three precise sentences, front-loaded with the primary purpose, followed by combination info and usage hint. No redundant or unnecessary words.

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

Completeness3/5

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

With 5 parameters and no output schema, the description could be more complete. It doesn't explain the output or provide higher-level parameter interaction context. The automatic branch analysis is noted, but missing details like return format or limits.

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 coverage is 100%, so the baseline is 3. The description does not add any extra meaning or context for the parameters beyond what is already in the schema. It provides no parameter-level guidance.

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

Purpose5/5

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

The description clearly states the tool generates a PR title and description in one operation, combining functionality of two sibling tools. It uses specific verbs and resources, and implicitly distinguishes from siblings by noting the combined operation.

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

Usage Guidelines4/5

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

The description explicitly says 'Use this when the user wants both title and description generated together', providing clear usage context. However, it doesn't explicitly mention when not to use or alternatives like individual tools, though the sibling context provides some guidance.

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

generate_pr_descriptionA

⚠️ CRITICAL: This tool returns an ANALYSIS PROMPT for YOU (Claude) to generate a description, NOT a final description. OUTPUT: You receive comprehensive context (project type, commits, files, diff sample) formatted as a detailed prompt with specific instructions. YOUR JOB: Analyze that context and generate an intelligent, well-structured PR description. The prompt includes format requirements (What/Why/How/Impact sections), language preferences (FR/EN), and style guidelines. YOU must read it, understand the changes, and write a clear description ready for GitHub. DO NOT return the prompt - generate YOUR description. Use when creating PR or when user asks for PR description. The generated description should then be passed to create_pr or create_pr_complete tools.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleNoPR title (optional)
languageNoDescription languagefr
templateNoTemplate to usestandard
includeStatsNoInclude statistics

TDQS

A4.4/5.0
Behavior5/5

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

With no annotations, the description fully discloses the critical behavior: the tool returns a prompt, not a final description, and requires the AI to generate the description from that context. This is transparent and sets proper expectations.

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 front-loaded with the critical warning and is well-structured, but somewhat lengthy. Every sentence is informative, but could be slightly more concise.

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

Completeness5/5

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

Given the complexity of a meta-tool and no output schema, the description provides comprehensive context: output format, AI's role, workflow, and references to sibling tools. It is sufficient for effective use.

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 coverage is 100%, so the schema already describes parameters. The description adds context that language and template affect the prompt generation, but does not add significant new meaning beyond what is in the schema.

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

Purpose5/5

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

The description clearly states that the tool returns an analysis prompt for the AI, not a final description. It uses a strong warning and explicitly distinguishes itself from siblings like create_pr and generate_pr_title.

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

Usage Guidelines4/5

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

States when to use ('when creating PR or when user asks for PR description') and implies that the AI must process the output rather than returning it. Could be slightly more explicit about when not to use, but overall clear.

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

generate_pr_titleA

⚠️ CRITICAL: This tool returns an ANALYSIS PROMPT for YOU (Claude) to generate a title, NOT a final title. OUTPUT: You receive comprehensive context about the code changes (commits, files, diff patterns) formatted as a prompt. YOUR JOB: Analyze that context and generate an intelligent conventional commit-style PR title (e.g., 'feat(auth): add OAuth support'). The prompt provides all the information you need to understand what changed. YOU must read it and create a concise, descriptive title that accurately reflects the changes. DO NOT return the prompt - generate YOUR title. Use when creating PR or when user asks for a PR title. The generated title should then be passed to create_pr or create_pr_complete tools.

ParametersJSON Schema
NameRequiredDescriptionDefault
maxLengthNoMaximum length for the title (optional, e.g., 72)

TDQS

A4.6/5.0
Behavior5/5

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

No annotations provided, so the description carries full burden. It discloses that the tool returns a prompt for analysis, not a final answer, and warns with 'CRITICAL'. It explains the AI must read the context and generate a title, which is transparent about the unusual input-output relationship.

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 lengthy but necessary given the unusual tool behavior. It is front-loaded with a warning and provides clear steps. Could be slightly more concise, but still well-structured.

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

Completeness5/5

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

Given the complexity (tool returns a prompt for AI to process), the description is complete. It explains output, AI's role, and how to use the result. No output schema, but return behavior is described clearly.

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?

Only one parameter (maxLength) with 100% schema coverage. The description does not add details about how maxLength affects the prompt or title, but the schema already describes it. Baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states that the tool returns an analysis prompt for the AI to generate a PR title, not a final title. It specifies the verb 'generate' and the resource 'PR title' with an explicit twist, distinguishing it from siblings like create_pr.

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

Usage Guidelines5/5

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

The description explicitly says 'Use when creating PR or when user asks for a PR title' and instructs the AI to not return the prompt but generate a title. It also references sibling tools: 'should then be passed to create_pr or create_pr_complete tools.'

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

reviewA

⚠️ CRITICAL: This tool ONLY returns an ANALYSIS PROMPT for YOU (Claude), NOT a final review. OUTPUT: You receive comprehensive context (project type, diff, commits, structure) formatted as a detailed prompt with instructions. YOUR JOB: Analyze that context and generate the actual code review following the exact format specified in the prompt. The prompt includes everything you need: project context, full diff, testing framework, architecture details. YOU must read it, analyze the code changes, and write a concise review (max 10-15 lines) with sections: Summary, Critical Issues, Key Suggestions, Decision (APPROVE/REQUEST_CHANGES). DO NOT return the prompt itself - generate YOUR review. Works for ANY language/framework because context is provided. Use when user asks to review code or when creating PR with review.

ParametersJSON Schema
NameRequiredDescriptionDefault
baseBranchNoBase branch for comparison (auto-detected if not provided)

TDQS

A4.3/5.0
Behavior5/5

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

The description is highly transparent, warning with ⚠️ that the tool only returns a prompt, not a final review. It explains the exact output, the AI's job, and the review format. No annotations exist, so the description fully covers behavioral aspects.

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 fairly long but necessary given the tool's unusual workflow. It front-loads the critical warning and structures the explanation clearly. Slight redundancy could be trimmed, but overall it earns its length.

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

Completeness5/5

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

The description fully explains the tool's purpose, output, and the agent's role, including the expected review format. Despite the lack of an output schema, the description provides complete contextual information for proper usage.

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

Parameters4/5

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

Schema coverage is 100% for the single parameter 'baseBranch'. The description adds value by mentioning it is auto-detected if not provided, which goes beyond the schema's description. This extra context justifies a score above baseline 3.

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 that the tool returns an analysis prompt for the AI to generate a code review. It mentions using it when the user asks to review code, but does not explicitly differentiate from sibling tools like analyze_branch or create_pr.

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

Usage Guidelines4/5

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

The description explicitly says 'Use when user asks to review code or when creating PR with review.' It provides clear context for when to use, though it does not mention when not to use or compare to alternatives.

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

suggest_reviewersA

Suggests code reviewers based on Git contribution history of modified files in the current branch. Automatically analyzes the working directory's Git repository. Use this when the user asks who should review the PR or to suggest reviewers.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of reviewers to suggest

TDQS

A4/5.0
Behavior3/5

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

Discloses it automatically analyzes the working directory's Git repository, which is helpful. However, with no annotations, it lacks details on side effects, required permissions, or output format.

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?

Two concise sentences with no wasted words. Front-loaded with purpose then usage guidance.

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

Completeness4/5

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

For a simple tool with one optional parameter and no output schema, the description covers essential behavior and usage. Could mention that it requires a Git repo with changes, but not critical.

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 coverage is 100% (limit parameter described). Description does not add meaning beyond schema; repeats the limit parameter indirectly but adds no extra semantics.

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

Purpose5/5

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

Clearly states it suggests code reviewers based on Git history of modified files. Differentiates from sibling tools like create_pr or analyze_branch which have distinct purposes.

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

Usage Guidelines4/5

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

Explicitly says 'Use this when the user asks who should review the PR or to suggest reviewers.' Provides clear usage context, though does not explicitly mention when not to use it.

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. 8 tool updatesv1.0.0
    • First observedanalyze_branch
    • First observedcreate_pr
    • First observedcreate_pr_complete
    • First observedgenerate_pr_complete
    • First observedgenerate_pr_description
    • First observedgenerate_pr_title
    • First observedreview
    • First observedsuggest_reviewers

TDQS

A4/5.0
Disambiguation4/5

The tools have distinct purposes, but the similar names create_pr and create_pr_complete could confuse an agent without careful reading. The generate_* tools are clearly separated as prompt generators, and review is distinct. Detailed descriptions help, but the cognitive load is moderate.

Naming Consistency4/5

Most tools follow a verb_noun pattern in snake_case, e.g., create_pr, generate_pr_title. However, 'review' is a single verb without a noun, and 'suggest_reviewers' uses plural. The pattern is largely consistent with minor deviations.

Tool Count5/5

With 8 tools, the server covers the essential PR creation workflow (branch analysis, title/description generation, review, creation, reviewer suggestion) without being bloated or sparse. The count feels well-scoped for its purpose.

Completeness3/5

The server focuses on creating PRs with AI review, but lacks common PR lifecycle operations like listing, updating, merging, or commenting. For a 'pr-mcp-server', the surface is incomplete beyond the creation workflow, leaving notable gaps.

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

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/valentin-harrang/pr-mcp-server'

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