Candid for AI agents
Candid gives access to nonprofit sector data, letting an agent research organizations, funders, and funding opportunities using Candid's own knowledge base. Connect it once through Arc0, and your agent, or Claude, ChatGPT and Cursor, can use it through one MCP endpoint, limited to what each user approved.
What agents do in Candid.
Search for a nonprofit
Search for a nonprofit organization by name or focus area before drafting a grant proposal.
Identify organizations in a document
Identify organizations mentioned in a document, useful for cross-referencing a list of funders.
Look up sector taxonomy terms
Look up standard taxonomy terms for a cause area to classify a nonprofit correctly.
6 Candid actions, graded by risk.
Every Candid action is tagged read, write or destructive, so one policy covers the whole app and new actions inherit the right default.
read
3Look things up. Allowed by default.
- candid.search_organizationsSearch organizations
- candid.identify_locationsIdentify locations
- candid.identify_mentioned_organizationsIdentify mentioned organizations
write
3Create and change things. Allow, or ask the user first.
- candid.current_dateCurrent date
- candid.taxonomy_termsTaxonomy terms
- candid.knowledge_resourcesKnowledge resources
destructive
0Delete, cancel or archive. Ask first, or deny outright.
- No destructive actions.
Candid in three steps.
- 01Your users connect CandidThey sign in to Candid on Arc0 Connect, under your brand, and approve the access you ask for.
- 02You set the rulesReads run, and writes like “current date” can wait for the user to approve.
- 03Any agent can actYour agent calls Candid through the Arc0 SDK or MCP, and so can Claude, ChatGPT and Cursor. Every call lands on the audit log.
await arc0.policies.set('candid', { read: 'allow', write: 'ask', // current_date destructive: 'deny', }) # Claude Code: the same connection, one URL $ claude mcp add --transport http arc0 \ https://mcp.arc0.ai/u/u_8f2
How Candid connects.
Candid runs its own MCP server behind OAuth. Arc0 registers the client, users approve access on Arc0 Connect, and your agent reaches Candid through the same endpoint, policies and audit log as every other app.
The same Candid connection serves your agent over MCP and your own backend over REST and the proxy, so a user connects once. How Arc0 handles credentials →
- AUTH
- OAuth 2.0 (MCP)
- CREDENTIALS
- Per-tenant encrypted vault
- MODEL SEES
- Results only, never credentials
- AUDIT LOG
- Every call, on every plan
Use Candid from any agent.
More web data and scraping apps.
Candid and Arc0, answered.
Can I use Candid with Claude, ChatGPT or Cursor?
Yes. Connect Candid to Arc0 once, then add your Arc0 MCP URL to Claude, ChatGPT, Cursor, Claude Code or any other remote-MCP client. Each assistant only gets the Candid actions you allow.
How do users connect Candid?
Candid runs its own MCP server behind OAuth. Arc0 registers the client, users approve access on Arc0 Connect, and your agent reaches Candid through the same endpoint, policies and audit log as every other app.
Which Candid actions can my agent take?
6 in total: 3 read, 3 write and 0 destructive, such as “current date”. Your policies decide which of them each agent may call.
Can I make my agent read-only in Candid?
Yes. Allow read actions and deny writes in the Candid policy. Your agent can still look things up, and any write it attempts is blocked and logged.
Can my own backend call Candid too?
Yes. The same Candid connection is available over REST and through the Arc0 proxy, so your product and your agent share one connection per user.
Plug Candid into your agent.
Your users connect Candid once, under your brand. Your agent gets 6 actions behind your policies, with every call on the record.
Free to build · MCP + REST · Audit log on every plan