Skip to main content
Glama
idapixl

Algora MCP Server

by idapixl

Algora MCP Server

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:

Tool

What It Does

list_bounties

Browse open bounties with filters (org, amount, tech)

get_org_bounties

Get all bounties for a specific org (cal.com, supabase, etc.)

search_bounties

Keyword search across titles, descriptions, repos

get_top_bounties

Highest-value open bounties, sorted by reward

get_bounty_stats

Aggregate stats: total value, by tech, by org

Related MCP server: refinore-mcp

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

Parameter

Type

Default

Description

org

string

Org slug (e.g., "cal", "supabase")

status

"open" | "completed" | "all"

"open"

Bounty status

limit

number

20

Results per page (1–100)

cursor

string

Pagination cursor

min_amount

number

Minimum USD amount

max_amount

number

Maximum USD amount

tech

string

Tech filter (e.g., "typescript")

get_org_bounties

Parameter

Type

Required

Description

org

string

Yes

Org slug from Algora URL

status

string

No

Default: "open"

limit

number

No

Default: 50

search_bounties

Parameter

Type

Required

Description

keyword

string

Yes

Search term

tech

string

No

Tech stack filter

min_amount

number

No

Min USD

limit

number

No

Default: 30

get_top_bounties

Parameter

Type

Default

Description

tech

string

Tech filter

min_amount

number

100

Min USD

limit

number

10

How many to return

get_bounty_stats

Parameter

Type

Description

org

string

Scope 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

Available Tools

5 tools
get_bounty_statsA

Get aggregate statistics about open bounties: total count, combined value, average amount, breakdown by tech stack, and breakdown by organization. Useful for understanding the overall bounty landscape.

ParametersJSON Schema
NameRequiredDescriptionDefault
orgNoScope stats to a specific org slug. Omit for all orgs.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description must disclose behavior. It accurately describes a read-only aggregation operation with no side effects. However, it omits potential details like authentication or rate limits, which are not critical for this stat tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences: the first summarizes the tool's output, the second its utility. No extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description enumerates all key statistics returned (count, value, average, breakdowns), making the tool's output fully predictable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already describes the single optional parameter 'org' with clear semantics. The tool description adds no additional meaning beyond the schema, so baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves aggregate statistics about open bounties and lists specific metrics (count, value, average, breakdowns), effectively distinguishing it from sibling tools that focus on individual bounties.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description notes it is 'useful for understanding the overall bounty landscape,' implying use for high-level statistics rather than specific bounties. It could explicitly state when not to use it, but the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_org_bountiesB

Get all open bounties for a specific organization on Algora. Use this to check if a known project (cal.com, supabase, etc.) has active bounties you can claim.

ParametersJSON Schema
NameRequiredDescriptionDefault
orgYesOrg slug from their Algora URL (e.g., 'cal' for algora.io/cal).
statusNoBounty status filter. Default: 'open'.
limitNoMax results (1–100). Default: 50.

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description must disclose behavior. It mentions 'open bounties' but omits details like pagination, ordering, error handling, or rate limits. The default status is implied but not explicitly stated in the description (only in schema).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two succinct sentences that front-load the core purpose and provide a practical usage example. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the main functionality and parameter defaults, but lacks details on output format (no schema) and error conditions. For a simple retrieval tool, it is adequate but not fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (all parameters documented). The description adds contextual value: explains 'org' as a slug from Algora URL and gives default values for status and limit, enhancing agent understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves open bounties for a specific organization, using examples like 'cal.com' or 'supabase'. It differentiates from siblings by specifying organization-scoped retrieval, but does not explicitly contrast with sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Guidance is provided: 'Use this to check if a known project has active bounties'. However, it does not specify when not to use or suggest alternative tools like search_bounties for fuzzy queries.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_top_bountiesA

Get the highest-value open bounties on Algora, sorted by reward descending. Perfect for finding the most lucrative opportunities first.

ParametersJSON Schema
NameRequiredDescriptionDefault
techNoFilter by tech stack (e.g., 'typescript', 'rust').
min_amountNoMinimum USD amount to include. Default: 100.
limitNoHow many top bounties to return. Default: 10.

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description bears full burden. It does not mention read-only nature, authentication, rate limits, or any other behavioral traits beyond the basic operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no extraneous words, front-loaded with the core purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Simple tool with no output schema and no annotations; description states what is returned (top bounties sorted by reward) but omits details on return format or pagination, which may be needed for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema already describes all three parameters with 100% coverage; description adds no extra meaning for the parameters beyond the existing schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the tool retrieves the highest-value open bounties sorted by reward descending, distinguishing it from siblings like list_bounties or search_bounties.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says 'Perfect for finding the most lucrative opportunities first,' which implies a specific use case, but does not directly compare to alternatives or state when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_bountiesA

