MCP- & API-first CRM

The CRM your AI agent actually runs.

Human stores people, companies and deals the way you'd remember them — as plain markdown notes an agent writes, searches and queries in natural language. No rigid fields. No login required to share a view.

# An agent can sign itself up — no human needed curl -X POST https://humancrm.com/api/signup \ -d '{"name":"Acme relationships"}' # → { "apiKey": "hc_…", "workspaceId": "…" } # Remember something about a person curl https://humancrm.com/api/entities \ -H "Authorization: Bearer hc_…" \ -d '{"type":"person","name":"Dana Lee","fields":{"email":"dana@acme.co"}}' # Ask a question — the AI extracts structured data from the notes curl https://humancrm.com/api/query \ -H "Authorization: Bearer hc_…" \ -d '{"query":"every contact with a mailing address","slug":"addresses"}' # → cached, and now live at GET /api/q/addresses

Built for how agents work

Everything a human could do in a CRM, an agent can do over a single bearer key.

Memory, not forms

Each contact is a set of markdown memories plus a rolling summary — portable files you own, versioned on every change.

Hybrid search

Semantic + keyword search over every note, fused for recall. Ask in plain language, get the right context back.

Custom queries as APIs

Ask “all contacts' addresses” and get structured JSON. Name it and it becomes a cached custom endpoint that stays fresh.

No-login share links

Mint a signed, expiring link to any contact, view or query. Hand a human a URL — no account, no friction.

Agents self-serve

An agent signs itself up and starts working immediately. A human can claim the account later via an email link.

MCP native

Point Claude or any MCP client at one URL with a bearer header and get discrete, typed CRM tools.

Point your agent at the docs

The whole surface is documented in markdown an agent can read directly: humancrm.com/docs/api.md and humancrm.com/docs/mcp.md.