Skip to main content

Add your description here

Project description

🤖 PR Reviewer with Claude + Notion + GitHub

This project automates the analysis of Pull Requests (PRs) using a LLM (Claude) connected via the MCP (Model Context Protocol).

The system receives a PR link, generates a technical summary, and stores it in a Notion page as documentation. image


🧩 Architecture

image

  1. The user sends a PR URL to Claude Desktop.
  2. Claude interprets the request and uses its internal MCP Client.
  3. The MCP Client sends a structured request to the local MCP Server.
  4. The MCP Server acts as an adapter to fetch PR data from GitHub and save a summary to Notion, using both platforms’ APIs.
  5. The retrieved and processed information is returned to Claude, who presents it to the user as a technical summary.
  6. Finally, the information is automatically saved to a Notion page.

✨ Features

  • Automatically fetches PR changes via GitHub API.
  • Uses Claude Desktop to generate a semantic analysis of the code.
  • Creates a Notion entry with the generated summary.
  • Modular and extensible: you can add more tools to the MCP server.

🚀 How It Works

  1. Claude Desktop detects the MCP server when it runs locally.
  2. The user sends a PR link to Claude.
  3. Claude calls the MCP server and uses:
    • fetch_pr → fetches PR metadata and diffs from GitHub.
    • create_notion_page → saves the analysis in a new Notion page.
  4. The whole process is triggered from Claude's interface with no manual steps.

🔧 Requirements


⚙️ Setup

  1. Install uv (lightweight Python environment manager):

    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  2. Initialize project:

    uv init pr_reviewer
    cd pr_reviewer
    uv venv
    source .venv/bin/activate
    
  3. Install dependencies:

    uv add "mcp[cli]" requests python-dotenv notion-client
    
  4. Create .env file:

    GITHUB_TOKEN=ghp_***************
    NOTION_API_KEY=secret_**************
    NOTION_PAGE_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    
  5. Configure Claude Desktop with the claude_desktop_config.json file, e.g.:

    {
      "mcpServers": {
        "pr-reviewer": {
          "command": "/path/to/python",
          "args": ["/path/to/pr_anayzer.py"],
          "cwd": "/path/to/project"
        }
      }
    }
    

🧪 Usage

  1. Run the MCP server:

    python pr_anayzer.py
    
  2. Open Claude Desktop and pass a PR link:

    https://github.com/your_username/your_repo/pull/1
    
  3. Claude will analyze the PR and ask whether to save the result in Notion.


📌 Possible Improvements

  • Full automation using n8n or GitHub Actions.
  • PR validation with custom rules.
  • Integration with other tools like Slack or ClickUp.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iflow_mcp_andy_aranda_pr_reviewer-0.1.0.tar.gz (2.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file iflow_mcp_andy_aranda_pr_reviewer-0.1.0.tar.gz.

File metadata

  • Download URL: iflow_mcp_andy_aranda_pr_reviewer-0.1.0.tar.gz
  • Upload date:
  • Size: 2.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_andy_aranda_pr_reviewer-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c5a97bd89b8b8cb305432657fe84525a7697ce4f67897791306053323b1b22ce
MD5 ce996c3eaec509d0326067c7797ceab1
BLAKE2b-256 9cc232c9ca9ef83c1a0bbbd9e683bdd689a17e94890ba04dd37b284245d44e8f

See more details on using hashes here.

File details

Details for the file iflow_mcp_andy_aranda_pr_reviewer-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: iflow_mcp_andy_aranda_pr_reviewer-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 3.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_andy_aranda_pr_reviewer-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 43f4641e64453fd1996cfbc9acb18f986997af80884ff3ca965392c8767a0566
MD5 d3ff2e678a7ef72ad92da31c30861ac2
BLAKE2b-256 99b522de35ddcc89def03eb7cf7cfd62ad89599fbaeb19d99a5ede42e23217f3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page