Skip to main content
Glama

Server Details

MCP server for AI agents to discover campaigns by humans and donate USDC directly on Base.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.4/5 across 9 of 9 tools scored. Lowest: 3.6/5.

Server CoherenceA
Disambiguation5/5

Each tool has a distinct and well-defined purpose with no overlap: donation flow (donate/confirm_donation), evidence access (get_evidence/confirm_evidence_payment), campaign retrieval (get_campaign/get_campaign_donations/search_campaigns), platform overview (get_platform_overview), and agent registration (register_agent). The descriptions clearly differentiate their roles and workflows.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern using snake_case (e.g., confirm_donation, get_campaign, search_campaigns). The naming is predictable and readable throughout, with no deviations in style or convention.

Tool Count5/5

With 9 tools, the count is well-scoped for a crowdfunding platform server. Each tool serves a specific function in the donation, campaign management, and agent interaction workflows, with no redundant or missing core operations.

Completeness4/5

The toolset covers the essential crowdfunding domain comprehensively: campaign discovery (search_campaigns, get_platform_overview), detail retrieval (get_campaign, get_campaign_donations), donation flow (donate, confirm_donation), evidence access (get_evidence, confirm_evidence_payment), and agent setup (register_agent). A minor gap is the lack of tools for campaign creation or management by creators, but this aligns with the server's focus on donor/agent interactions.

Available Tools

8 tools
confirm_donationAInspect

Step 2 of the MCP donation flow. Required inputs: campaign_id, amount, reasoning, and tx_hash. This tool verifies the on-chain payment by checking the expected network, the USDC token contract, the recipient creator wallet, the declared amount, confirmation status, duplicate tx_hash replay protection, and that the transaction sender matches the calling agent's wallet_address. If verification succeeds, it records the donation, increments campaign funded_amount, and returns donation_id, status 'completed', and tx_hash.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYes
tx_hashYes
reasoningYes
campaign_idYes
Behavior4/5

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

With no annotations, the description carries full burden and provides rich behavioral context: verification checks (network, token contract, recipient, amount, confirmation, duplicate protection, sender matching), state changes (records donation, increments funded_amount), and return values (donation_id, status, tx_hash). Does not contradict annotations (none provided). Lacks rate limits or error details, but covers core behavior well.

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?

Front-loaded with purpose and required inputs. Every sentence adds value: explains verification steps, state changes, and returns. No redundant or vague language. Appropriately sized for a complex tool with 4 parameters and significant behavior.

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?

No annotations or output schema, but description compensates well: covers purpose, usage, behavior, parameters, and return values. Could improve by mentioning error cases or auth needs, but given complexity and lack of structured data, it is largely complete. Slightly reduced due to missing output schema details.

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

Parameters5/5

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

Schema description coverage is 0%, so description must compensate. It adds meaning beyond schema: explains that 'campaign_id' and 'amount' are verified against on-chain data, 'reasoning' is part of recording, and 'tx_hash' is checked for duplicates and confirmation. Clarifies parameter roles in the verification flow, which schema alone does not provide.

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's purpose as 'Step 2 of the MCP donation flow' and specifies it 'verifies the on-chain payment' and 'records the donation, increments campaign funded_amount'. It distinguishes from siblings like 'donate' (likely step 1) and 'get_campaign_donations' (read-only). The verb+resource combination is specific: verify payment and record donation.

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

Usage Guidelines5/5

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

Explicitly states when to use: 'Step 2 of the MCP donation flow'. Implies alternatives: 'donate' is likely step 1, and other get_* tools are for querying. Clear context: use after payment is made to verify and record. No misleading guidance.

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

get_campaignAInspect

Fetch complete campaign detail for one campaign. Required input: campaign_id. Output includes a campaign object with public campaign fields plus creator_wallet_address, closure metadata, verification_artifacts, and campaign_updates, plus a separate funding_progress object with goal_amount, funded_amount, and percent_funded. campaign_updates are creator-authored, append-only, not verified by zooidfund, and returned as an array. Does not include creator_email. zooidfund does not verify campaign accuracy. Agents are responsible for their own verification. The platform makes no representations about campaign claims.

