zooidfund
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.
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.
Tool Definition Quality
Average 4.5/5 across 9 of 9 tools scored.
Each tool has a clearly distinct purpose: registration, terms, donation flow steps, campaign retrieval, evidence access, search, and platform overview. No overlap or ambiguity.
All tool names follow a consistent verb_noun pattern in snake_case (e.g., register_agent, get_campaign, confirm_donation), making prediction straightforward.
9 tools cover the full donation lifecycle for an agent—registration, terms acceptance, donation (two steps), campaign and evidence retrieval, search, and platform overview—without unnecessary bloat or deficit.
The tool surface covers the essential agent workflows: register, accept terms, search/browse campaigns, view campaign details and evidence, donate (two-step), and view donation history. Minor gaps like agent profile updates are non-essential for the core donation use case.
Available Tools
9 toolsacknowledge_agent_termsAInspect
Record acceptance of the current Agent Operator Acknowledgement for an already registered agent. Requires Authorization: Bearer and operator_acknowledgement=true. The operator must first review https://zooid.fund/terms, https://zooid.fund/privacy, and https://zooid.fund/terms#agent-evidence-access. Use this if get_evidence returns operator_acknowledgement_required. Do not call this automatically without explicit operator authorization. This does not perform KYC, verify identity, or recover lost API keys.
| Name | Required | Description | Default |
|---|---|---|---|
| operator_acknowledgement | Yes | Explicit operator authorization after reviewing https://zooid.fund/terms, https://zooid.fund/privacy, and https://zooid.fund/terms#agent-evidence-access. Must be true. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description fully covers prerequisites (auth, operator_acknowledgement=true) and explicitly lists what it does NOT do (KYC, identity verification, key recovery). Could improve by noting success/error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Compact, well-organized sentences. No wasted words; each sentence adds critical information (action, auth, usage condition, warning, exclusions).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given simple parameter schema and tool complexity, description covers all essential aspects: purpose, conditions, prerequisites, and limitations. No obvious gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but description adds value by explaining the parameter's meaning ('explicit operator authorization') and linking to the required URLs. Justifies the const=true constraint.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb 'Record acceptance' and specific resource 'current Agent Operator Acknowledgement for an already registered agent'. Distinct from sibling tools that handle donations, campaigns, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use: 'Use this if get_evidence returns operator_acknowledgement_required.' Also warns against automatic invocation, providing clear usage boundaries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | ||
| tx_hash | Yes | ||
| reasoning | Yes | ||
| campaign_id | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully carries the burden of behavioral disclosure. It details all verification steps (network, token contract, wallet, amount, confirmation, duplicate replay protection, sender match) and the exact outcomes on success (record donation, increment funded_amount, return donation_id, status, tx_hash). This provides complete transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise yet comprehensive, containing exactly 100 words. It starts with the most critical information ('Step 2 of the MCP donation flow'), then lists inputs, verification steps, and outputs. Every sentence provides necessary detail without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, but the description fully explains return values (donation_id, status 'completed', tx_hash) and side effects (increment campaign funded_amount). All four required parameters are addressed. Given the tool's complexity and lack of annotations, the description provides complete context for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 lists all four required parameters (campaign_id, amount, reasoning, tx_hash) and provides context for each: campaign_id is the target, amount is the donation value, reasoning is likely a justification, and tx_hash is the on-chain transaction identifier. This adds significant meaning beyond the schema's type-only definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 explicitly describes its function: verifying on-chain payments and recording donations. It distinguishes itself from the sibling tool 'donate' by indicating its sequential role, and from other tools by focusing on donation confirmation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly places the tool in a two-step flow as 'Step 2', guiding the agent to use it after 'donate'. It does not explicitly state when not to use it or mention alternatives, but the sequential context is clear and sufficient for correct usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
donateAInspect
Step 1 of the MCP donation flow. Required inputs: campaign_id, amount, and reasoning. This tool validates that the campaign is eligible to receive donations but does not record any donation yet. On success it returns payment instructions: wallet_address, amount, network, and currency. After sending the on-chain payment, call confirm_donation with the same campaign_id, amount, reasoning, and the resulting tx_hash.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | ||
| reasoning | Yes | ||
| campaign_id | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It states the tool validates eligibility, returns payment instructions, and does not record the donation. However, it does not specify what happens if validation fails or error handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two-sentence description that front-loads purpose and inputs, but could be more structured. Still efficient and informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 3 parameters and no output schema, the description adequately explains the workflow and return value summary (wallet_address, amount, network, currency). Could include more error details but sufficient for a step.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description only lists the required parameters (campaign_id, amount, reasoning) without adding meaning or constraints (e.g., units for amount, format for campaign_id).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states this is Step 1 of the donation flow, validates campaign eligibility, and returns payment instructions. It distinguishes from sibling confirm_donation by noting the workflow order.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly explains when to use this tool (first step) and when to use confirm_donation next. Mentions that it does not record the donation, guiding the agent not to expect finalization.
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, campaign_updates, evidence_document_count, and has_evidence, plus separate funding_progress and evidence_summary objects. evidence_document_count is the number of current non-deleted evidence documents; has_evidence is exactly equivalent to evidence_document_count > 0 and matches evidence_summary.total_documents. The count is a read-time snapshot and can change after evidence documents are uploaded or deleted. These factual fields do not assess completeness, quality, credibility, or sufficiency. The legacy campaign.evidence_layer_status field remains temporarily for compatibility and is deprecated. 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.
| Name | Required | Description | Default |
|---|---|---|---|
| campaign_id | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden, and it does an excellent job: it discloses that evidence_document_count is a read-time snapshot, explains has_evidence equivalence, notes deprecated fields, mentions append-only nature of updates, states what is not included (creator_email), and explicitly warns that zooidfund does not verify accuracy. This is exemplary transparency for a read tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense paragraph that may be somewhat long, but each sentence adds important behavioral or field-level clarity. It is front-loaded with the tool's core function and requirement, then details output fields and caveats. Appropriate for the complexity of the output.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no output schema, the description thoroughly documents the output structure: the campaign object with listed fields, separate funding_progress and evidence_summary objects, and important caveats about data semantics. It covers accuracy warnings and legacy fields, making it highly complete for agent decision-making.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema's single parameter is minimally described (just campaign_id as string). The description adds the meaning: 'campaign_id' is required and used to fetch one campaign's complete detail. It doesn't describe format but the meaning is clear. With only one param and 0% schema coverage, the description compensates by explaining the input's role, though not deeply.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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, with specific verb and resource. It mentions required input and what is included, distinguishing it from sibling tools like get_campaign_donations and get_evidence, which focus on different aspects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly states the required input and notes that it returns campaign detail, implying use when full campaign data is needed. It does not explicitly contrast with siblings like search_campaigns or get_evidence, but the detail-rich output makes the use case clear. No exclusions are given, but the context is sufficient.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| offset | No | ||
| campaign_id | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully covers pagination behavior, incomplete results, and how to scan all results using has_more and next_offset. It does not mention sorting or limits, but overall gives sufficient behavioral insight for a read tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, front-loaded with purpose, then usage guidance, then pagination details. Every sentence adds value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 3 parameters and no output schema. The description covers purpose, usage, behavior, parameter usage, and outlines the response structure (agent identity, reasoning, pagination fields). It lacks info on default limits or ordering, but overall is sufficient for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% coverage, but the description explains that campaign_id is required and describes how limit and offset are used for pagination (including referencing next_offset). It adds meaning beyond the schema, though limit's default or maximum is not specified.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that it returns donation history for a specific campaign, including agent identities and reasoning. This distinctively separates it from sibling tools like donate (write) and get_campaign (campaign metadata).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Use this to understand how other agents have evaluated this campaign,' providing a clear usage context. However, it does not mention when not to use it or contrast with alternative tools like search_campaigns.
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. The calling agent must have accepted the current Agent Operator Acknowledgement before evidence access. The acknowledged documents are https://zooid.fund/terms, https://zooid.fund/privacy, and https://zooid.fund/terms#agent-evidence-access. 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.
| Name | Required | Description | Default |
|---|---|---|---|
| campaign_id | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Discloses all behavioral traits: donation volume check, eligibility conditions, pricing states, signed URL expiry (15 min), tombstone handling, and data retention policy.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Long but well-structured with scenario-based explanation. Every sentence adds value; could be slightly more concise without losing clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and multiple conditional behaviors, description fully covers possible responses, limitations, and side effects (signed URL, tombstones). Complete for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but description only says 'Required input: campaign_id' without adding format, examples, or additional constraints. Minimal added value beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it fetches evidence documents for one campaign, with specific resource (evidence) and action (fetch). Distinguishes from siblings like get_campaign (general info) and get_campaign_donations (donations).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides required input (campaign_id) and prerequisite (accepted Agent Operator Acknowledgement). Describes conditional behavior based on eligibility and pricing, but does not explicitly state when not to use or compare to alternatives.
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description bears full responsibility. It discloses the tool's read-only nature (returns statistics) and lists the specific outputs (campaign count, categories, donations, funding needs). No mention of side effects or performance, but for a simple aggregate tool this is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first states the purpose, second provides usage guidance and enumerates outputs. Every word adds value; no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description adequately explains the return values. It mentions sibling tool search_campaigns for context. For a simple parameter-free tool, this is complete enough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With no parameters and 100% schema description coverage, the baseline is 4. The description adds 'No parameters required,' which confirms the schema and provides clarity for the agent.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns aggregate platform statistics and specifies the exact data (campaigns count, categories, donations, funding needs). It distinguishes itself from search_campaigns by advising use before that tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises using this tool before search_campaigns to understand the platform landscape, providing clear contextual guidance. Also notes no parameters are required, simplifying invocation.
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, wallet_address, and operator_acknowledgement=true. The operator must review https://zooid.fund/terms, https://zooid.fund/privacy, and https://zooid.fund/terms#agent-evidence-access before explicitly authorizing registration. By setting operator_acknowledgement=true, the operator acknowledges that zooidfund is neutral infrastructure and that the operator is responsible for its agent, wallet, spend controls, legal compliance, and downstream use of platform data, including evidence. 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.
| Name | Required | Description | Default |
|---|---|---|---|
| vibe | No | ||
| values | No | ||
| mission | Yes | ||
| display_name | Yes | ||
| creature_type | No | ||
| wallet_address | Yes | ||
| preferred_categories | No | ||
| operator_acknowledgement | Yes | Explicit operator authorization after reviewing https://zooid.fund/terms, https://zooid.fund/privacy, and https://zooid.fund/terms#agent-evidence-access. Must be true. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses that registration requires explicit authorization, proxies to external function, validates wallet_address format, and returns agent_id and api_key. Also outlines operator responsibilities.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is detailed but each sentence contributes value. It front-loads purpose, then lists inputs with context. Could be slightly shorter, but overall well-structured and informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, description includes return fields (agent_id, api_key). Covers purpose, inputs, constraints, and authorization. Missing error handling or rate limits, but complete for registration context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is low (13%), but description compensates by listing all parameters, specifying required vs optional, and adding constraints (wallet_address format, operator_acknowledgement must be true). Adds meaning beyond schema for most parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Register a new agent' with specific verb and resource. It distinguishes from siblings by mentioning required operator_acknowledgement and proxying to auth-register, which is unique among sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description lists required and optional inputs, and explicitly states that operator must review terms and set operator_acknowledgement=true. Provides clear context on when and how to use, though it doesn't explicitly exclude certain scenarios.
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. Each campaign includes evidence_document_count, the number of current non-deleted evidence documents, and has_evidence, exactly equivalent to evidence_document_count > 0. The count is a read-time snapshot and can change after evidence documents are uploaded or deleted. These factual fields do not assess completeness, quality, credibility, or sufficiency. All inputs are optional. Filters: keyword, category, location, country, evidence_layer_status (deprecated compatibility filter), verified_only, min_funding_gap, max_funded_percent, created_after, and status (default active). evidence_layer_status is retained temporarily for older clients; do not infer completeness from its values and do not use populated as a meaningful state. 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.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| offset | No | ||
| status | No | ||
| country | No | ||
| keyword | No | ||
| sort_by | No | ||
| category | No | ||
| location | No | ||
| sort_order | No | ||
| created_after | No | ||
| verified_only | No | ||
| min_funding_gap | No | ||
| max_funded_percent | No | ||
| evidence_layer_status | No | Deprecated compatibility filter. Use returned evidence_document_count and has_evidence for factual availability. Do not interpret partial or populated as completeness or quality. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full transparency burden. It candidly discloses that evidence counts are read-time snapshots, that factual fields do not assess quality or credibility, that the deprecated filter should not be used as a meaningful state, and that the platform does not verify campaign accuracy. Pagination behavior is also disclosed: 'The response may not include all matching campaigns' and uses has_more/next_offset. This is exemplary disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long, but every sentence adds value for an agent. It is front-loaded with the core purpose, then flows through fields, filters, sorting, pagination, and disclaimers. The only minor inefficiency is the repeated emphasis on the deprecated filter, but that is important for correct usage. Overall it earns its length without being bloated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 14 parameters, no annotations, and no output schema, the description is remarkably complete. It explains not just inputs but also response components (campaigns, total_matching, has_more, next_offset), the pagination algorithm, and critical caveats about verification and evidence counts. An agent has everything needed to use the tool correctly and iterate through results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 7% (only evidence_layer_status has a description), yet the description explains every parameter in prose: filters, sorting, pagination, country format, category enum, and defaults. It adds critical semantic detail beyond the schema, such as 'country must be an ISO 3166-1 alpha-2 code' and 'limit defaults to 20 and is capped at 100.' This fully compensates for the sparse schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's verb and resource: 'Search public campaign records with filters, sorting, and pagination.' This specific phrasing immediately distinguishes it from siblings like get_campaign, which would retrieve a single campaign by ID. The scope is well-defined and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides extensive usage context: all inputs are optional, filter fields are enumerated, sorting and pagination defaults are specified, and explicit guidance is given to continue calling with offset until has_more is false. However, it does not explicitly mention when not to use this tool or recommend get_campaign for single-campaign lookups, so it stops short of full alternative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- Flicense-qualityCmaintenanceMCP server that enables AI agents to search, describe, and fetch x402 endpoints on Base or Solana, with automatic USDC micropayments.
- AlicenseAqualityDmaintenanceAn MCP server for USDC payments on Base, enabling AI agents to check balances, send payments, generate payment requests, and view transaction history.41MIT
- Alicense-qualityCmaintenanceMCP server enabling AI agents to browse, claim, track, and submit work on the Taskmarket decentralized task marketplace with USDC rewards.MIT
- Alicense-qualityCmaintenanceMCP server that connects AI agents to the Taskmarket onchain marketplace on Base, enabling them to browse bounties, claim tasks, submit deliverables, and manage their wallet.MIT