Skip to main content

🚀 OpenCollab MCP

Land your first open source PR this weekend.

Stop scrolling GitHub. Let AI find you a mergeable issue in 30 seconds — matched to your actual skills, in a repo that's actually alive.

PyPI version Python 3.10+ CI MIT License MCP Compatible

Works with Claude Desktop · Cursor · VS Code · any MCP client

Install in 60 seconds · See it in action · All 22 tools


The problem

You want to contribute to open source. So you:

  1. Scroll through hundreds of GitHub repos 😩
  2. Find a "good first issue" — already taken 😤
  3. Spend an hour understanding a dead repo 💀
  4. Discover someone already opened a PR 😭
  5. Give up, go back to tutorials 📺

This loop is broken. OpenCollab fixes it in one sentence to your AI assistant.

The fix

"Find me a good first issue I can contribute to this weekend."

Claude calls OpenCollab → scans your GitHub profile → picks your strongest language → finds beginner-friendly issues in active repos with no existing PR → hands you the issue + full context to draft the fix.

One sentence. A real mergeable issue.


📦 Install in 60 seconds

1. Get a free GitHub token

github.com/settings/tokensGenerate new token (classic) → check public_repo → copy.

2. Add to your AI tool

🖥️ Claude Desktop (recommended)

Edit your config file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Add this:

{
  "mcpServers": {
    "opencollab": {
      "command": "uvx",
      "args": ["opencollab-mcp"],
      "env": {
        "GITHUB_TOKEN": "your_github_token_here"
      }
    }
  }
}

Restart Claude Desktop. Done.

⚡ Cursor / VS Code

Add to .cursor/mcp.json or your VS Code MCP config:

{
  "mcpServers": {
    "opencollab": {
      "command": "uvx",
      "args": ["opencollab-mcp"],
      "env": {
        "GITHUB_TOKEN": "your_github_token_here"
      }
    }
  }
}
🐍 Install with pip
pip install opencollab-mcp

Then in your MCP config:

{
  "mcpServers": {
    "opencollab": {
      "command": "opencollab-mcp",
      "env": {
        "GITHUB_TOKEN": "your_github_token_here"
      }
    }
  }
}
🐳 Docker (remote / streamable-http)
docker build -t opencollab-mcp .
docker run -e GITHUB_TOKEN=ghp_xxx -p 8000:8000 opencollab-mcp

The container defaults to TRANSPORT=streamable-http on port 8000 and runs as a non-root user.


🎬 See it in action

The killer demo — 3 prompts to go from zero to a drafted PR

1️⃣ Analyze me

"My GitHub username is prakhar1605. Am I ready to contribute to open source?"

Readiness: 72/100. You know 4 languages, 15 public repos, haven't opened PRs yet. Tips: start with a docs fix, try a repo you already use.

2️⃣ Find me a mergeable issue

"Find me a Python good-first-issue I can finish in 1–2 hours. Make sure nobody's working on it."

Returns 5 issues · filters out ones with assignees or linked PRs · sorts by "quickness score" (short body, few comments, easy label).

3️⃣ Plan the PR

"Plan a PR for issue #456 in owner/repo."

Pulls the issue body, comments, CONTRIBUTING.md, the repo's directory structure, and the default branch — hands Claude everything needed to draft the actual code.

That's the whole loop: Analyze → Find → Plan → Ship.

More things you can just say

You say… What happens
"Is issue #123 in facebook/react still available?" ✅ No assignees, no open PRs. 3 comments, 12 days old. Go for it.
"Compare langchain vs llama_index for contributing." Side-by-side: stars, PR merge rate, activity. Recommends winner.
"Is tensorflow/tensorflow alive?" 847 commits in last 30 days. Growing +23%. Safe to invest time.
"How complex is issue #5432 in pytorch?" 7/10 · Advanced. 12 comments, architecture label. Skip unless you know the codebase.
"Find Python repos with GSoC or Hacktoberfest." Mentored repos sorted by mentor signals.
"What dependencies does fastapi use?" Reads pyproject.toml → starlette, pydantic, uvicorn.
"What's the impact of contributing to react?" 🎯 MASSIVE · 230k+ stars · Resume line: "Contributed to a project used by millions of devs."

🛠️ All 22 tools