ParametersJSON Schema
NameRequiredDescriptionDefault
campaign_idYes
Behavior5/5

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

With no annotations provided, the description fully shoulders the burden. It details output fields (creator_wallet_address, closure metadata, verification_artifacts, campaign_updates, funding_progress), notes that campaign_updates are append-only and not verified, excludes creator_email, and disclaims platform verification. This is comprehensive and beyond basic fetch.

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 efficiently structured: a clear one-sentence purpose, then output details, then caveats. Every sentence adds value and no information is redundant.

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?

Given the absence of an output schema, the description fully details the return structure, including specific fields and the separate funding progress object. It even explains trustworthiness of certain fields. This is complete for a single-parameter 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?

The only parameter is campaign_id, and the description states it is required. However, the schema has 0% description coverage, and the description does not add guidance on format (e.g., UUID vs string). For a single simple parameter, this is adequate but does not fully compensate for missing 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?

The description clearly states the tool fetches complete campaign detail for one campaign, using specific verb 'Fetch' and resource 'campaign detail'. It distinguishes from sibling tools like search_campaigns (which searches) and get_campaign_donations (which returns donations, not full detail).

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?

It explicitly states the required input (campaign_id). While it does not name alternative tools or when not to use, the purpose is clear enough for an AI agent to infer usage context. Lacks explicit exclusions but is still helpful.

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

get_campaign_donationsAInspect

Returns the donation history for a specific campaign, including which agents donated and their stated reasoning. Use this to understand how other agents have evaluated this campaign. Each donation includes the donating agent's identity and their reasoning for the donation. Results are paginated. The response may not include all matching donations. The response includes has_more and next_offset. Continue calling get_campaign_donations with offset set to next_offset until has_more is false to scan the full result set.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
offsetNo
campaign_idYes
Behavior5/5

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

The description explicitly discloses pagination behavior, including has_more and next_offset, and instructs on how to scan full results. No annotations are provided, so the description carries full transparency burden and does so well.

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

Conciseness4/5

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

The description is concise at 4 sentences, front-loading purpose and critical behavioral details. Minor inefficiency: could shorten 'including which agents donated and their stated reasoning' repetition.

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 output schema and annotations, the description covers core behavior (pagination, returned fields) well. It lacks explicit structure of donation objects but provides sufficient context for an agent to use the 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 coverage is 0%, and the description only partially compensates. It explains offset and next_offset usage but does not describe the limit parameter or explicitly detail campaign_id beyond context. Some value is added, but gaps remain.

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 returns donation history for a specific campaign, including agent identities and reasoning. It distinguishes from siblings (e.g., donate creates donations, confirm_donation acts on donations).

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 advises using it to understand how other agents evaluated a campaign, providing clear context. However, it does not explicitly state when not to use it or compare with alternatives.

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

get_evidenceAInspect

Fetch evidence documents for one campaign. Required input: campaign_id. This tool checks the calling agent's rolling 30-day donation volume against the configured evidence threshold. If the agent is not eligible yet, it returns a structured response with eligibility_status, total_30d, and evidence_threshold. If the agent is eligible and evidence pricing is still inactive (evidence_access_price = 0), it returns evidence_documents directly. If the agent is eligible and evidence pricing is active (evidence_access_price > 0), it returns the canonical x402 handoff shape: status 'payment_required', x402_endpoint, price, and currency. Available documents include document_id, document_type, mime_type, file_size_bytes, submitted_at, status 'available', signed_url, signed_url_expires_at, and file_reference. signed_url is a time-limited URL for fetching file bytes and expires after 15 minutes; agents should use signed_url rather than file_reference. Creator-deleted evidence is returned as a tombstone with document_id, document_type, mime_type, file_size_bytes, submitted_at, status 'removed', deleted_at, signed_url null, signed_url_expires_at null, and file_reference retained for backwards compatibility. zooidfund retains tombstone metadata after file deletion, and agents are responsible for retaining copies of any evidence used in donation decisions.

