Get the FREE Ultimate OpenClaw Setup Guide →

Capsule CRM Automation

npx machina-cli add skill ComposioHQ/awesome-claude-skills/capsule-crm-automation --openclaw
Files (1)
SKILL.md
7.5 KB

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

  1. Add the Composio MCP server to your client configuration:
    https://rube.app/mcp
    
  2. Connect your Capsule CRM account when prompted (OAuth authentication).
  3. 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

ActionTool SlugRequired Params
Run filter queryCAPSULE_CRM_RUN_FILTER_QUERYentity, filter
List contactsCAPSULE_CRM_LIST_PARTIESNone (optional filters)
Create contactCAPSULE_CRM_CREATE_PARTYtype
Update contactCAPSULE_CRM_UPDATE_PARTYpartyId, party
Delete contactCAPSULE_CRM_DELETE_PARTYparty_id
List tasksCAPSULE_CRM_LIST_TASKSNone (optional filters)
List projectsCAPSULE_CRM_LIST_PROJECTSNone (optional filters)
List activity entriesCAPSULE_CRM_LIST_ENTRIES_BY_DATENone (optional filters)
List org employeesCAPSULE_CRM_LIST_ORG_EMPLOYEESOrganisation ID
List deleted opportunitiesCAPSULE_CRM_LIST_DELETED_OPPORTUNITIESsince

Powered by Composio

Source

git clone https://github.com/ComposioHQ/awesome-claude-skills/blob/master/composio-skills/capsule-crm-automation/SKILL.mdView on GitHub

Overview

Capsule CRM Automation lets you manage contacts, organizations, and activities in Capsule CRM using natural language via the Composio MCP integration. It covers creating and updating records, running structured filter queries on parties, opportunities, and cases, and tracking tasks and projects, all through conversational prompts. This streamlines CRM workflows by turning intents into precise API calls.

How This Skill Works

You issue natural language commands that map to Capsule CRM tools such as CAPSULE_CRM_RUN_FILTER_QUERY, CAPSULE_CRM_LIST_PARTIES, and CAPSULE_CRM_CREATE_PARTY. The system translates your prompts into structured queries with fields, operators, and sort orders, returning results with optional embedded data. It relies on the MCP integration to authenticate and execute actions against Capsule CRM.

When to Use It

  • Need to find contacts, opportunities, or cases with multiple filters and sort orders
  • Want to list contacts with related data like tags and organizations
  • Need to create a new person or organization with emails, phones, addresses, tags, and custom fields
  • Need to update existing contact details or add/remove fields and relations
  • Want to track tasks, projects, browse activity entries, and map team relationships via natural language

Quick Start

  1. Step 1: Add the Composio MCP server to your client at https://rube.app/mcp
  2. Step 2: Connect your Capsule CRM account via OAuth when prompted
  3. Step 3: Start issuing natural language commands to manage your CRM

Best Practices

  • Use precise field names and documented operators (e.g., country as ISO code, address fields top-level)
  • When querying, specify embed options to fetch necessary related data in one response
  • Keep pagination within limits (page and perPage, max 100 per page)
  • Use ISO 3166-1 alpha-2 codes for countries and prefix organization fields with org. when needed
  • Reference the exact tool names ( CAPSULE_CRM_RUN_FILTER_QUERY, CAPSULE_CRM_LIST_PARTIES, CAPSULE_CRM_CREATE_PARTY ) in prompts

Example Use Cases

  • Find all Capsule CRM contacts in CA tagged as VIP, sorted by name
  • List all parties modified since 2025-01-01 with their tags and organizations
  • Create a new person: Jane Doe, VP of Sales at Acme Corp, jane@acme.com, with phone 555-1234 and office address, tags client and partner
  • Update John Smith's record to add a new email and append the tag Important
  • Show all projects for a client where status is active and due date is upcoming

Frequently Asked Questions

Add this skill to your agents

Related Skills

Sponsor this space

Reach thousands of developers