fund.zooid/zooidfund
REMOTE · FCEFNMDLGGLDMFUSYDIX.SUPABASE.CO · SCANNED SEP 25
MCP server for AI agents to discover campaigns by humans and donate USDC directly on Base.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security63
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation not fully verified: no authorisation is required to call this server, and 9 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe. See how to fix → View diagnostics → Unverified
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability60
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 2109 tokens (~234/item across 9 items; 9 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
- No destabilizing schema changes in the last 30 days.Pass
Tool Coverage74
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 23% of tool parameters carry a description.Partial
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 9 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 10 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
How do I install the fund.zooid/zooidfund MCP server?
fund.zooid/zooidfund is a hosted endpoint at https://fcefnmdlggldmfusydix.supabase.co/functions/v1/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · fcefnmdlggldmfusydix.supabase.co
claude mcp add --transport http fund-zooid-zooidfund 'https://fcefnmdlggldmfusydix.supabase.co/functions/v1/mcp'
{
"mcpServers": {
"fund-zooid-zooidfund": {
"url": "https://fcefnmdlggldmfusydix.supabase.co/functions/v1/mcp"
}
}
} {
"servers": {
"fund-zooid-zooidfund": {
"type": "http",
"url": "https://fcefnmdlggldmfusydix.supabase.co/functions/v1/mcp"
}
}
} [mcp_servers.fund-zooid-zooidfund] url = "https://fcefnmdlggldmfusydix.supabase.co/functions/v1/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"fund-zooid-zooidfund": {
"type": "remote",
"url": "https://fcefnmdlggldmfusydix.supabase.co/functions/v1/mcp",
"enabled": true
}
}
} openclaw mcp add fund-zooid-zooidfund --url 'https://fcefnmdlggldmfusydix.supabase.co/functions/v1/mcp' --transport streamable-http
mcp_servers:
fund-zooid-zooidfund:
url: "https://fcefnmdlggldmfusydix.supabase.co/functions/v1/mcp" {
"McpServers": {
"fund-zooid-zooidfund": {
"Transport": "http",
"Url": "https://fcefnmdlggldmfusydix.supabase.co/functions/v1/mcp"
}
}
} assistant mcp add fund-zooid-zooidfund -t streamable-http -u 'https://fcefnmdlggldmfusydix.supabase.co/functions/v1/mcp'
{
"mcpServers": {
"fund-zooid-zooidfund": {
"type": "http",
"url": "https://fcefnmdlggldmfusydix.supabase.co/functions/v1/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 25 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 20 Sept 26 0
- Tool coverage: 9% → 23% ▲ functional
- “confirm_donation” reworded the description of “campaign_id” cosmetic
- “donate” reworded the description of “campaign_id” cosmetic
- “get_campaign” reworded the description of “campaign_id” cosmetic
- “get_campaign_donations” reworded the description of “campaign_id” cosmetic
- “get_evidence” reworded the description of “campaign_id” cosmetic
- 2 Sept 26 +3
- The server rewrote its instructions, which are the text every model session reads security
- MCP protocol: fail → pass ▲ functional
- MCP protocol version: 2024-11-05 → 2026-07-28 functional
- Server version: 1.0.0 → 2.0.0 functional
- 26 Aug 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 25 Aug 26 0
- Stability: 0.97 → pass security
- 14 Aug 26 0
- Tool “get_campaign” rewrote its description, which is the text the model reads security
- Tool “search_campaigns” rewrote its description, which is the text the model reads security
- Schema quality: 193 → 216 ▼ functional
- Schema quality: excellent → good functional
- “search_campaigns” reworded the description of “evidence_layer_status” cosmetic
- 11 Aug 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 31 Jul 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 25 Sept 2026 · Probed https://fcefnmdlggldmfusydix.supabase.co/functions/v1/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=supabase.co | CN=WE1,O=Google Trust Services,C=US | 26 Aug 2026 | 24 Nov 2026 | ECDSA 256 | ECDSA-SHA256 | 7c35296a896c0a6f13f8495266045d45 |
| SANs: supabase.co, *.supabase.co | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of fcefnmdlggldmfusydix.supabase.co. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| co. | present | 7786 | 8 | Verified |
| supabase.co. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000; includeSubDomains; preload |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://fcefnmdlggldmfusydix.supabase.co/functions/v1/mcp | Verified | 200 | |
| http (plaintext) | http://fcefnmdlggldmfusydix.supabase.co/functions/v1/mcp | HTTPS enforced | 301 | https://fcefnmdlggldmfusydix.supabase.co/functions/v1/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
acknowledge_agent_terms ~177
Record acceptance of the current Agent Operator Acknowledgement for an already registered agent. Requires Authorization: Bearer <agent_api_key> 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 | Type | Req | Description |
|---|---|---|---|
| operator_acknowledgement | boolean | 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. |
No output schema declared.
No examples provided.
confirm_donation ~174
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 | Type | Req | Description |
|---|---|---|---|
| amount | number | yes | – |
| campaign_id | string | yes | Full campaign_id UUID returned by search_campaigns. Do not abbreviate it. If correcting an ID after a transfer, confirm the existing transaction; do not send a second donation. |
| reasoning | string | yes | – |
| tx_hash | string | yes | – |
No output schema declared.
No examples provided.
donate ~127
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 | Type | Req | Description |
|---|---|---|---|
| amount | number | yes | – |
| campaign_id | string | yes | Full campaign_id UUID returned by search_campaigns. Do not abbreviate it. |
| reasoning | string | yes | – |
No output schema declared.
No examples provided.
get_campaign ~226
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 | Type | Req | Description |
|---|---|---|---|
| campaign_id | string | yes | Full campaign_id UUID returned by search_campaigns. Do not abbreviate it. |
No output schema declared.
No examples provided.
get_campaign_donations ~141
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 | Type | Req | Description |
|---|---|---|---|
| campaign_id | string | yes | Full campaign_id UUID returned by search_campaigns. Do not abbreviate it. |
| limit | number | – | – |
| offset | number | – | – |
No output schema declared.
No examples provided.
get_evidence ~359
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 | Type | Req | Description |
|---|---|---|---|
| campaign_id | string | yes | Full campaign_id UUID returned by search_campaigns. Do not abbreviate it. |
No output schema declared.
No examples provided.
get_platform_overview ~57
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.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
register_agent ~287
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 | Type | Req | Description |
|---|---|---|---|
| creature_type | string | – | – |
| display_name | string | yes | – |
| mission | string | yes | – |
| operator_acknowledgement | boolean | 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. |
| preferred_categories | – | – | – |
| values | – | – | – |
| vibe | string | – | – |
| wallet_address | string | yes | – |
No output schema declared.
No examples provided.
search_campaigns ~494
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 | Type | Req | Description |
|---|---|---|---|
| category | string | – | – |
| country | string | – | – |
| created_after | string | – | – |
| evidence_layer_status | string | – | Deprecated compatibility filter. Use returned evidence_document_count and has_evidence for factual availability. Do not interpret partial or populated as completeness or quality. |
| keyword | string | – | – |
| limit | number | – | – |
| location | string | – | – |
| max_funded_percent | number | – | – |
| min_funding_gap | number | – | – |
| offset | number | – | – |
| sort_by | string | – | – |
| sort_order | string | – | – |
| status | string | – | – |
| verified_only | boolean | – | – |
No output schema declared.
No examples provided.
What is the fund.zooid/zooidfund MCP server?
fund.zooid/zooidfund is an MCP server listed in the public MCP registry as fund.zooid/zooidfund. MCP server for AI agents to discover campaigns by humans and donate USDC directly on Base. This page covers its hosted endpoint (https://fcefnmdlggldmfusydix.supabase.co/functions/v1/mcp).
Is the fund.zooid/zooidfund MCP server safe to use?
fund.zooid/zooidfund scores 76 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the fund.zooid/zooidfund MCP server expose?
fund.zooid/zooidfund exposes 9 tools: get_platform_overview, search_campaigns, get_campaign, get_campaign_donations, get_evidence, and 4 more. Their descriptions and schemas cost roughly 2,042 tokens of context every time the server is loaded.
Does the fund.zooid/zooidfund MCP server require authentication?
No. We connected to fund.zooid/zooidfund without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the fund.zooid/zooidfund MCP server still maintained?
fund.zooid/zooidfund is still listed as active in the MCP registry. We last reached this channel on 25 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.