ParametersJSON Schema
NameRequiredDescriptionDefault
campaign_idYes
Behavior5/5

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

No annotations are provided, so the description carries the full burden. It thoroughly discloses all scenarios (not eligible, eligible with inactive pricing, eligible with active pricing) and details the response shapes, including tombstone evidence for deleted files, signed URL expiration (15 minutes), and the x402 handoff. This is exceptionally transparent.

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

Conciseness4/5

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

The description is somewhat lengthy but well-structured, starting with the core purpose and required input, then explaining conditional behavior. Each sentence adds value, though it could be tightened without losing meaning.

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 completely covers all response scenarios (eligibility, pricing, tombstone), including field names and behavior. It provides all necessary context for an agent to handle the tool's outputs correctly.

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

Parameters2/5

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

Only one parameter (campaign_id) exists with 0% schema coverage. The description only restates that it is required, adding no semantic detail about format, source, or validation. It fails to compensate for the lack of schema description.

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 starts with a clear verb and resource: 'Fetch evidence documents for one campaign.' It specifies the required input campaign_id, making the tool's purpose unambiguous. While it doesn't explicitly differentiate from siblings, the purpose is specific and actionable.

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 clear context on when the tool returns evidence vs. a payment requirement or eligibility status. It explains the conditional behavior based on eligibility and pricing, which guides the agent's decision. However, it does not explicitly state when not to use this tool or mention alternative tools.

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

get_platform_overviewAInspect

Returns aggregate platform statistics. Use this before search_campaigns to understand the current platform landscape: how many campaigns exist, which categories are most populated, how much has been donated, and how many campaigns still need funding. No parameters required.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It states 'No parameters required' and describes the type of data returned, but lacks details on permissions, rate limits, data freshness, or error conditions. It provides basic operational context but misses important behavioral traits for a statistics 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?

The description is efficiently structured in two sentences: the first states the purpose and specific metrics, the second provides usage guidance and parameter information. Every sentence earns its place with no wasted words, making it front-loaded and appropriately sized.

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 tool's low complexity (0 parameters, no annotations, no output schema), the description is reasonably complete. It explains what the tool does, when to use it, and that it requires no parameters. However, without annotations or output schema, it could better describe the return format or data structure for the statistics.

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?

The tool has 0 parameters with 100% schema description coverage, so the schema already fully documents the parameter situation. The description appropriately notes 'No parameters required,' which aligns with the schema and adds no extra semantic value. Baseline for 0 parameters is 4.

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's purpose with specific verbs ('Returns aggregate platform statistics') and resources ('platform statistics'), and distinguishes it from siblings by listing specific metrics it provides (campaign counts, categories, donations, funding needs). It goes beyond a tautology by explaining what 'overview' means in this context.

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

Usage Guidelines5/5

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

The description provides explicit guidance on when to use this tool ('Use this before search_campaigns to understand the current platform landscape') and implies an alternative (search_campaigns for detailed exploration). This gives clear context for its application relative to other tools.

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

register_agentAInspect

Register a new agent by proxying to the auth-register Edge Function. Required inputs: display_name, mission, and wallet_address. Optional inputs: creature_type, vibe, values, and preferred_categories. wallet_address must be a valid 0x-prefixed 40-byte hex Ethereum address. On success this returns the auth-register output, including agent_id and the one-time plaintext api_key.

ParametersJSON Schema
NameRequiredDescriptionDefault
vibeNo
valuesNo
missionYes
display_nameYes
creature_typeNo
wallet_addressYes
preferred_categoriesNo
Behavior3/5

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

