Skip to main content

AI-powered open source contribution matchmaker โ€” finds perfect 'good first issues' matched to YOUR skills

Project description

๐Ÿš€ 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/tokens โ†’ Generate 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

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

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.

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