Attio Simple MCP Server
Click on "Deploy 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 Simple MCP Server find the contact info for Jane Smith at Acme Corp"
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 Simple MCP Server
An MCP (Model Context Protocol) server that integrates Attio CRM with AI clients like Claude Code, Claude Desktop, ChatGPT, Windsurf, and Cursor.
This template was created by Manoel Lemos as a shortcut for people interested in deploying Attio MCP servers.
Features
14 Tools for managing companies, people, and notes in Attio
Schema Discovery - Dynamically discover your workspace's objects and attributes
Type-Safe - Full TypeScript with auto-generated Attio API types
Related MCP server: Attio MCP Server
Available Tools
Category | Tools |
Schema |
|
Companies |
|
People |
|
Notes |
|
Quick Start
1. Install Dependencies
npm install2. Configure Environment
cp .env.example .envEdit .env and add your Attio API key:
ATTIO_API_KEY="your_api_key_here"
ATTIO_WORKSPACE_SLUG="your-workspace-slug" # Optional: for web URLsGet your API key from Attio Settings > Developers > API Keys.
3. Build
npm run build4. Configure Your AI Client
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"attio": {
"command": "node",
"args": ["/absolute/path/to/attio-mcp/dist/index.js"],
"env": {
"ATTIO_API_KEY": "your_api_key_here",
"ATTIO_WORKSPACE_SLUG": "your-workspace-slug"
}
}
}
}Claude Code
claude mcp add attio node /absolute/path/to/attio-mcp/dist/index.jsAdding Custom Objects
This template includes tools for standard Attio objects (companies, people). To add tools for your custom objects:
Use
get_workspace_schemato discover your workspace's objects and attributesCopy an existing tool (e.g.,
search-companies.ts) as a templateModify the API endpoint, fields, and types for your custom object
Register the new tool in
src/tools/index.ts
Development
npm run dev # Watch mode
npm run build # Build
npm test # Run tests
npm run test:watch # Watch testsLicense
MIT
Available Tools
14 toolscreate_companyA
Create a new company in Attio CRM. Only the company name is required. Optionally provide domains, description, and LinkedIn URL. Returns the created company record including the new record_id.
Inputs: name (required), domains, description, linkedin.
create_noteB
Create a new note attached to a record in Attio CRM. Notes can be attached to people, companies, or any other object type. Supports plaintext and markdown formatting.
Inputs: parent_object (required), parent_record_id (required), title (required), content (required), +1 more.
create_personA
Create a new person in Attio CRM. You must provide at least one name field (first_name, last_name, or full_name) or at least one email address. All fields are optional, but you need either a name or email to identify the person. Returns the created person record including the new record_id.
Inputs: first_name, last_name, full_name, email_addresses, +3 more.
get_companyA
Get complete details of a company by record_id. Returns all attributes. Set include_all=true to also fetch notes, tasks, comment threads, meetings, and list entries, or use individual flags (include_notes, include_tasks, etc.).
Inputs: record_id (required), include_notes, include_tasks, include_threads, +3 more.
get_noteA
Get a single note by ID from Attio CRM. Returns the full note details including title, content, parent record information, and creation metadata.
Inputs: note_id (required).
get_personA
Get complete details of a person by record_id. Returns all attributes. Set include_all=true to also fetch notes, tasks, comment threads, meetings, and list entries, or use individual flags (include_notes, include_tasks, etc.).
Inputs: record_id (required), include_notes, include_tasks, include_threads, +3 more.
get_workspace_schemaA
Get Attio workspace schema. Default returns summary with key fields and select options. Use scope="full" for all fields, or scope="object"/"list" for specific items with all fields.
Inputs: scope, object_slug, list_slug, force_reload.
manage_company_domainsC
Manage domains on a company. Supports four operations: "set" (replace all domains), "add" (append new domains), "remove" (delete specific domains), and "clear" (remove all domains).
Inputs: record_id (required), operation (required), domains.
manage_person_emailsC
Manage email addresses on a person. Supports four operations: "set" (replace all emails), "add" (append new emails), "remove" (delete specific emails), and "clear" (remove all emails).
Inputs: record_id (required), operation (required), email_addresses.
manage_person_tagsA
Manage tags on a person. Supports four operations: "set" (replace all tags), "add" (append new tags), "remove" (delete specific tags), and "clear" (remove all tags). Tags are auto-created if they don't exist in the workspace.
Inputs: record_id (required), operation (required), tags.
search_companiesA
Search for companies in Attio CRM. Supports filtering by text (name or domain) and date ranges. Supports sorting by various fields. All filters are optional. Returns company details including name, domains, description, LinkedIn URL, web_url, and created_at.
Inputs: query, created_after, created_before, sort_by, +2 more.
search_peopleB
Search for people in Attio CRM. Supports filtering by text (name or email), company, tags, and date ranges. Supports sorting by various fields. All filters are optional. Returns person details including name, email addresses, description, LinkedIn URL, tags, web_url, and created_at.
Inputs: query, company_id, tags, tags_exclude, +5 more.
update_companyA
Update an existing company in Attio CRM by record ID. You can update name, description, and/or LinkedIn URL. Only provided fields will be updated; omitted fields remain unchanged. To manage domains, use add_company_domain and remove_company_domain tools instead. Returns the updated company record.
Inputs: record_id (required), name, description, linkedin.
update_personA
Update an existing person in Attio CRM by record ID. You can update name fields (first_name, last_name, full_name), description, and/or LinkedIn URL. Only provided fields will be updated; omitted fields remain unchanged. To manage email addresses, use add_person_email and remove_person_email tools instead. Returns the updated person record.
Inputs: record_id (required), first_name, last_name, full_name, +2 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 14 tools
Each tool has a clearly distinct purpose with no ambiguity. For example, create_company, get_company, update_company, and search_companies are well-differentiated, and manage_company_domains handles specific domain operations without overlapping with update_company. The descriptions reinforce these distinctions, making misselection unlikely.
Tool names follow a consistent verb_noun pattern throughout, such as create_company, get_person, search_people, and update_company. The manage_* tools also adhere to this pattern, and there are no deviations in naming conventions, ensuring predictability and readability.
With 14 tools, the server is well-scoped for CRM operations, covering companies, people, notes, and schema. Each tool earns its place by providing specific functionality without redundancy, such as separate tools for creation, retrieval, updating, searching, and managing attributes like domains and emails.
The tool set offers comprehensive CRUD and lifecycle coverage for companies and people, including creation, retrieval, updating, searching, and attribute management. Minor gaps include the lack of delete operations for companies, people, or notes, but agents can likely work around this by using other methods or the server's inherent limitations.
Maintenance
Related MCP Connectors
Connect AI to your Attio CRM. Manage contacts, companies, deals, and sales pipelines. Create tasks…
Automate Attio CRM workflows with fast search and bulk operations across companies, people, deals,…
Streamline your Attio workflows using natural language to search, create, update, and organize com…
Connect to Atlassian Jira, Confluence, Loom, and more to search, create, and manage your work.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with Attio CRM through natural language, providing comprehensive CRM management including companies, people, lists, tasks, pipelines, and batch operations with advanced filtering capabilities.1,923 npmApache 2.0
- FlicenseNot gradedqualityNot gradedmaintenanceEnables AI assistants to interact with Attio CRM through natural language, providing complete access to companies, people, deals, tasks, lists, notes, and records with advanced search, batch operations, and relationship management.1,923 npm-
- AlicenseNot gradedqualityDmaintenanceProvides seamless access to the Attio API for AI assistants like Claude and Cursor, enabling interaction with objects, records, tasks, notes, and more through human-readable tools.36 npm7MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with Attio CRM via natural language, supporting management of companies, people, tasks, notes, and lists.36 npmMIT