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.2.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.2.tar.gz.

File metadata

  • Download URL: iflow_mcp_andy_aranda_pr_reviewer-0.1.2.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.2.tar.gz
Algorithm Hash digest
SHA256 3a80c9d7f2d663dcdf2dd48b6525a4384775c2ca42367b6119b246d7c7ad2758
MD5 369446aede07407abcbe4970afcaa0be
BLAKE2b-256 d54dfc76560d0075b22e6bb1c095191d51a37df7d38727c42f83ea041d23beae

See more details on using hashes here.

File details

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

File metadata

  • Download URL: iflow_mcp_andy_aranda_pr_reviewer-0.1.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a3988351ce9a5021448bb9264189d5dbc6fb73039dd0fa20012e1e3683cc1f7c
MD5 53c9f38e0fc458b5570e349177a9573f
BLAKE2b-256 45e42e04c144a40e0674045de93acc93acb0b9d458c2913ee3b68d9cb3861ae6

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