Algora MCP Server

March 5, 2026 · View on GitHub

An MCP (Model Context Protocol) server that gives AI agents direct access to Algora's open-source bounty platform. Use it from Claude Desktop, Cursor, Windsurf, or any MCP-compatible client to discover, search, and analyze open bounties.

What It Does

AI agents can call five tools:

ToolWhat It Does
list_bountiesBrowse open bounties with filters (org, amount, tech)
get_org_bountiesGet all bounties for a specific org (cal.com, supabase, etc.)
search_bountiesKeyword search across titles, descriptions, repos
get_top_bountiesHighest-value open bounties, sorted by reward
get_bounty_statsAggregate stats: total value, by tech, by org

Requirements

  • Node.js 18+
  • No API key required — Algora's public API is open

Quick Start

git clone https://github.com/idapixl/algora-mcp-server
cd algora-mcp-server
npm install
npm run build

Claude Desktop Config

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "algora": {
      "command": "node",
      "args": ["/absolute/path/to/algora-mcp-server/dist/index.js"]
    }
  }
}

Cursor / Windsurf Config

Add to your MCP settings:

{
  "algora": {
    "command": "node",
    "args": ["/absolute/path/to/algora-mcp-server/dist/index.js"]
  }
}

Example Agent Interactions

Find high-value TypeScript bounties:

"Show me open bounties worth $200+ in TypeScript"

The agent will call get_top_bounties({ tech: "typescript", min_amount: 200 }) and return formatted results.

Check a specific org:

"What bounties does projectdiscovery have open?"

Calls get_org_bounties({ org: "projectdiscovery" }).

Search by domain:

"Find bounties related to MCP or model context protocol"

Calls search_bounties({ keyword: "MCP" }).

Market overview:

"What's the total value of all open bounties on Algora?"

Calls get_bounty_stats({}) and returns counts, total, average, breakdown by tech and org.

Tool Reference

list_bounties

ParameterTypeDefaultDescription
orgstringOrg slug (e.g., "cal", "supabase")
status"open" | "completed" | "all""open"Bounty status
limitnumber20Results per page (1–100)
cursorstringPagination cursor
min_amountnumberMinimum USD amount
max_amountnumberMaximum USD amount
techstringTech filter (e.g., "typescript")

get_org_bounties

ParameterTypeRequiredDescription
orgstringYesOrg slug from Algora URL
statusstringNoDefault: "open"
limitnumberNoDefault: 50

search_bounties

ParameterTypeRequiredDescription
keywordstringYesSearch term
techstringNoTech stack filter
min_amountnumberNoMin USD
limitnumberNoDefault: 30

get_top_bounties

ParameterTypeDefaultDescription
techstringTech filter
min_amountnumber100Min USD
limitnumber10How many to return

get_bounty_stats

ParameterTypeDescription
orgstringScope to org. Omit for all.

Development

npm run dev      # Run with tsx (no build step)
npm run build    # Compile TypeScript
npm run typecheck  # Type check without emitting

Architecture

The server uses stdio transport (standard MCP convention) — no HTTP server, no port, no configuration. It communicates with the MCP client through stdin/stdout and connects to Algora's public API (no auth required).

The @algora/sdk tRPC client handles API calls. Local filtering is applied in-memory for features the API doesn't natively support (keyword search, min/max amount).

License

MIT