RuvScan integrates seamlessly with Claude Code CLI, Codex, and Claude Desktop as an MCP (Model Context Protocol) server.
Before installing RuvScan as an MCP server, you need the backend API running:
# Clone and start RuvScan API
git clone https://github.com/ruvnet/ruvscan.git
cd ruvscan
cp .env.example .env
# Add your GITHUB_TOKEN to .env
# Start with Docker
docker compose up -d
# Verify it's running
curl http://localhost:8000/healthThe easiest way to add RuvScan to Claude Code:
# Install from PyPI
claude mcp add ruvscan \
--scope user \
--env RUVSCAN_API_URL=http://localhost:8000 \
--env GITHUB_TOKEN=ghp_your_token_here \
-- uvx ruvscan-mcpOptions:
--scope user- Available across all your projects--scope project- Only for current project (creates.mcp.json)--scope local- Local to this directory only
Verify installation:
claude mcp listmacOS/Linux:
curl -LsSf https://astral.sh/uv/install.sh | shWindows:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"macOS:
code ~/Library/Application\ Support/Claude/claude_desktop_config.jsonWindows:
code %APPDATA%\Claude\claude_desktop_config.jsonAdd this configuration:
{
"mcpServers": {
"ruvscan": {
"command": "uvx",
"args": ["ruvscan-mcp"],
"env": {
"RUVSCAN_API_URL": "http://localhost:8000",
"GITHUB_TOKEN": "ghp_your_token_here"
}
}
}
}macOS: Quit completely with Cmd+Q
Windows: Exit from system tray
For local development or if you want to run from source:
macOS/Linux:
{
"mcpServers": {
"ruvscan": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/ruvscan",
"run",
"src/mcp/mcp_stdio_server.py"
],
"env": {
"RUVSCAN_API_URL": "http://localhost:8000",
"GITHUB_TOKEN": "ghp_your_token_here"
}
}
}
}Windows:
{
"mcpServers": {
"ruvscan": {
"command": "uv",
"args": [
"--directory",
"C:\\ABSOLUTE\\PATH\\TO\\ruvscan",
"run",
"src\\mcp\\mcp_stdio_server.py"
],
"env": {
"RUVSCAN_API_URL": "http://localhost:8000",
"GITHUB_TOKEN": "ghp_your_token_here"
}
}
}
}Create .mcp.json in your project root:
{
"mcpServers": {
"ruvscan": {
"command": "uvx",
"args": ["ruvscan-mcp"],
"env": {
"RUVSCAN_API_URL": "http://localhost:8000"
}
}
}
}Note: GITHUB_TOKEN can be in your .env file instead of .mcp.json for security.
- Open Claude Desktop
- Look for the tools icon (🔧) in the chat interface
- You should see 4 RuvScan tools listed:
scan_github- Scan GitHub org/user/topicquery_leverage- Find leverage opportunitiescompare_repositories- Compare two reposanalyze_reasoning- Analyze reasoning chains
# Start a chat
claude
# Test the tools
> Can you scan the openai organization for me?
> What leverage can I find for "building real-time AI apps"?
> Compare facebook/react vs vuejs/coreTry these in Claude:
1. "Scan the anthropics GitHub organization"
→ Uses: scan_github tool
2. "Find tools that could help me build a real-time collaborative editor"
→ Uses: query_leverage tool
3. "Compare facebook/react and vuejs/core"
→ Uses: compare_repositories tool
4. "Show me the reasoning for why you recommended that repo"
→ Uses: analyze_reasoning tool
| Variable | Description | Default | Required |
|---|---|---|---|
RUVSCAN_API_URL |
RuvScan API endpoint | http://localhost:8000 |
No |
GITHUB_TOKEN |
GitHub Personal Access Token | None | Recommended |
user- Available in all projects for your userproject- Shared via.mcp.jsonin gitlocal- Only in current directory, not in git
Check Claude's logs:
macOS:
tail -f ~/Library/Logs/Claude/mcp*.logWindows:
Get-Content $env:LOCALAPPDATA\Claude\logs\mcp*.log -WaitCommon fixes:
- Verify absolute paths (not relative)
- Restart Claude Desktop completely (Cmd+Q/Exit)
- Check JSON syntax in config file
- Ensure RuvScan API is running:
curl http://localhost:8000/health
Check API connectivity:
# Verify RuvScan API is accessible
curl http://localhost:8000/health
# Check Docker containers
docker compose ps
# View API logs
docker compose logs mcp-serverError: 401 Unauthorized or rate limiting
-
Verify your GitHub token has correct permissions:
- Go to https://github.com/settings/tokens
- Token needs:
public_repo,read:org,read:user
-
Update your configuration:
# For Claude Code CLI
claude mcp remove ruvscan
claude mcp add ruvscan --scope user --env GITHUB_TOKEN=ghp_new_token -- uvx ruvscan-mcp
# For Claude Desktop - edit config file and restartError: Connection refused to localhost:8000
Make sure the RuvScan API backend is running:
# Start the backend
cd ruvscan
docker compose up -d
# Verify it's running
curl http://localhost:8000/health
# Should return: {"status":"healthy","version":"0.5.0",...}If query_leverage returns nothing:
- The database might be empty - scan some repos first:
# Via API
curl -X POST http://localhost:8000/scan \
-H "Content-Type: application/json" \
-d '{
"source_type": "org",
"source_name": "openai",
"limit": 10
}'
# Or via Claude
> Scan the openai GitHub organization- Wait for the scan to complete (check logs)
- Try your query again
In Claude:
I'm building an AI application and my context retrieval from the vector
database is too slow. Can you help me find tools that could speed this up?
RuvScan will:
- Query for relevant repos
- Find sublinear algorithms
- Suggest creative solutions from other domains
- Explain how to integrate them
In Claude:
Scan the anthropics organization and then show me what AI tools they have
that could help with prompt engineering
RuvScan will:
- Scan all Anthropics repos
- Filter for prompt engineering tools
- Show leverage opportunities
- Explain integration
In Claude:
I'm trying to choose between FastAPI and Flask for my new API.
Can you compare them for me?
RuvScan will:
- Compare the repositories
- Show similarity scores
- Highlight key differences
- Suggest which fits your use case
- Install Claude Code extension
- Configure RuvScan MCP server
- As you code, ask Claude about tools:
> What libraries could help me optimize this database query?
Same configuration as Claude Desktop - add to Cursor's MCP settings.
Add RuvScan to your Codex MCP configuration.
- Main README - Full project documentation
- API Reference - HTTP API documentation
- Architecture - How RuvScan works
- MCP Protocol - Model Context Protocol docs
- Issues: https://github.com/ruvnet/ruvscan/issues
- Discussions: https://github.com/ruvnet/ruvscan/discussions
- MCP Docs: https://docs.claude.com/mcp
Quick Start Summary:
# 1. Start RuvScan backend
docker compose up -d
# 2. Install MCP server
claude mcp add ruvscan --scope user --env GITHUB_TOKEN=ghp_token -- uvx ruvscan-mcp
# 3. Use in Claude
claude
> Scan the openai organization and find tools for real-time AI🎉 You're ready to discover sublinear leverage!