Automate Microsoft Dynamics 365 CRM operations including creating and updating contacts, accounts, leads, opportunities, sales orders, invoices, and support cases.
Toolkit docs: composio.dev/toolkits/dynamics365
This skill requires the Rube MCP server connected at https://rube.app/mcp.
Before executing any tools, ensure an active connection exists for the dynamics365 toolkit. If no connection is active, initiate one via RUBE_MANAGE_CONNECTIONS.
Create, update, retrieve, and list lead records.
Tools:
DYNAMICS365_DYNAMICSCRM_CREATE_LEAD -- Create a new leadDYNAMICS365_DYNAMICSCRM_UPDATE_LEAD -- Update an existing leadDYNAMICS365_DYNAMICSCRM_GET_A_LEAD -- Retrieve a lead by GUIDDYNAMICS365_DYNAMICSCRM_GET_ALL_LEADS -- List/filter all leadsKey Parameters for DYNAMICS365_DYNAMICSCRM_CREATE_LEAD:
firstname -- First name of the leadlastname -- Last name of the leademailaddress1 -- Primary email addresstelephone1 -- Primary phone numbercompanyname -- Associated company namesubject -- Brief title/descriptionKey Parameters for DYNAMICS365_DYNAMICSCRM_GET_ALL_LEADS:
filter -- OData filter, e.g., "contains(fullname,'John')"
select -- Fields to return, e.g., "fullname,emailaddress1"
orderby -- Sort expression, e.g., "createdon desc"
top -- Max number of resultsExample:
Tool: DYNAMICS365_DYNAMICSCRM_CREATE_LEAD
Arguments:
firstname: "Jane"
lastname: "Smith"
emailaddress1: "jane.smith@example.com"
companyname: "Acme Corp"
subject: "Interested in Enterprise plan"
Create and organize account (company) records in the CRM.
Tool: DYNAMICS365_DYNAMICSCRM_CREATE_ACCOUNT
Key Parameters:
name -- Account/company namedescription -- Description of the accountrevenue -- Revenue amount (number)accountcategorycode -- Category code (integer, default: 1)creditonhold -- Whether account is on credit hold (boolean)Example:
Tool: DYNAMICS365_DYNAMICSCRM_CREATE_ACCOUNT
Arguments:
name: "Contoso Ltd"
description: "Strategic partner for cloud services"
revenue: 5000000
creditonhold: false
Create detailed contact records with address and phone information.
Tool: DYNAMICS365_DYNAMICSCRM_CREATE_CONTACT
Key Parameters:
firstname, lastname -- Contact nameemailaddress1 -- Primary emailtelephone1 -- Primary phonemobilephone -- Mobile phonejobtitle -- Job titleaddress1_city, address1_stateorprovince, address1_postalcode, address1_country -- Address fieldsExample:
Tool: DYNAMICS365_DYNAMICSCRM_CREATE_CONTACT
Arguments:
firstname: "Bob"
lastname: "Johnson"
emailaddress1: "bob.johnson@example.com"
jobtitle: "VP of Engineering"
address1_city: "Seattle"
address1_stateorprovince: "WA"
Create and update sales opportunities with estimated values and close dates.
Tools:
DYNAMICS365_DYNAMICSCRM_CREATE_OPPORTUNITY -- Create a new opportunityDYNAMICS365_DYNAMICSCRM_UPDATE_OPPORTUNITY -- Update an existing opportunityKey Parameters for DYNAMICS365_DYNAMICSCRM_CREATE_OPPORTUNITY:
name (required) -- Opportunity titledescription -- Brief descriptionestimatedvalue -- Anticipated revenue (number)estimatedclosedate -- Expected close date in YYYY-MM-DD formatcustomer_account_id -- GUID of the related account (no curly braces)customer_contact_id -- GUID of the related contact (no curly braces)Key Parameters for DYNAMICS365_DYNAMICSCRM_UPDATE_OPPORTUNITY:
opportunity_id (required) -- GUID of the opportunityopportunityratingcode -- 1 (Cold), 2 (Warm), 3 (Hot)salesstagecode -- 1 (Qualify), 2 (Develop), 3 (Propose)Example:
Tool: DYNAMICS365_DYNAMICSCRM_CREATE_OPPORTUNITY
Arguments:
name: "Enterprise Cloud Migration"
estimatedvalue: 250000
estimatedclosedate: "2026-06-30"
description: "Full cloud migration project for Contoso"
Create and update sales orders; generate invoices for billing.
Tools:
DYNAMICS365_DYNAMICSCRM_CREATE_SALES_ORDER -- Create a new sales orderDYNAMICS365_DYNAMICSCRM_UPDATE_SALES_ORDER -- Update an existing sales orderDYNAMICS365_DYNAMICSCRM_CREATE_INVOICE -- Create a new invoiceKey Parameters for DYNAMICS365_DYNAMICSCRM_CREATE_SALES_ORDER:
name -- Sales order namedescription -- Descriptionaccount_id -- Reference to account, format: "/accounts(GUID)"
currency_id -- Currency reference, format: "/transactioncurrencies(GUID)"
price_level_id -- Price list reference, format: "/pricelevels(GUID)"
Key Parameters for DYNAMICS365_DYNAMICSCRM_UPDATE_SALES_ORDER:
salesorder_id (required) -- GUID of the sales ordername -- Updated namediscountamount -- Updated discountfreightamount -- Updated shipping costKey Parameters for DYNAMICS365_DYNAMICSCRM_CREATE_INVOICE:
name -- Invoice name/number, e.g., "Invoice #12345"
description -- Invoice descriptionaccount_id -- Related account referencecurrency_id -- Currency referenceprice_level_id -- Price list referenceCreate incident/case records for customer support tracking.
Tool: DYNAMICS365_DYNAMICSCRM_CREATE_CASE
Key Parameters:
title -- Subject/title of the casedescription -- Detailed descriptionprioritycode -- 1 (Low), 2 (Normal), 3 (High)caseorigincode -- 1 (Phone), 2 (Email), 3 (Web)account_id -- Related account, format: "/accounts(GUID)"
contact_id -- Related contact, format: "/contacts(GUID)"
Example:
Tool: DYNAMICS365_DYNAMICSCRM_CREATE_CASE
Arguments:
title: "Login issue reported by customer"
description: "Customer unable to access portal since Feb 10"
prioritycode: 3
caseorigincode: 2
| Pitfall | Detail |
|---|---|
| GUID format | All entity IDs are GUIDs (e.g., "00000000-0000-0000-0000-000000000000"). Do not include curly braces for opportunity/contact references. |
| Reference format | Related entity references use the format "/entityset(GUID)" (e.g., "/accounts(abc-123)"). Missing the leading slash or parentheses causes errors. |
| OData filter syntax | Use Dynamics 365 OData syntax for filter (e.g., contains(fullname,'John')). Incorrect syntax returns empty or error responses. |
| user_id default | Most tools default user_id to "me" for the authenticated user. Override only when acting on behalf of another user. |
| Required fields | CREATE_OPPORTUNITY requires name. Other create tools have no strict required fields but will create empty records without data. |
| Tool Slug | Description |
|---|---|
DYNAMICS365_DYNAMICSCRM_CREATE_LEAD |
Create a new lead record |
DYNAMICS365_DYNAMICSCRM_UPDATE_LEAD |
Update an existing lead |
DYNAMICS365_DYNAMICSCRM_GET_A_LEAD |
Retrieve a lead by GUID |
DYNAMICS365_DYNAMICSCRM_GET_ALL_LEADS |
List/filter all leads |
DYNAMICS365_DYNAMICSCRM_CREATE_ACCOUNT |
Create a new account |
DYNAMICS365_DYNAMICSCRM_CREATE_CONTACT |
Create a new contact |
DYNAMICS365_DYNAMICSCRM_CREATE_OPPORTUNITY |
Create a new opportunity |
DYNAMICS365_DYNAMICSCRM_UPDATE_OPPORTUNITY |
Update an existing opportunity |
DYNAMICS365_DYNAMICSCRM_CREATE_SALES_ORDER |
Create a new sales order |
DYNAMICS365_DYNAMICSCRM_UPDATE_SALES_ORDER |
Update an existing sales order |
DYNAMICS365_DYNAMICSCRM_CREATE_INVOICE |
Create a new invoice |
DYNAMICS365_DYNAMICSCRM_CREATE_CASE |
Create a support case/incident |
Powered by Composio