loading…
Search for a command to run...
loading…
Enables developers to find personalized open-source contributions by analyzing GitHub profiles and matching them with relevant 'good first issues' and beginner-
Enables developers to find personalized open-source contributions by analyzing GitHub profiles and matching them with relevant 'good first issues' and beginner-friendly repositories. Provides comprehensive contribution tooling including repository health scoring, setup difficulty assessment, impact estimation, and automated PR planning.
Find your next open source contribution from your AI chat.
PyPI version Python 3.10+ CI License: MIT
6 focused tools. Works with Claude Desktop, Cursor, VS Code, or any MCP-compatible client.
You ask your AI assistant something like:
"My GitHub is
@octocat. Find me a good first issue I can actually pick up — make sure nobody's already working on it."
OpenCollab gives the AI 6 tools that read the GitHub API. The AI uses them to:
That's the whole loop: find → evaluate → verify → plan. OpenCollab does not generate text. Your AI client does the thinking; OpenCollab just gives it clean, real-time GitHub data.
v0.6.0 — relaunched lean. Previous versions exposed 22 tools. Most went unused, and big tool lists hurt LLM routing. This release ships the 6 that earn their keep. The full 22-tool version is preserved on the v1-full branch.
Go to github.com/settings/tokens → Generate new token (classic) → tick public_repo → copy the token (it starts with ghp_).
Open your config file:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.jsonPaste this (replace your_token_here with the token from Step 1):
{
"mcpServers": {
"opencollab": {
"command": "uvx",
"args": ["opencollab-mcp"],
"env": {
"GITHUB_TOKEN": "your_token_here"
}
}
}
}
Restart Claude Desktop. You're done.
Requires uv (
brew install uvon macOS,pipx install uvelsewhere).uvxwill pullopencollab-mcpfrom PyPI on first launch.
Same JSON as above, but in your client's MCP config file (.cursor/mcp.json for Cursor).
pip install opencollab-mcp
Then in your client config, change command to the binary that pip put on your PATH:
{
"mcpServers": {
"opencollab": {
"command": "opencollab-mcp",
"env": {
"GITHUB_TOKEN": "your_token_here"
}
}
}
}
Note: if you switch Python versions or virtualenvs, the opencollab-mcp binary may disappear and you'll need to pip install again. uvx avoids this.
docker build -t opencollab-mcp .
docker run -e GITHUB_TOKEN=ghp_xxx -p 8000:8000 opencollab-mcp
The container runs as a non-root user with TRANSPORT=streamable-http on port 8000.
Open your AI client and ask:
"My GitHub username is
<your-username>. Find me a good first issue I can pick up."
If the AI runs opencollab_match_me and comes back with a list, you're set.
These are real things the AI can answer once OpenCollab is connected:
@octocat — find me a good first issue."pandas-dev/pandas? Is it worth contributing to?"tensorflow/tensorflow?"facebook/react still available, or has someone claimed it?"owner/repo — pull all the context the AI needs."The AI picks which tools to call based on what you ask.
| Tool | What it does |
|---|---|
opencollab_match_me |
Reads your GitHub profile, detects your top language, returns 10 matching good-first-issues — all in one call. |
opencollab_find_issues |
Up to 15 recent good-first-issues for a given language. |
| Tool | What it does |
|---|---|
opencollab_repo_health |
0–100 contributor-friendliness score: activity, PR merge rate, community files, forks. |
opencollab_impact_estimator |
Impact tier (LOW → MASSIVE) based on stars + reach, plus a draft resume line. |
| Tool | What it does |
|---|---|
opencollab_check_issue_availability |
Is the issue still open? Assigned? Already has a PR? Checks the timeline so you don't waste a weekend. |
opencollab_generate_pr_plan |
Bundles the issue body, comments, CONTRIBUTING.md, and repo layout for the AI to plan a fix. |
You ask Claude → Claude picks tools → OpenCollab hits GitHub API → JSON back to Claude → Claude answers in plain English
A few design choices worth knowing:
match_me, repo_health, generate_pr_plan) fan out their GitHub requests with asyncio.gather, so they're noticeably faster than sequential.extra="forbid". Catches stray fields from LLM-generated tool calls before any logic runs.OpenCollab needs a GitHub token for two reasons:
/timeline, etc.) may not work without it.Scopes needed: just public_repo. OpenCollab never writes anything — it's all reads.
git clone https://github.com/prakhar1605/Opencollab-mcp.git
cd Opencollab-mcp
pip install -e ".[dev]"
export GITHUB_TOKEN="ghp_xxx"
# Run the server (stdio mode, for piping into MCP clients)
python -m opencollab_mcp
# Run the test suite
pytest -v
# Lint
ruff check src tests
# Inspect interactively in the MCP Inspector
npx @modelcontextprotocol/inspector python -m opencollab_mcp
src/opencollab_mcp/
├── server.py # entry point, transport selection (stdio / streamable-http)
├── github_client.py # cached httpx wrapper, friendly error mapping
├── helpers.py # date math, base64 decode, issue-number parser
├── models.py # Pydantic input models
├── constants.py # scoring thresholds & magic numbers
└── tools/
├── discovery.py # 2 tools — finding issues
├── evaluation.py # 2 tools — scoring a repo
└── issues.py # 2 tools — verifying & planning an issue
tests/ # pytest suite
Issues and PRs are welcome. The codebase is small (~1000 lines) and intentionally easy to read. Every scoring threshold lives in constants.py so tuning is a one-line change. New tools follow the same pattern: a function in tools/<category>.py, a Pydantic input model in models.py, and a test in tests/test_tools.py.
The main branch is protected — please open a PR rather than pushing directly. CI runs on Python 3.10, 3.11, and 3.12.
Already shipped (v0.6.0):
pip install opencollab-mcp / uvx opencollab-mcp)mainOpen ideas:
first_pr_generator — chain match_me + check_issue_availability + generate_pr_plan into one prompttrack_my_prs — list your open PRs with staleness nudgesskill_gap — compare your skills to a repo's tech stack and tell you what to learnIf any of these sound interesting, open an issue — that's the fastest path in.
Earlier versions shipped 22. In practice:
The full 22-tool catalogue still lives on the v1-full branch if you want it.
issue_complexity's code-block scoring, and pointed out that main had no branch protection (which has since been fixed).MIT — built by Prakhar Pandey, IIT Guwahati.
If OpenCollab helps you land your first PR, a ⭐ on the repo would mean a lot.
Выполни в терминале:
claude mcp add opencollab-mcp -- npx CSA PROJECT - FZCO © 2026 IFZA Business Park, DDP, Premises Number 31174 - 001
Безопасность
Низкий рискАвтоматическая эвристика по публичным данным — не гарантия безопасности.