The Attio MCP Server provides a Model Context Protocol (MCP) interface for AI-powered CRM automation, enabling natural language interaction with your Attio workspace.
Universal Record Management: Perform comprehensive CRUD operations (create, update, delete, retrieve) across all record types including Companies, People, Deals, Tasks, Lists, and Notes using consistent universal tools
Advanced Search & Filtering: Execute sophisticated queries with universal search, content search, timeframe search, relationship-based search, and advanced multi-condition filters with AND/OR logic
Batch Operations: Efficiently perform bulk create, update, delete, get, and search operations across multiple records
List & Pipeline Management: Create and manage CRM lists, sales pipelines, and lead stages; add/remove records and update list entry attributes like deal stages
Attribute Discovery: Identify and retrieve available fields and categories for any resource type to align with your workspace structure
Workspace Integration: List, search, and retrieve workspace members for task assignments and deal ownership
AI Assistant Integration: Seamlessly integrate with Claude, ChatGPT (Developer Mode), and other AI assistants with built-in MCP safety annotations for automated approval of read operations and confirmation for write operations
Robust Performance: Benefit from optimized operations, automatic pagination, built-in rate limiting, and chunking for large datasets
Custom Field Mapping: Configure custom field and list mappings to align natural language commands with your unique Attio workspace
Server Health Check: Verify server status without requiring credentials using the
aaa-health-checktool
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Attio MCP ServerFind all companies in our Q1 outreach list that haven't been contacted in the last 30 days"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Attio MCP Server
A comprehensive Model Context Protocol (MCP) server for Attio, providing complete CRM surface coverage. This server enables AI assistants like Claude and ChatGPT to interact directly with your entire Attio workspace through natural languageβmanage Deals, Tasks, Lists, People, Companies, Records, and Notes without falling back to raw API calls.
π― What is Attio MCP Server?
Transform your CRM workflows with AI-powered automation. Instead of clicking through multiple screens, simply ask Claude or ChatGPT to find prospects, update records, manage pipelines, and analyze your data using natural language commands.
π v1.0.0 Milestone: Complete Attio CRM surface coverage with full ChatGPT Developer Mode integration.
"Find all AI companies with 50+ employees that we haven't contacted in 30 days and add them to our Q1 outreach list"
Related MCP server: Hass-MCP
π NEW: ChatGPT Developer Mode Integration
v1.0.0 introduces full ChatGPT compatibility! ChatGPT Pro/Plus users can now access the entire Attio toolset through natural language via Smithery marketplace.
π Built-in Approval Flows: MCP safety annotations auto-approve read operations, request approval for writes
π OAuth Integration: Seamless authentication via
https://server.smithery.ai/@kesslerio/attio-mcp-server/mcp㪠Natural Language CRM: Manage your entire Attio workspace through conversational AI
π Setup Guide: See ChatGPT Developer Mode docs for complete configuration
β¨ Core Features & Implementation Status
π― Universal Tools Architecture (14 Tools)
68% Tool Reduction: Consolidated 40+ resource-specific tools into 14 universal operations for consistent, powerful CRM management.
High Performance: 89.7% speed improvement with 227KB memory reduction (PR #483)
Enterprise Quality: 97.15/100 production readiness score with zero breaking changes
Clean Architecture: Complete production-test separation with mock factory pattern
π Feature Implementation Status
β Complete CRM Surface Coverage
Companies: Search, Create, Update, Delete, Advanced Search, Relationship Search
People: Search, Create, Update, Delete, Advanced Search, Relationship Search
Deals: Full CRUD operations with intelligent field mapping and stage validation
Tasks: Create, Update, Delete, Search with multi-assignee support
Lists: Full CRUD operations, filtering, advanced filtering, entry management
Notes: Create and list operations for all record types
Records: Universal CRUD operations across all resource types
Batch Operations: Create, Update, Delete with chunking and error handling
Content Search: Universal search capabilities across notes, tasks, and lists
Relationship Navigation: Bidirectional companyβpersonβdeal relationships
Advanced Filtering: Sophisticated query capabilities with intelligent field mapping
π Company Management
Universal Search: Find companies with
search_recordsandsearch_records_advancedFull CRUD: Create, read, update, and delete with universal record operations
Relationship Discovery: Find companies through
search_records_by_relationshipBatch Operations: Process hundreds of companies with
batch_recordsDetailed Information: Get contact, business, and social info with
get_record_info
π₯ People Management
Universal Contact Search: Find people by any criteria using universal search tools
Relationship Tracking: Link people to companies with
search_records_by_relationshipActivity Timeline: Track interactions with
search_records_by_contentandsearch_records_by_timeframeAdvanced Filtering: Multi-attribute search with universal filtering
Bulk Operations: Efficiently manage contacts with universal batch operations
π Lists & Pipeline Management (4 Tools + 8 Deprecated)
Active Tools: 4 consolidated tools with auto-mode detection (Migration Guide)
filter-list-entries- Unified filtering with 4 modesmanage-list-entry- Unified entry management with 3 modesget-list-entries- Retrieve list entriesget-record-list-memberships- Find record's list memberships
Deprecated (v2.0.0 removal): 8 legacy tools replaced by consolidated versions
Pipeline Operations: Move deals through sales stages
Smart Segmentation: Create and manage targeted contact lists
Advanced Filtering: Complex multi-condition filtering with AND/OR logic
Entry Management: Add, remove, and update list memberships
Deal Tracking: Monitor opportunities and revenue pipeline
Deal Defaults: Configurable default stage, owner, and currency for streamlined deal creation
β Task Management
Universal Task Operations: Create, update, and manage tasks with universal tools
Record Linking: Associate tasks with any record type using
resource_typeparameterProgress Tracking: Monitor completion with universal search and filtering
Team Coordination: Streamline follow-ups with consistent universal operations
π§ Advanced Capabilities
Batch Processing: Handle bulk operations with error tracking
Enhanced Filtering: Text, numeric, date, boolean, and relationship filters with timeframe search (Issue #475)
Data Export: JSON serialization for integrations
Real-time Updates: Live data synchronization with Attio
π§ Claude Skills
Supercharge Claude's Attio knowledge with pre-built skills that prevent common errors and teach best practices.
Skill | Purpose | Setup |
attio-mcp-usage | Error prevention + universal workflow patterns | Bundled - just use it |
attio-workspace-schema | YOUR workspace's exact field names and options |
|
attio-skill-generator | Create custom workflow skills (advanced) | Python + prompting |
Quick Start (solves "wrong field name" errors):
See Skills Documentation for complete setup and usage guides.
π¬ Pre-Built Prompts (10 Prompts)
Intelligent shortcuts that help Claude work faster with your CRM data:
Search & Find (5): people_search, company_search, deal_search, meeting_prep, pipeline_health
Take Actions (4): log_activity, create_task, advance_deal, add_to_list with dry-run safety
Research & Qualify (1): qualify_lead with automated web research and BANT/CHAMP frameworks
Token-efficient: 300-700 tokens per prompt with consistent formatting
Discoverable: Claude automatically suggests relevant prompts for your tasks
See Using Out-of-the-Box Prompts for detailed documentation and examples.
π― Using Out-of-the-Box Prompts
NEW: 10 pre-built MCP prompts for common Sales workflows. No setup requiredβjust use them!
Available Prompts
Prompt | Description | Key Arguments | Example |
| Find people by title, company, territory |
| Find AE in fintech, SF |
| Query companies by domain, segment, plan |
| Find SaaS companies >100 employees |
| Filter deals by owner, stage, value, close date |
| Find deals >$50k closing Q1 |
| Log calls/meetings/emails to records |
| Log call with Nina at Acme |
| Create tasks with natural language due dates |
| Create task: Follow up tomorrow |
| Move deal to target stage with next action |
| Advance deal to "Proposal Sent" |
| Add records to a List by name or ID |
| Add 5 companies to Q1 Outreach |
| Research lead with web + BANT/CHAMP scoring |
| Qualify Acme Corp with BANT |
| 360Β° prep: notes, tasks, deals, agenda |
| Prep for meeting with Acme CEO |
| Weekly snapshot: created/won/slipped + risks |
| Pipeline health for @me last 30d |
Quick Examples
Universal Arguments
All read prompts support:
format:table|json|ids(default:table)fields_preset:sales_short|full(default:sales_short)verbosity:brief|normal(default:brief)
All write prompts support:
dry_run:true|false(default:false) - Preview changes without executing
Token Awareness Features
Prompts include built-in token optimization:
Budget Guards: Prompts stay within token limits (people_search <500, qualify_lead <400)
Dev Metadata: Set
MCP_DEV_META=truefor token counts in responsesTelemetry: Set
PROMPT_TELEMETRY_ENABLED=truefor usage loggingConfigurable Limits: Override with
MAX_PROMPT_TOKENSenvironment variable
For complete prompt documentation, see docs/prompts/v1-catalog.md.
β οΈ Known Limitations & Important Notes
Current Limitations
Field Parameter Filtering: Tasks endpoint
/objects/tasks/attributeshas limitations, handled with fallback patternsPagination: Tasks pagination uses in-memory handling due to API constraints
API Compatibility
Universal Tools: Primary interface (14 tools) - recommended for all new integrations
Legacy Tools: Available via
DISABLE_UNIVERSAL_TOOLS=trueenvironment variable (deprecated)Lists API: Fully functional with complete CRUD operations (contrary to some outdated documentation)
π€ OpenAI MCP Compatibility
Developer Mode Ready: Every tool now publishes MCP safety annotations (
readOnlyHint,destructiveHint) so OpenAI Developer Mode can auto-approve reads and request confirmation for writes.Full Tool Access (Default): All 35 tools are exposed by default (21 universal + 11 list + 3 workspace member). Do NOT set
ATTIO_MCP_TOOL_MODEin Smithery configuration for full access.Search-Only Mode: To restrict to read-only tools (
search,fetch,aaa-health-check), explicitly configureATTIO_MCP_TOOL_MODE: 'search'in Smithery dashboard when Developer Mode is unavailable.Detailed Guide: See docs/chatgpt-developer-mode.md for environment variables, approval flows, and validation tips.
User Documentation: See the ChatGPT Developer Mode docs for a complete walkthrough of approval flows and setup instructions.
Performance Considerations
Batch Operations: Optimized with chunking, rate limiting, and error recovery
Large Datasets: Automatic pagination and field filtering for optimal performance
Rate Limiting: Built-in protection against API rate limits with exponential backoff
For detailed troubleshooting and solutions, see TROUBLESHOOTING.md and GitHub Issues.
π― Advanced Search Filters
Build powerful CRM queries with multi-criteria AND/OR filtering. See the Advanced Search Guide for complete examples and operator reference.
π Installation
β οΈ IMPORTANT: Correct Package Name
The npm package name is
attio-mcp(notattio-mcp-server). The GitHub repository is namedattio-mcp-server, but the npm package was renamed toattio-mcpin June 2025. Installingattio-mcp-serverwill give you an outdated v0.0.2 release with only 4 legacy tools.
Client Compatibility
Client | Smithery (Tier 1) | Local Install (Tier 2-3) | Cloudflare Worker (Tier 4) |
Claude Desktop | β Recommended | β Full support | β Full support |
Claude Web | β Recommended | N/A | β Full support |
ChatGPT (Pro/Plus) | β Required | N/A | β Full support |
Cursor IDE | β Supported | β Full support | β Full support |
Claude Code (CLI) | Partial | β Recommended | Partial |
Choose your installation method:
Most users: Use Tier 1 (Smithery) - zero local config required
Local control: Use Tier 2 (Shell Installers) - one command, automatic setup
Power users: Use Tier 3 (Manual) - full control over configuration
Teams/Enterprise: Use Tier 4 (Cloudflare Worker) - self-hosted, multi-user OAuth
Tier 1: Smithery (One-Click) - Recommended
Best for: Claude Desktop, Claude Web, ChatGPT, Cursor - zero local installation required.
Smithery handles OAuth, hosting, and configuration automatically.
Claude Desktop via Smithery
Cursor IDE via Smithery
ChatGPT Developer Mode
ChatGPT requires Smithery for OAuth authentication. Direct server URLs are not supported.
Enable Developer Mode: Settings β Connectors β Advanced β Developer Mode
Add MCP Server URL:
https://server.smithery.ai/@kesslerio/attio-mcp-server/mcpComplete OAuth authorization when prompted
See ChatGPT Developer Mode Guide for detailed setup instructions.
Claude Web
Go to Claude.ai Settings β Connectors
Add new MCP connector
Select "Attio CRM" from Smithery marketplace
Authorize with your Attio account
Tier 2: Shell Installers
Best for: Developers who prefer local installations with automatic configuration.
One-command scripts that install attio-mcp and configure your client automatically.
Claude Desktop
Cursor IDE
Claude Code (CLI)
These scripts will:
Install
attio-mcpnpm package globally (if needed)Backup existing configuration files
Prompt for your Attio API key
Configure the MCP server for your client
Print next steps and restart instructions
Tier 3: Manual Configuration
Best for: Power users who prefer full control or use unsupported clients.
Step 1: Install attio-mcp
Step 2: Find your config file
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Step 3: Add configuration
Step 4: Restart Claude Desktop completely (quit and reopen)
Step 1: Install attio-mcp
Step 2: Edit config file
Location: ~/.cursor/mcp.json
Step 3: Restart Cursor
Option A: Using Claude CLI command (recommended)
Option B: Manual config edit
Edit ~/.claude/settings.json:
For development or custom deployments:
Run directly:
Tier 4: Cloudflare Worker (Remote Deployment)
Best for: Teams needing centralized OAuth, multi-user access, mobile access, or running MCP without local installation.
Deploy your own Attio MCP server on Cloudflare Workers with full OAuth 2.1 support.
Mobile Access: With a remote MCP server, you can use Attio tools from:
ChatGPT mobile app (iOS/Android)
Claude mobile app (iOS/Android)
Any browser on any device
Smithery vs. Cloudflare Worker
Feature | Smithery | Cloudflare Worker |
Setup complexity | Very Low | Medium |
OAuth built-in | β | β |
Mobile app access | β | β |
Multi-user access | β | β |
Custom domain | β | β |
Self-hosted | β | β |
Team deployments | Limited | β Full |
Cost | Free tier | Free tier |
Quick Deploy
Client Configuration
After deployment, configure your client with your Worker URL:
Claude.ai: Settings β Connectors β Add your Worker URL
ChatGPT: Settings β Connectors β Developer Mode β Add Worker URL
See Cloudflare Worker Deployment Guide for:
Complete OAuth 2.1 setup with Attio
Token encryption configuration
Production deployment checklist
Troubleshooting guide
π What's New in v1.4.0
Major Features
π― Workspace Schema Skill Generator (#983) - Auto-generate Claude Skills from your Attio workspace schema for error-free field names and options
π Select-field Transformer (#1019) - Case-insensitive matching, partial matching, and UUID pass-through for select/status fields
π οΈ Attio Skill Generator Meta-skill (#1020) - Meta-skill for automatic workspace documentation
π Universal Usage Guide Skill (#1018) - Hand-crafted workflow patterns and error prevention
βοΈ (#975) - Get valid options for select/status fields with enhanced error messages
π Phone validation (#951) - Built-in phone number validation support
β±οΈ Configurable option fetch delay - Rate limiting control via
--option-fetch-delayflag
Major Enhancements
π·οΈ MCP-compliant tool naming (#1039) - All tools now use
snake_case, verb-first naming (old names work via aliases until v2.0.0)π¨ Custom object display names (#1017) - Fetch display names directly from Attio API
π Split integration patterns (#1023) - Progressive discovery patterns by use case
π‘ Enhanced attribute error messages (#975) - Levenshtein distance suggestions for typos
Critical Fixes
π Note content line breaks preserved (#1052)
π€ People search "Unnamed" display fixed (#1051)
β Select field persistence (#1045)
π Record-reference auto-transformation (#997)
π Multi-select array auto-transformation (#992)
π‘οΈ Complex attribute validation (#991)
β οΈ Field persistence false warnings (#995)
π¦ SDK dependency pinning (#1025)
πΌ Deal stage/UTM validation (#1043)
π Location field auto-normalization (#987)
Internal Improvements
Tool alias system refactoring (#1041) - Type-safe constants with pattern-based generation
Strategy Pattern for CRUD error handlers (#1001)
Consolidated metadata fetching (#984)
UniversalUpdateService modularization (#984)
Select transformation type rename (#1055) -
select_title_to_arrayfor clarity
π Migration Guide
Upgrading from v1.3.x or earlier? Tool names have changed to follow MCP naming conventions.
Old names still work via backward-compatible aliases, but will be removed in v2.0.0 (Q1 2026).
Tool Name Changes
Old Name (Deprecated) | New Name (MCP-compliant) | Notes |
|
| Verb-first pattern |
|
| Verb-first pattern |
|
| Verb-first pattern |
|
| Verb-first pattern |
|
| Verb-first pattern |
|
| Verb-first pattern |
|
| Verb-first pattern |
|
| Verb-first pattern |
|
| Verb-first pattern |
|
| snake_case format |
|
| snake_case format |
|
| snake_case format |
|
| snake_case format |
|
| snake_case format |
|
| snake_case format |
|
| snake_case format |
|
| snake_case format |
Action Required: Update your integrations to use new tool names before Q1 2026. See MIGRATION-GUIDE.md for the complete migration table.
β‘ Quick Start
Prerequisites
Node.js (v18 or higher)
Attio API Key (Get one here) or OAuth access token
Attio Workspace ID
π Authentication Options
The server supports two authentication methodsβboth use the same Bearer token scheme:
Method | Environment Variable | Best For |
API Key (recommended) |
| Long-term integrations, personal use |
OAuth Access Token |
| OAuth integrations, third-party apps |
Note: If both are set,
ATTIO_API_KEYtakes precedence.OAuth Users: For detailed setup including PKCE flow and token refresh, see OAuth Authentication Guide.
1. Set Environment Variables
2. Test the Installation
3. π― CRITICAL: Configure Field Mappings
The MCP server uses field mapping files to translate between natural language and Attio's API field names. This configuration is essential for proper operation.
Quick Setup
Configuration Files (in configs/runtime/mappings/)
default.json- Standard Attio CRM fields (loaded first, don't edit)sample.json- Examples with custom field templates (copy from this, not used at runtime)user.json- YOUR workspace-specific overrides (merged on top of default.json)
π‘ Key Insight:
user.jsonis merged on top ofdefault.json, so only include overrides and additions. Don't duplicate mappings that already exist indefault.json.
How Configuration Merging Works
The MCP server loads configuration in this order:
default.json- Contains all standard Attio fields (Name, Description, Team, etc.)user.json- Your custom additions/overrides are merged on top
Example: If default.json has "Name": "name" and your user.json also has "Name": "name", that's wasted tokens. Only include fields that are:
New custom fields (not in default.json)
Different mappings (overriding default behavior)
Optimized user.json Example
β
Good: Only custom/override fields
β Wasteful: Duplicating standard fields from default.json
β οΈ Without proper mapping configuration, the MCP server may not work correctly with your custom fields and lists.
Next: Verify your field mappings work by testing with Claude:
4. Configure Claude Desktop
Add to your Claude Desktop MCP configuration:
Finding Required IDs
Deal Owner Email (for deal owner defaults):
The ATTIO_DEFAULT_DEAL_OWNER should be set to the email address of the workspace member who should own new deals by default. This is typically your own email address or the email address of your sales team lead.
Note: The system will automatically resolve email addresses to workspace member references when creating deals.
Deal Stages:
Deal stages are specific to your workspace. Check your Attio workspace settings or use the discover-attributes command to find available stages for deals.
π Example Use Cases
For Sales Teams
For Marketing Teams
For Customer Success
For Data Operations
π Security & Privacy
Secure API Authentication: Industry-standard API key authentication
No Data Storage: Direct API passthrough with no local data retention
Open Source: Full transparency with Apache 2.0 license
Optional On-Premises: Deploy in your own infrastructure
π Documentation
Comprehensive documentation is available in the docs directory:
Universal Tools (Recommended)
β οΈ Note: Universal tools documentation is currently being updated to match the latest implementation. Use the API directly or check the source code for the most accurate interface definitions.
API Overview - High-level API concepts and patterns
Universal Tools Source - Current implementation reference
Tool Schemas - Parameter definitions and validation
Getting Started
Configuration
Warning Filter Configuration - Understanding cosmetic vs semantic mismatches, ESLint budgets, and suppression strategies
Field Verification Configuration - Field persistence verification and validation settings
Search Scoring Configuration - Environment variables for relevance scoring, caching, and operator validation
API Reference
π Implementation Status: These docs describe the Attio API endpoints. For MCP tool usage, refer to universal tools documentation above.
API Overview - General Attio API concepts
Companies API - Company record endpoints β Fully Implemented via Universal Tools
People API - Person record endpoints β Fully Implemented via Universal Tools
Lists API - List management endpoints β Fully Implemented
Notes API - Notes endpoints β Basic Implementation
Tasks API - Task endpoints β Implemented via Universal Tools
Advanced Topics
Batch Operations - Bulk operations β Implemented with chunking
Advanced Filtering - Complex queries β Implemented
Error Handling - Error patterns β Enhanced error handling
Extending MCP - Customization guide
Deployment
π Development
Setup Development Environment
Smithery CLI Development
For local development and testing with Smithery Playground:
See docs/deployment/smithery-cli-setup.md for detailed Smithery CLI development setup.
Testing
For E2E/integration tests, create .env with your ATTIO_API_KEY. See the Testing Guide for detailed setup.
Available Scripts
π€ Contributing
We welcome contributions! Please see our Contributing Guidelines for details on:
Adding new tools and features
Improving documentation
Reporting bugs and requesting features
Testing and quality assurance
π What's Next?
This initial release provides a solid foundation for CRM automation.
π Links
NPM Package: https://www.npmjs.com/package/attio-mcp
GitHub Repository: https://github.com/kesslerio/attio-mcp-server
Issues & Support: https://github.com/kesslerio/attio-mcp-server/issues
Releases: https://github.com/kesslerio/attio-mcp-server/releases
Attio Documentation: https://developers.attio.com/
π License
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
Original Work Attribution: This project is based on initial work by @hmk under BSD-3-Clause license, with substantial modifications and enhancements by @kesslerio. The original BSD license notice is preserved in the LICENSE file as required.
Ready to transform your CRM workflow? Install Attio MCP Server today and experience the future of CRM automation with AI!