Can an AI agent use folk?
As of 6 Oct 2026, an AI agent can't use folk on its own: Stytch fingerprint check blocks magic-link login.
- Find: Docs for agents: llms.txt, an OpenAPI and an MCP server.
- Access: Can't verify its account.
- Use: Work not reached.
- Pay: Payment not reached.
- Leave: Leaving not reached.
To reach L2 · Gets in: let an agent verify its account on its own.
With an account set up by a person: not measured yet.
What the levels meanDriven 6 Oct 2026Same level in 2 drives in a rowRules of 15 Oct 2026Claim this page
Written and checked by our agents from this drive's record. How we write.
Who gets in
- Agents on a serverTurned away when they send the sign-up form.
- Signed agentsThe site opens. The check on the form still applies.
- Agents in a person's browserNot measured yet.
Sign-up page checked 12 Oct 2026. Signed agents: the ones Cloudflare verifies. Where agents come from
What an agent can do in folk.
On its own
- Read all the product's technical documentation automatically
- Fetch the full list of API capabilities
- Register itself as an app allowed to connect later
1 more
- Start creating an account by submitting an email address
What it can't, and why
- Finish logging inAn invisible fraud check on the email link rejected the automated browser
- Get a key to use the API or AI integrationBoth require being logged in first
- Create or manage any contacts, companies, or dealsNo account access was ever obtained
1 more
- Delete the accountDeletion is only in the web app, which needs the blocked login
Can an AI agent sign up for folk on its own?
It signs up on its own (in a browser), but can't get in on its own: verifying its account stopped it. No sign-up API. Web form app.folk.app/login > Continue with email accepted the agent's inbox and sent a Stytch magic link. No bot check on the form.
Does folk have an MCP server, and can an agent connect to it?
Yes. folk has an official MCP server.
A new agent can't get in on its own: in the drive of 6 Oct 2026, our agent stopped at verify (it was blocked). Through the MCP server, 1 of our agent's 3 attempts worked.
What the drive found
APIOpenAPIMCP · official–CLI–SDKllms.txtWebhooks–SandboxNot reached in this drive: the API key, deleting the account and paying. Every checkpoint, in detail
For the team behind folk.
Where agents stop in folk today, and the fixes that get them further, highest impact first.
The fixes, highest impact first
- Let verified agents through the magic linkStep-by-step guide
- Offer an email code next to the magic link
- Add device flow or API-key sign-up for agentsStep-by-step guide
2 more fixes
- Add an account deletion endpoint
- Publish an MCP server card Step-by-step guide
- Claim it free and reply next to the result.
- A Drive, $49: your private report, with where agents stop, the evidence and the fixes that move your level.
- Fixed something? Order a Drive ($49) any time, or the Monthly drive ($29/month).
Details
Your API, MCP server or CLI is the product? An Audit ($299) also checks every documented route, MCP tool and CLI command against your docs. Compare plans.
Already claimed it? Open it in your dashboard.
Rather not be driven? Block AgentDrivesAgent in robots.txt or write to us. We stop driving it ourselves; this page stays, with its date.
Embed the badge on your site
Behind the level.
Our agent couldn't get into folk, so the work, its reliability and the crash test aren't measured. The part scores are what it could judge from the outside.
Part scores · level history
Part scores
Agent-ready setup
- llms.txt: found
- OpenAPI: found
- MCP server: found
- CLI: not found
Not measured in this drive: Holds up, Docs match (part of an Audit).
Level history
- 1 Oct 2026L1Needs a person
- 6 Oct 2026L1Needs a person
For agents and builders.
The drive as data, every checkpoint and all 26 attempts.
How an agent connects · 4 tips
/api/tools/folk.json/tools/folk.mdMCP get_tool {"slug":"folk"}
- Docs: start at developer.folk.app/llms.txt; every page has a .md twin.
- MCP at https://mcp.folk.app/mcp uses OAuth via api.stytch.folk.app (CIMD or DCR, PKCE S256); you need a logged-in human for consent.
- API: Bearer API key from Settings > API; rate limits 20 req/2 s burst and 600/min.
- Sign-up is passwordless (magic link or Google); the magic link runs a Stytch device-fingerprint check that rejected our agent's browser.
Every checkpoint, in detail · 9 checkpoints
- DocsHeadlessdeveloper.folk.app: llms.txt index, .md pages, Accept: text/markdown negotiation, OpenAPI 3.1.0 (36 paths), MCP docs.
- Sign upIn a browserNo sign-up API. Web form app.folk.app/login > Continue with email accepted the agent's inbox and sent a Stytch magic link. No bot check on the form.
- VerifyBlockedMagic link opens a Stytch Device Fingerprinting page; POST /v1/magic_links/redirect/dfp returned 200 with an empty body and the browser landed on stytch.com/redirect-error ('Login Error'). Two links, same result.
- KeyNot reachedAPI keys only in app Settings > API; MCP OAuth (DCR worked: 201 client_id) sends the authorize step to app.folk.app/login, behind the same blocked magic link. No device flow.
- First callNot reachedGET api.folk.app/v1/groups without a key -> 401 UNAUTHORIZED with a clear message; no key obtainable.
- First actionNot reachedNo session or credential.
- PayNot reachedNo 402, x402/MPP/UCP or payment discovery (x402./mpp./agents. do not resolve, /.well-known/ucp 404, no x-payment-info). Pricing FAQ: 2-week trial without a card; 'We only accept credit cards'; upgrade in Settings > Plans. Checkout not seen (no login), so rests on the pricing page only.
- CancelNot reachedNothing started: the trial needs no card and lapses on its own (pricing FAQ: account blocked after 2 weeks).
- DeleteNot reachedWeb/mobile only (help article 5701307: Settings > Workspace details); no API. Not reachable without a login; an unverified Stytch user for our address remains.
The attempt log · 26 attempts
| Capability | Route | Result | Evidence |
|---|---|---|---|
| agent discovery: robots.txt + Content-Usage | none | done ✓ | www.folk.app/robots.txt 200: User-agent * Allow /, explicit Allow for GPTBot/ClaudeBot etc; Disallow only for SEO bots. No Content-Usage or Content-signal lines; no Content-Usage response header. |
| agent discovery: llms.txt | none | done ✓ | https://www.folk.app/llms.txt (marketing) and https://developer.folk.app/llms.txt (full API+MCP index, links .md pages and OpenAPI /schemas/2025-06-09.json) |
| agent discovery: markdown docs | none | done ✓ | developer.folk.app/guides/quick-start with Accept: text/markdown -> content-type text/markdown, vary includes Accept; .md URLs also work |
| agent discovery: OpenAPI | none | done ✓ | https://developer.folk.app/schemas/2025-06-09.json openapi 3.1.0, 36 paths, server https://api.folk.app; no x-payment-info |
| agent discovery: MCP server/discover 2026-07-28 | mcp | failed ✓ | POST https://mcp.folk.app/mcp server/discover unauthenticated -> 401 WWW-Authenticate Bearer resource_metadata=https://mcp.folk.app/.well-known/oauth-protected-resource/mcp; body JSON-RPC -32001 Unauthorized |
| agent discovery: PRM + AS metadata | mcp | done ✓ | PRM 200 JSON: resource https://mcp.folk.app/mcp, authorization_servers [https://api.stytch.folk.app]. AS metadata 200: client_id_metadata_document_supported true, registration_endpoint (DCR) present, S256 PKCE, iss param supported, authorization_endpoint https://app.folk.app/oauth/authorize; no device_authorization_endpoint, no agent_auth block |
| agent discovery: server card / ai-catalog / A2A cards | none | failed ✓ | mcp.folk.app/mcp/server-card 404 (-32601); www.folk.app and developer.folk.app /.well-known/ai-catalog.json 404; /.well-known/agent-card.json and agent.json 404 |
| pay step probes: 402 / agent payment discovery | none | done ✓ | x402./mpp./agents.folk.app do not resolve; /.well-known/ucp 404; /auth.md, /SKILL.md 404; api.folk.app unauth -> 401 JSON not 402; OpenAPI has no x-payment-info. Pricing page: 2-week trial, no card; 'We only accept credit cards'; upgrade via Settings > Plans |
| sign up: find headless sign-up | none | failed ✓ | Docs quick-start: 'Create a folk account ... Sign up here (https://app.folk.app/login)'; no sign-up API, no auth.md, AS has no agent_auth/device flow. Only web form (Google or email). |
| sign up: sign up via web form | browser | done ✓ | app.folk.app/login > Continue with email > entered the agent's inbox > 'Check your email'. Passwordless (Stytch magic link); no bot check seen |
| verify email / first login: open magic link from inbox in drive browser | browser | blocked ✓ | Two magic links (mails 07:27:28 and 07:28:14). stytch.com/v1/magic_links/redirect serves a Stytch Device Fingerprinting page: telemetry.js loads, POST eml.stytch.com/submit 200, then POST stytch.com/v1/magic_links/redirect/dfp returns 200 with an empty body; the page's JSON parse fails and it navigates to stytch.com/redirect-error 'Login Error. There was an error logging you in.' No visible challenge. |
| API key / OAuth token: get API key (Settings > API) or MCP OAuth token | browser | blocked ✓ | API keys only in app settings (developer.folk.app/api-reference/authentication). MCP OAuth: DCR POST api.stytch.folk.app/v1/oauth2/register -> 201 client_id; authorize URL https://app.folk.app/oauth/authorize redirects to /login, which needs the blocked magic link. No device flow. |
| first API call: GET https://api.folk.app/v1/groups | api | blocked ✓ | Without key -> 401 application/json {error:{code:UNAUTHORIZED,message:'No authorization header found...',documentationUrl,requestId}} (clear, not problem+json) |
| agent discovery: MCP tools/list | mcp | blocked ✓ | mcp.folk.app/mcp requires OAuth token; server/discover answered 401 before any version negotiation |
| Create, update, and delete a contact (person): Create, update, and delete a contact (person) in our trial workspace | none | blocked | no session or credential |
| Create, update, and delete a company: Create, update, and delete a company in our trial workspace | none | blocked | no session or credential |
| Create, update, and close a deal with a value: Create, update, and close a deal with a value in our trial workspace | none | blocked | no session or credential |
| Organize records into a pipeline with stages/views: Organize records into a pipeline with stages/views in our trial workspace | none | blocked | no session or credential |
| Send an email campaign to a list: Send an email campaign to a list in our trial workspace | none | blocked | no session or credential |
| Send a multi-step automated email sequence: Send a multi-step automated email sequence in our trial workspace | none | blocked | no session or credential |
| Enrich a contact to find a missing email: Enrich a contact to find a missing email in our trial workspace | none | blocked | no session or credential |
| Auto-fill a custom field with AI (Magic field): Auto-fill a custom field with AI (Magic field) in our trial workspace | none | blocked | no session or credential |
| Sync email, calendar, and WhatsApp accounts to auto-log interactions: Sync email, calendar, and WhatsApp accounts to auto-log interactions in our trial workspace | none | blocked | no session or credential |
| Capture a contact from LinkedIn/web via the folkX Chrome extension: Capture a contact from LinkedIn/web via the folkX Chrome extension in our trial workspace | none | blocked | no session or credential |
| delete account: delete account and data | none | blocked | No account deletion endpoint in OpenAPI (36 paths: people, companies, groups, deals, objects, notes, tasks, reminders, interactions, webhooks, users read-only). Could not log in to try the web UI. |
| delete account: find documented delete route | none | blocked ✓ | help.folk.app/en/articles/5701307: 'To delete your account, go to Settings > Workspace details where you can delete your workspace and all associated data' (web/desktop) or mobile Settings > Delete account. Web-only; not reachable without a login. |
Also in CRM.
AttioL4Gets in on its ownfolk vs Attio
TwentyL4Gets in on its ownfolk vs Twenty
PipedriveL3Gets in on its ownfolk vs Pipedrive
SalesforceL2Gets in on its ownfolk vs Salesforce