Reference — lookup information.
What is Affinity MCP?
Affinity MCP (Model Context Protocol) is the server interface that lets external AI tools query and update your Affinity CRM. It’s a standards-based way for AI clients to call structured tools — search_companies, create_note, get_opportunity — against live Affinity data, with your user’s permissions enforced on every call.
For setup steps, follow the per-client guides at developer.affinity.co/pages/mcp/supported-clients.
Who should use Affinity MCP
- Associates & analysts doing deal research, IC prep, founder meeting prep
- Partners running portfolio check-ins and LP communication prep
- Operators keeping the CRM clean: updating fields, creating notes, setting reminders from chat
- Developers building agentic workflows over Affinity data
When to use MCP vs Affinity AI Chat
| You want to… | Use |
|---|
| Chat with Affinity data inside the Affinity web app | Affinity AI Chat (Beta, no setup) |
| Query Affinity from Claude / ChatGPT / Copilot / Notion / Gemini CLI | MCP |
| Build a custom agent that orchestrates Affinity + other tools | MCP |
| Get answers without leaving your preferred AI surface | MCP |
See Affinity AI Chat Overview for the in-app option.
Use cases by role
Associates and analysts — deal research and IC prep
- “Find seed and Series A SaaS companies in healthcare we’ve never contacted.”
- “Summarize all notes on Acme Corp from the last 90 days.”
- “Show me upcoming meetings with founders this week.”
- “Who on our team has the strongest relationship with the partners at Benchmark?”
- “Create a note on Acme Corp: [paste meeting summary]“
Partners — portfolio and LP context
- “List portfolio companies I haven’t checked in with this quarter.”
- “Summarize last three interactions with [LP firm name].”
- “Show me deals where the next milestone is overdue.”
Operators — CRM hygiene
- “Show me opportunities with no Stage field set in the last 30 days.”
- “Update the Stage field on the Acme deal to ‘Due Diligence’.”
- “Set a reminder to follow up with Jane Smith in two weeks.”
Developers — automation
- Use MCP from a custom-built agent (e.g., LangChain, your own orchestrator) to enrich, sync, or summarize.
- See Available tools for the full schema.
Hosted vs Local
| Hosted | Local |
|---|
| Who runs it | Affinity | You |
| Updates | Continuous, automatic | You re-install to upgrade |
| Best for | 95% of users | Teams with strict security / customization needs |
| Server URL | https://mcp.affinity.co/mcp | http://localhost:<port>/mcp |
| Install | None | uvx affinity-mcp (Python 3.10+) |
| Cost | Included in your Affinity plan | Same |
For most users: pick Hosted. For Local setup, see Local Setup at developer.affinity.co.
What data MCP can access
MCP tool calls execute as the authenticating user. You can read and update anything you’d be able to read or update directly in Affinity — and nothing else.
- List access: only lists you’ve been granted access to
- Field visibility: respects field-level permissions
- Role gates: enterprise role restrictions still apply
- OAuth read-only mode: at consent time, OAuth users can uncheck the write scope to block all create / update calls through MCP
Capabilities and limitations
What MCP can do
- Query companies, people, opportunities, lists, fields, notes, meetings, reminders, relationship strength
- Create notes and reminders
- Update field values
- Search by tag, list membership, recency, owner, status, and more
- Return data filtered by your user’s CRM permissions
Current limitations
- MCP cannot create lists or fields (use the Affinity UI or API)
- MCP cannot bulk-update entries across many lists in one call (work entry-by-entry, or use the API)
- MCP can’t see file attachments, only their metadata
- Some clients (Copilot CLI / Studio, Gemini CLI, Notion, ChatGPT) don’t currently support OAuth — those use API keys instead
Authentication
Two methods, both managed under Affinity → Settings → Manage Apps:
- OAuth: One-click browser auth. Supported by Claude (all surfaces), ChatGPT (Plus+), Notion (Custom Agents).
- API key: A long-lived key passed as a
Bearer token in the Authorization header. Supported everywhere. Rotate or revoke at any time.
See Authentication at developer.affinity.co for full details.
Security and privacy
- The MCP server is stateless. No CRM data, prompts, or AI responses are persisted.
- Affinity sees only the structured tool calls your AI client makes — not your typed prompts. Your prompts are governed by your AI provider’s policy.
- All tool calls run with your user’s CRM permissions.
- OAuth tokens are user-scoped and revocable. API keys can be rotated.
Full details at developer.affinity.co/pages/mcp/security.