recordcrm
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
recordcrm
recordcrm is a small client for the Attio CRM: it searches records with free-text or structured filters, creates records in any object, reads a single record or an attribute's definition and options, creates and updates company and deal records, lists workspace lists and their entries, and looks up workspace members — all through the Attio API v2.
This package is a clean-room rebuild, and a labelled core subset: it covers 12 of the 19 universal operations plus scoped writes documented for the original Attio MCP server. The omitted operations are listed under "Scope" below.
How it talks to the service
Every tool needs an Attio API token:
export ATTIO_API_KEY="your token"
# ATTIO_ACCESS_TOKEN is accepted as a fallback when ATTIO_API_KEY is unset.
# Optional override (default: https://api.attio.com/v2)
export ATTIO_API_URL="https://api.attio.com/v2"With no token set, every call fails with an error naming
ATTIO_API_KEY, before any request is made.
Wire-format note: the original project's README documents the
tools and their purposes; the endpoint shapes here follow the public
Attio API v2 and are documented reconstructions. Records live under
/v2/objects/{object}/records; record search posts to the records
query endpoint (.../records/query) with a full_text query clause
when a query is given, or a filter object for advanced search;
writes wrap attribute values as { "data": { "values": ... } };
attribute options are read from the attribute definition at
/v2/objects/{object}/attributes/{attribute}. Responses are parsed
as JSON (an empty success body reads as { "status": "ok" }), and
an upstream HTTP error is reported with its status and body text.
Related MCP server: Attio MCP Server
Install
npx @reneturcios/recordcrm records_search '{"object":"companies","query":"acme"}'Or run the container image:
docker run -i ghcr.io/cloudcorprecords/recordcrmThe container defaults to the MCP server. Pass CLI arguments to use it as a CLI instead.
CLI
The CLI mirrors the tools: one subcommand per tool, taking its arguments as a single JSON object.
recordcrm records_search '{"object":"companies","query":"acme","limit":5}'
recordcrm records_search_advanced '{"object":"companies","filters":{"name":{"$contains":"acme"}}}'
recordcrm records_create '{"object":"people","data":{"name":[{"value":"Ada"}]}}'
recordcrm records_get_info '{"object":"people","record_id":"..."}'
recordcrm lists_list '{}'
recordcrm --versionExit codes: 0 on success, 1 on an API or validation error (the
error names the problem), 2 for usage errors.
MCP server
One bin serves both faces. The mcp subcommand starts a stdio MCP
server:
npx -y @reneturcios/recordcrm mcpMCP client configuration:
{
"mcpServers": {
"recordcrm": {
"command": "npx",
"args": ["-y", "@reneturcios/recordcrm", "mcp"],
"env": { "ATTIO_API_KEY": "your token" }
}
}
}Tools
Tool | Input | What it does |
|
| Search records in an object by free-text query. |
|
| Search records in an object with structured filters. |
|
| Create a record in an object from attribute values. |
|
| Fetch one record by ID from an object. |
|
| Get an attribute definition, including its select options. |
|
| Create a company record from attribute values. |
|
| Update a company record by ID. |
|
| Create a deal record from attribute values. |
|
| Update a deal record by ID. |
| — | List all lists in the workspace. |
|
| List entries in a list. |
|
| Fetch one workspace member by ID. |
Scope
Omitted from this core subset: records_search_by_relationship,
records_get_interactions, records_batch, the universal
records_update / records_delete operations, lists_create,
lists_update_configuration, list_entries_filter,
list_entries_manage, records_get_list_memberships,
diagnostics_get, and the universal notes/tasks operations. The
original's field-mapping configuration is also not reproduced: this
subset passes attribute values and filters through in Attio API
shape directly. Search results, record contents, and list data are
produced by the upstream Attio service; this package reproduces the
tool surface and the request/response handling, not that service's
data.
Development
npm install
npm run build # tsc -> dist/
npm test # node test runner over test/*.test.ts, fake fetch only, no network
npm run dev # run the CLI from source via tsxLicense
MIT — see LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Automate Attio CRM workflows with fast search and bulk operations across companies, people, deals,…
Connect AI to your Attio CRM. Manage contacts, companies, deals, and sales pipelines. Create tasks…
Streamline your Attio workflows using natural language to search, create, update, and organize com…
Read deals, persons, organizations, activities and pipelines; create and update CRM records.
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.962 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.962 npm-
- AlicenseAqualityDmaintenanceIntegrates Attio CRM with AI clients to manage companies, people, and notes through 14 specialized tools. It supports dynamic schema discovery, enabling users to search, create, and update records within their Attio workspace.141MIT
- 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.45 npm7MIT