List open bounties on Algora. Optionally filter by organization slug, status, minimum/maximum amount in USD, or tech stack. Returns paginated results with reward amounts and issue URLs.

ParametersJSON Schema
NameRequiredDescriptionDefault
orgNoOrganization slug on Algora (e.g., 'cal', 'supabase', 'projectdiscovery'). Omit to browse all orgs.
statusNoBounty status. 'open'/'active' = claimable now. Default: 'open'.
limitNoMax results (1–100). Default: 20.
cursorNoPagination cursor from previous response's next_cursor.
min_amountNoMinimum bounty amount in USD (e.g., 200 for $200+).
max_amountNoMaximum bounty amount in USD.
techNoFilter by tech/language (e.g., 'typescript', 'python', 'rust').

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the burden. It discloses that results are paginated and include reward amounts and issue URLs, but it does not mention authentication requirements, rate limits, or any other constraints. The description is adequate for a read-only list endpoint.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, each serving a clear purpose: first states the action and platform, second details optional filters and output. No redundant or irrelevant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of an output schema, the description compensates by stating return fields (reward amounts, issue URLs) and pagination. It does not explain pagination cursor usage in detail, but the schema covers that. Overall, it provides sufficient context for a simple listing tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 7 parameters thoroughly. The description merely summarizes the filter options without adding significant new meaning beyond the schema. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists open bounties on Algora, specifies filtering options, and mentions pagination and return fields. It distinguishes itself from siblings by offering a broad listing with optional filters, not just per-org.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage by listing available filters but does not explicitly contrast with siblings or state when not to use. There is no direct guidance on choosing between list_bounties and similar tools like get_org_bounties.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_bountiesA

Search open bounties by keyword. Searches titles, descriptions, repo names, and org handles. Useful for finding bounties in a specific domain (e.g., 'database', 'MCP', 'authentication').

ParametersJSON Schema
NameRequiredDescriptionDefault
keywordYesSearch term to match against bounty content.
techNoFilter by tech stack (e.g., 'typescript', 'go').
min_amountNoMinimum bounty USD amount.
limitNoMax results. Default: 30.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must cover behavioral traits. It states the tool searches 'open bounties,' implying a read-only operation on a specific subset, which is adequate for a search tool. However, it does not discuss edge cases or idempotency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences with no wasted words. Each sentence adds value: core action, search scope, and usage context. It is front-loaded and easy to scan.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a search tool with no output schema or nested objects, the description covers the essential behavior and use case. It could mention result ordering or empty results, but the given context is sufficient for most agents.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Since schema coverage is 100%, the baseline is 3. The description adds no additional meaning beyond the schema's parameter descriptions; it merely restates the keyword concept.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it searches open bounties by keyword and specifies the fields searched (titles, descriptions, repo names, org handles). This distinguishes it from sibling tools like list_bounties or get_org_bounties, which filter by other criteria.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides good context on when to use the tool ('useful for finding bounties in a specific domain') with concrete examples. While it does not explicitly contrast with sibling tools, the purpose adequately guides the user.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A3.9/5.0
Disambiguation4/5

Tools are largely distinct, but get_org_bounties is essentially a filtered version of list_bounties, causing minor overlap. Overall, agents can distinguish purposes.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern (get/list/search + bounties/stats), making predictions easy.

Tool Count5/5

5 tools cover the querying needs for bounties without being excessive or minimal. Well-scoped for the domain.

Completeness4/5

The set covers key query operations (stats, filter, search, top). Missing a single-bounty detail tool, but the surface is otherwise complete for retrieval.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    An MCP server that enables AI agents to autonomously manage ORE mining on the Solana blockchain via the refinORE platform. It provides tools for starting mining sessions, monitoring rewards, and managing multi-token balances through natural language commands.
    12
    11
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    An MCP server that gives AI agents direct access to Polymarket Crypto prediction markets, enriched with live spot prices. Discover markets, analyze order books, paper trade strategies, track activity, and execute live trades — all through natural language.
    1
    AGPL 3.0

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/idapixl/algora-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server