🔍 Discovery & Matching (6)
Tool Does
opencollab_match_me All-in-one — profile analysis + matched issues
opencollab_find_issues Good-first-issues for any language
opencollab_trending_repos Trending repos seeking contributors
opencollab_similar_repos Find repos like one you already like
opencollab_find_mentor_repos GSoC · Hacktoberfest · Outreachy repos
opencollab_weekend_issues 1–2 hour issues — docs, typos, tests
📊 Evaluation & Scoring (7)
Tool Does
opencollab_repo_health Health score 0–100
opencollab_contribution_readiness Setup difficulty (Dockerfile, CI, docs)
opencollab_impact_estimator Impact tier + resume line
opencollab_repo_activity_pulse 30-day momentum — growing? dying?
opencollab_compare_repos Two repos side-by-side + winner
opencollab_repo_languages Language % breakdown
opencollab_dependency_check Tech stack — what libs the project uses
👤 Profile & Readiness (3)
Tool Does
opencollab_analyze_profile Deep profile analysis
opencollab_first_timer_score Open source readiness 0–100 + tips
opencollab_contributor_leaderboard Top contributors of any repo
🎯 Issue Intelligence (6)
Tool Does
opencollab_check_issue_availability Is this issue still free?
opencollab_issue_complexity Difficulty 1–10
opencollab_stale_issue_finder Old unclaimed issues — hidden wins
opencollab_label_explorer All labels + beginner-friendly ones
opencollab_recent_prs Recently merged PRs — what gets accepted
opencollab_generate_pr_plan Full context for PR planning

⚡ Why it's different

You ask Claude → Claude calls OpenCollab tools → Tools hit GitHub's free API → Data flows back → Claude reasons over it → You get a real, specific answer

OpenCollab is a data bridge, not an AI. Your AI assistant does the thinking. That means:

  • 🆓 Zero AI costs — pure GitHub API, no paid services
  • 🔑 No secrets besides a free GitHub token
  • 💻 Runs locally on your machine (STDIO transport) or as a container (streamable-HTTP)
  • 🔒 Private — your GitHub data never leaves your computer
  • Fast — direct API calls + 5-minute in-memory cache to soften rate-limit pressure
  • 🧪 Tested — pytest suite + CI on every push

🏗️ Develop / Contribute

This project is itself a great first contribution target.

git clone https://github.com/prakhar1605/Opencollab-mcp.git
cd Opencollab-mcp
pip install -e ".[dev]"
export GITHUB_TOKEN="your_token_here"

# Run the server
python -m opencollab_mcp

# Run the tests
pytest

# Lint
ruff check src tests

# Or test interactively with the MCP Inspector:
npx @modelcontextprotocol/inspector python -m opencollab_mcp

Project layout

src/opencollab_mcp/
├── server.py          # entry point, transport selection
├── github_client.py   # cached HTTP wrapper with friendly errors
├── helpers.py         # days_ago, truncate, parse_issue_number, …
├── models.py          # Pydantic input models
├── constants.py       # all magic numbers / thresholds
└── tools/
    ├── discovery.py   # 6 matching tools
    ├── evaluation.py  # 7 scoring tools
    ├── issues.py      # 6 issue-intelligence tools
    └── profile.py     # 3 readiness tools

Check open issues labelled good first issue.


🗺️ Roadmap

  • 22 tools shipped
  • Published on PyPI — uvx opencollab-mcp works out of the box
  • In-memory caching layer (fewer API calls, less rate-limit friction)
  • GitHub Actions CI
  • Pytest suite with httpx MockTransport
  • Streamable-HTTP transport for remote deployment
  • first_pr_generator — one-shot "find + plan + draft my first PR"
  • track_my_prs — dashboard of your open PRs with staleness nudges
  • skill_gap — compare your skills vs a target repo's stack

Got an idea? Open an issue — that's the fastest path in.


📄 License

MIT — see LICENSE.


Built with ❤️ by Prakhar Pandey · IIT Guwahati

Star this repo if OpenCollab helps you land a PR.It's the single biggest thing you can do to help other devs discover it.

Install now · Report a bug · Share on Twitter

Download files

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

Source Distribution

opencollab_mcp-0.5.0.tar.gz (28.8 kB view details)

Uploaded Source

Built Distribution

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

opencollab_mcp-0.5.0-py3-none-any.whl (30.1 kB view details)

Uploaded Python 3

File details

Details for the file opencollab_mcp-0.5.0.tar.gz.

File metadata

  • Download URL: opencollab_mcp-0.5.0.tar.gz
  • Upload date:
  • Size: 28.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.2

File hashes

Hashes for opencollab_mcp-0.5.0.tar.gz
Algorithm Hash digest
SHA256 a0a8a45695068006470bcbedcb43dd4e5317846f6d4925a13de0e40a90a8a734
MD5 a84afcbe6eaa004188118902d7fc7022
BLAKE2b-256 4b4cee15ff60e6afa683ef0889de873736129a4e3538ea6881ff61153ac746b4

See more details on using hashes here.

File details

Details for the file opencollab_mcp-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: opencollab_mcp-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 30.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.2

File hashes

Hashes for opencollab_mcp-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1baa00e387fcecedd25a5616790423f61a8dc7ced719a1486a7b3989a6f68434
MD5 5241d23628c54f1bdfce0615c0e63306
BLAKE2b-256 4cf589c2e6fbec751ea07953d1b2e20d3c23befe5a7b99ea222771470d73b1a1

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.5.0 This release

2 files

0.4.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page