Capsule CRM Automation
Manage your Capsule CRM -- create and update contacts, run powerful filter queries on parties/opportunities/cases, track tasks and projects, browse activity entries, and organize team relationships -- all through natural language commands.
Toolkit docs: composio.dev/toolkits/capsule_crm
Setup
- Add the Composio MCP server to your client configuration:
https://rube.app/mcp
- Connect your Capsule CRM account when prompted (OAuth authentication).
- Start issuing natural language commands to manage your CRM.
Core Workflows
1. Run Structured Filter Queries
Query parties, opportunities, or cases (projects) with multiple filter conditions, operators, and sorting.
Tool: CAPSULE_CRM_RUN_FILTER_QUERY
Example prompt:
"Find all Capsule CRM contacts in California tagged as 'VIP' sorted by name"
Key parameters:
entity (required) -- One of: parties, opportunities, kases
filter (required) -- Filter object with:
conditions -- Array of conditions, each with:
field -- Field name (e.g., "name", "email", "state", "country", "tag", "owner", "jobTitle", "addedOn")
operator -- One of: "is", "is not", "starts with", "ends with", "contains", "is greater than", "is less than", "is after", "is before", "is older than", "is within last", "is within next"
value -- Value to compare against
orderBy -- Array of sort objects with field and direction ("ascending"/"descending")
embed -- Additional data to include in response
page / perPage -- Pagination (max 100 per page)
Important field notes:
- Address fields (
city, state, country, zip) are top-level, NOT nested under "address"
- Country must be an ISO 3166-1 alpha-2 code (e.g., "US", "GB", "CA")
- Custom fields use
custom:{fieldId} format
- Organization fields use
org. prefix (e.g., org.name, org.tag)
2. List and Manage Contacts (Parties)
Retrieve all contacts with optional filtering by modification date and embedded related data.
Tool: CAPSULE_CRM_LIST_PARTIES
Example prompt:
"List all Capsule CRM contacts modified since January 2025 with their tags and organizations"
Key parameters:
since -- ISO8601 date to filter contacts changed after this date
embed -- Additional data: "tags", "fields", "organisation", "missingImportantFields"
page / perPage -- Pagination (max 100 per page, default 50)
3. Create New Contacts
Add people or organizations to your Capsule CRM with full details including emails, phones, addresses, tags, and custom fields.
Tool: CAPSULE_CRM_CREATE_PARTY
Example prompt:
"Create a new person in Capsule CRM: John Smith, VP of Sales at Acme Corp, john@acme.com"
Key parameters:
type (required) -- "person" or "organisation"
- For persons:
firstName, lastName, jobTitle, title
- For organisations:
name
emailAddresses -- Array of {address, type} objects
phoneNumbers -- Array of {number, type} objects
addresses -- Array of address objects with street, city, state, country, zip, type (Home/Postal/Office/Billing/Shipping)
organisation -- Link to org by {id} or {name} (creates if not found)
tags -- Array of tags by {name} or {id}
fields -- Custom field values with {definition, value}
websites -- Array of {address, service, type} objects
owner -- Assign owner user {id}
4. Update Existing Contacts
Modify any aspect of a party record including adding/removing emails, phones, tags, and custom fields.
Tool: CAPSULE_CRM_UPDATE_PARTY
Example prompt:
"Update Capsule CRM party 11587: add a work email john.new@acme.com and remove tag 'prospect'"
Key parameters:
partyId (required) -- Integer ID of the party to update
party (required) -- Object with fields to update. Supports:
- All creation fields (name, emails, phones, addresses, etc.)
_delete: true on sub-items to remove them (requires the item's id)
- Tags: add by
{name} or remove with {id, _delete: true}
5. Track Tasks
List tasks with filtering by status and embedded related data.
Tool: CAPSULE_CRM_LIST_TASKS
Example prompt:
"Show all open tasks in Capsule CRM with their linked parties and owners"
Key parameters:
status -- Filter by status: "open", "completed", "pending" (array)
embed -- Additional data: "party", "opportunity", "kase", "owner", "nextTask"
page / perPage -- Pagination (max 100 per page, default 50)
6. Browse Projects and Activity Entries
List projects (cases) and recent activity entries including notes, emails, and completed tasks.
Tools: CAPSULE_CRM_LIST_PROJECTS, CAPSULE_CRM_LIST_ENTRIES_BY_DATE
Example prompt:
"Show all open projects in Capsule CRM" / "Show recent activity entries with party details"
Key parameters for projects:
status -- Filter by "OPEN" or "CLOSED"
search -- Search term for project names/descriptions
since -- ISO8601 date for modifications after this date
embed -- "tags,fields,party,opportunity,missingImportantFields"
Key parameters for entries:
embed -- "party", "kase", "opportunity", "creator", "activityType"
page / perPage -- Pagination (max 100 per page)
Known Pitfalls
- Address fields are top-level: When filtering, use
state, city, country, zip directly -- NOT address.state or nested syntax.
- Country codes are ISO alpha-2: Filter by "US", "GB", "CA" -- not "United States" or "United Kingdom".
- Custom fields use special syntax: Reference custom fields as
custom:{fieldId} in filter conditions. For org-level custom fields, use org.custom:{fieldId}.
- Projects are called "kases" in the API: Despite being "projects" in the UI, the API entity type is
kases. Use kases in filter queries.
- Delete operations require item IDs: When updating a party to remove sub-items (emails, phones, tags), you must include the item's
id along with _delete: true. List the party first to get sub-item IDs.
- Pagination defaults to 50: All list endpoints default to 50 items per page with a max of 100. Always implement pagination for complete data retrieval.
- Embed values vary by entity: Not all embed options work for all entities. Check the documentation for supported embed values per endpoint.
Quick Reference
| Action |
Tool Slug |
Required Params |
| Run filter query |
CAPSULE_CRM_RUN_FILTER_QUERY |
entity, filter |
| List contacts |
CAPSULE_CRM_LIST_PARTIES |
None (optional filters) |
| Create contact |
CAPSULE_CRM_CREATE_PARTY |
type |
| Update contact |
CAPSULE_CRM_UPDATE_PARTY |
partyId, party |
| Delete contact |
CAPSULE_CRM_DELETE_PARTY |
party_id |
| List tasks |
CAPSULE_CRM_LIST_TASKS |
None (optional filters) |
| List projects |
CAPSULE_CRM_LIST_PROJECTS |
None (optional filters) |
| List activity entries |
CAPSULE_CRM_LIST_ENTRIES_BY_DATE |
None (optional filters) |
| List org employees |
CAPSULE_CRM_LIST_ORG_EMPLOYEES |
Organisation ID |
| List deleted opportunities |
CAPSULE_CRM_LIST_DELETED_OPPORTUNITIES |
since |
Powered by Composio
1---
2name: capsule-crm-automation
3description: "Automate Capsule CRM operations -- manage contacts (parties), run structured filter queries, track tasks and projects, log entries, and handle organizations -- using natural language through the Composio MCP integration."
4category: crm
5requires:
6 mcp:
7 - rube
8---
9
10# Capsule CRM Automation
11
12Manage your Capsule CRM -- create and update contacts, run powerful filter queries on parties/opportunities/cases, track tasks and projects, browse activity entries, and organize team relationships -- all through natural language commands.
13
14**Toolkit docs:** [composio.dev/toolkits/capsule_crm](https://composio.dev/toolkits/capsule_crm)
15
16---
17
18## Setup
19
201. Add the Composio MCP server to your client configuration:
21 ```
22 https://rube.app/mcp
23 ```
242. Connect your Capsule CRM account when prompted (OAuth authentication).
253. Start issuing natural language commands to manage your CRM.
26
27---
28
29## Core Workflows
30
31### 1. Run Structured Filter Queries
32Query parties, opportunities, or cases (projects) with multiple filter conditions, operators, and sorting.
33
34**Tool:** `CAPSULE_CRM_RUN_FILTER_QUERY`
35
36**Example prompt:**
37> "Find all Capsule CRM contacts in California tagged as 'VIP' sorted by name"
38
39**Key parameters:**
40- `entity` (required) -- One of: `parties`, `opportunities`, `kases`
41- `filter` (required) -- Filter object with:
42 - `conditions` -- Array of conditions, each with:
43 - `field` -- Field name (e.g., "name", "email", "state", "country", "tag", "owner", "jobTitle", "addedOn")
44 - `operator` -- One of: "is", "is not", "starts with", "ends with", "contains", "is greater than", "is less than", "is after", "is before", "is older than", "is within last", "is within next"
45 - `value` -- Value to compare against
46 - `orderBy` -- Array of sort objects with `field` and `direction` ("ascending"/"descending")
47- `embed` -- Additional data to include in response
48- `page` / `perPage` -- Pagination (max 100 per page)
49
50**Important field notes:**
51- Address fields (`city`, `state`, `country`, `zip`) are top-level, NOT nested under "address"
52- Country must be an ISO 3166-1 alpha-2 code (e.g., "US", "GB", "CA")
53- Custom fields use `custom:{fieldId}` format
54- Organization fields use `org.` prefix (e.g., `org.name`, `org.tag`)
55
56---
57
58### 2. List and Manage Contacts (Parties)
59Retrieve all contacts with optional filtering by modification date and embedded related data.
60
61**Tool:** `CAPSULE_CRM_LIST_PARTIES`
62
63**Example prompt:**
64> "List all Capsule CRM contacts modified since January 2025 with their tags and organizations"
65
66**Key parameters:**
67- `since` -- ISO8601 date to filter contacts changed after this date
68- `embed` -- Additional data: "tags", "fields", "organisation", "missingImportantFields"
69- `page` / `perPage` -- Pagination (max 100 per page, default 50)
70
71---
72
73### 3. Create New Contacts
74Add people or organizations to your Capsule CRM with full details including emails, phones, addresses, tags, and custom fields.
75
76**Tool:** `CAPSULE_CRM_CREATE_PARTY`
77
78**Example prompt:**
79> "Create a new person in Capsule CRM: John Smith, VP of Sales at Acme Corp, john@acme.com"
80
81**Key parameters:**
82- `type` (required) -- "person" or "organisation"
83- For persons: `firstName`, `lastName`, `jobTitle`, `title`
84- For organisations: `name`
85- `emailAddresses` -- Array of `{address, type}` objects
86- `phoneNumbers` -- Array of `{number, type}` objects
87- `addresses` -- Array of address objects with `street`, `city`, `state`, `country`, `zip`, `type` (Home/Postal/Office/Billing/Shipping)
88- `organisation` -- Link to org by `{id}` or `{name}` (creates if not found)
89- `tags` -- Array of tags by `{name}` or `{id}`
90- `fields` -- Custom field values with `{definition, value}`
91- `websites` -- Array of `{address, service, type}` objects
92- `owner` -- Assign owner user `{id}`
93
94---
95
96### 4. Update Existing Contacts
97Modify any aspect of a party record including adding/removing emails, phones, tags, and custom fields.
98
99**Tool:** `CAPSULE_CRM_UPDATE_PARTY`
100
101**Example prompt:**
102> "Update Capsule CRM party 11587: add a work email john.new@acme.com and remove tag 'prospect'"
103
104**Key parameters:**
105- `partyId` (required) -- Integer ID of the party to update
106- `party` (required) -- Object with fields to update. Supports:
107 - All creation fields (name, emails, phones, addresses, etc.)
108 - `_delete: true` on sub-items to remove them (requires the item's `id`)
109 - Tags: add by `{name}` or remove with `{id, _delete: true}`
110
111---
112
113### 5. Track Tasks
114List tasks with filtering by status and embedded related data.
115
116**Tool:** `CAPSULE_CRM_LIST_TASKS`
117
118**Example prompt:**
119> "Show all open tasks in Capsule CRM with their linked parties and owners"
120
121**Key parameters:**
122- `status` -- Filter by status: "open", "completed", "pending" (array)
123- `embed` -- Additional data: "party", "opportunity", "kase", "owner", "nextTask"
124- `page` / `perPage` -- Pagination (max 100 per page, default 50)
125
126---
127
128### 6. Browse Projects and Activity Entries
129List projects (cases) and recent activity entries including notes, emails, and completed tasks.
130
131**Tools:** `CAPSULE_CRM_LIST_PROJECTS`, `CAPSULE_CRM_LIST_ENTRIES_BY_DATE`
132
133**Example prompt:**
134> "Show all open projects in Capsule CRM" / "Show recent activity entries with party details"
135
136**Key parameters for projects:**
137- `status` -- Filter by "OPEN" or "CLOSED"
138- `search` -- Search term for project names/descriptions
139- `since` -- ISO8601 date for modifications after this date
140- `embed` -- "tags,fields,party,opportunity,missingImportantFields"
141
142**Key parameters for entries:**
143- `embed` -- "party", "kase", "opportunity", "creator", "activityType"
144- `page` / `perPage` -- Pagination (max 100 per page)
145
146---
147
148## Known Pitfalls
149
150- **Address fields are top-level**: When filtering, use `state`, `city`, `country`, `zip` directly -- NOT `address.state` or nested syntax.
151- **Country codes are ISO alpha-2**: Filter by "US", "GB", "CA" -- not "United States" or "United Kingdom".
152- **Custom fields use special syntax**: Reference custom fields as `custom:{fieldId}` in filter conditions. For org-level custom fields, use `org.custom:{fieldId}`.
153- **Projects are called "kases" in the API**: Despite being "projects" in the UI, the API entity type is `kases`. Use `kases` in filter queries.
154- **Delete operations require item IDs**: When updating a party to remove sub-items (emails, phones, tags), you must include the item's `id` along with `_delete: true`. List the party first to get sub-item IDs.
155- **Pagination defaults to 50**: All list endpoints default to 50 items per page with a max of 100. Always implement pagination for complete data retrieval.
156- **Embed values vary by entity**: Not all embed options work for all entities. Check the documentation for supported embed values per endpoint.
157
158---
159
160## Quick Reference
161
162| Action | Tool Slug | Required Params |
163|---|---|---|
164| Run filter query | `CAPSULE_CRM_RUN_FILTER_QUERY` | `entity`, `filter` |
165| List contacts | `CAPSULE_CRM_LIST_PARTIES` | None (optional filters) |
166| Create contact | `CAPSULE_CRM_CREATE_PARTY` | `type` |
167| Update contact | `CAPSULE_CRM_UPDATE_PARTY` | `partyId`, `party` |
168| Delete contact | `CAPSULE_CRM_DELETE_PARTY` | `party_id` |
169| List tasks | `CAPSULE_CRM_LIST_TASKS` | None (optional filters) |
170| List projects | `CAPSULE_CRM_LIST_PROJECTS` | None (optional filters) |
171| List activity entries | `CAPSULE_CRM_LIST_ENTRIES_BY_DATE` | None (optional filters) |
172| List org employees | `CAPSULE_CRM_LIST_ORG_EMPLOYEES` | Organisation ID |
173| List deleted opportunities | `CAPSULE_CRM_LIST_DELETED_OPPORTUNITIES` | `since` |
174
175---
176
177*Powered by [Composio](https://composio.dev)*