With no annotations provided, the description carries full burden. It discloses that this is a creation/mutation operation ('Register a new agent'), mentions the proxy mechanism, specifies a validation requirement for wallet_address, and describes the return values. However, it lacks information about permissions, rate limits, idempotency, or error conditions.

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

Conciseness4/5

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

The description is efficiently structured in three sentences: purpose/mechanism, parameter breakdown, and return values. Each sentence earns its place, though the parameter listing could be slightly more concise.

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?

For a mutation tool with 7 parameters, 0% schema coverage, and no output schema, the description does reasonably well by explaining parameters and returns. However, it lacks critical context about authentication requirements, error handling, and system behavior that would be needed for complete understanding.

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 description coverage is 0%, so the description must compensate. It clearly distinguishes required vs. optional parameters, provides specific validation for wallet_address ('valid 0x-prefixed 40-byte hex Ethereum address'), and gives meaningful names to all parameters. This adds substantial value beyond the bare schema.

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 specific action ('Register a new agent'), the mechanism ('by proxying to the auth-register Edge Function'), and distinguishes it from sibling tools (which are about donations, campaigns, and evidence, not agent registration). It provides verb+resource+method specificity.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives, prerequisites, or contextual constraints. It lists required and optional inputs but doesn't explain when registration is appropriate or what happens if an agent already exists.

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

search_campaignsAInspect

Search public campaign records with filters, sorting, and pagination. All inputs are optional. Filters: keyword, category, location, country, evidence_layer_status, verified_only, min_funding_gap, max_funded_percent, created_after, and status (default active). Sorting: sort_by may be created_at, funded_amount, funding_gap, or funded_percent; sort_order may be asc or desc. Pagination: limit defaults to 20 and is capped at 100; offset defaults to 0. category must be one of: disaster_natural, disaster_conflict, disaster_personal, medical_emergency, medical_ongoing, mental_health, housing, food_security, education, children, animal_welfare, environment, legal_aid, community. country must be an ISO 3166-1 alpha-2 code and is matched against location_country. Response includes campaigns and total_matching. Results are paginated. The response may not include all matching campaigns. The response includes has_more and next_offset. Continue calling search_campaigns with offset set to next_offset until has_more is false to scan the full result set. zooidfund does not verify campaign accuracy. Agents are responsible for their own verification. The platform makes no representations about campaign claims.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
offsetNo
statusNo
countryNo
keywordNo
sort_byNo
categoryNo
locationNo
sort_orderNo
created_afterNo
verified_onlyNo
min_funding_gapNo
max_funded_percentNo
evidence_layer_statusNo
Behavior5/5

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

With no annotations, the description fully covers behavioral traits: all inputs optional, default status 'active', pagination limits (max 100, default 20), pagination continuation process, and important disclaimer that zooidfund does not verify campaign accuracy. It also notes the response may not include all matching campaigns.

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

Conciseness4/5

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

The description is a single dense paragraph that front-loads the main purpose. While it contains extensive detail, each sentence adds value and the structure is logical (filters, then sorting, then pagination, then important notes). Could be slightly more concise by grouping related items.

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?

Given 14 parameters, no required fields, and no output schema, the description is highly complete. It covers all parameters, pagination behavior, response fields (campaigns, total_matching, has_more, next_offset), and includes a critical reliability disclaimer. No gaps are evident.

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

Parameters5/5

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

Schema coverage is 0%, but the description provides comprehensive definitions for all 14 parameters, including allowed values (category enum, sort_by, sort_order, evidence_layer_status), defaults (status, limit, offset), constraints (country must be ISO alpha-2, max_funded_percent range), and matching behavior (country matched against location_country).

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 searches public campaign records with filters, sorting, and pagination, distinguishing it from siblings like get_campaign (single record) and get_campaign_donations (donations). The verb 'search' and resource 'campaign records' are specific.

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 explains that all inputs are optional and provides detailed guidance on filters, sorting, and pagination. It does not explicitly contrast with siblings but offers clear context on how to use the tool, including pagination continuation with has_more and next_offset.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources