Revamp CRM MCP by usefulapi
Read Revamp CRM contacts, deals, notes and orders; create and update contacts, deals and notes.
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"revamp-crm": {
"url": "https://revamp-crm.usefulapi.io/mcp"
}
}
}Remote-Endpunkte
https://revamp-crm.usefulapi.io/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (19)
🟢revampcrm_get_current_user
The Revamp CRM user the credentials belong to: id, name, email and role. Use the id as owner_user_id / assigned_user_id. GET /User/WhoAmI.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢revampcrm_list_contact_stages
The contact (lead) stage names configured in the account, in order. Use them as contact_stage filters and values. GET /Account/ContactStage.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢revampcrm_list_deal_currencies
The currencies that deals in this account can use (name, value, symbol). GET /Account/DealCurrencies.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢revampcrm_list_custom_fields
The contact custom fields defined in the account: CustomFieldName (the property name, e.g. CustomField3), DisplayName, Type and list options. Read this to interpret CustomFieldN values on contacts and to set them. GET /Account/getAccountCustomFields.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢revampcrm_list_contacts(keyword, tags, contact_stage, deal_stage, assigned_user_id, ...)
Search and list contacts (people and organizations), newest filters first. With no filter it lists all contacts. Each item has name, organization, email/phone (ContactInfo), tags, stage, owner, last-contacted info and e-commerce order summary. resultsInfo carries totalCount and hasNext/nextIndex: pass nextIndex as `page` for the next page. GET /Contacts.
Eingabe-Schema
{
"type": "object",
"properties": {
"keyword": {
"description": "Free-text search (name, email, organization ...).",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"tags": {
"description": "Only contacts with this tag.",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"contact_stage": {
"description": "Only contacts in this stage (see revampcrm_list_contact_stages).",
"type": "string",
"minLength": 1,
"maxLength": 100
},
"deal_stage": {
"description": "Only contacts that have a deal in this stage.",
"type": "string",
"minLength": 1,
"maxLength": 100
},
"assigned_user_id": {
"description": "Only contacts owned by this user id.",
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"contact_type": {
"type": "string",
"minLength": 1,
"maxLength": 50
},
"contact_source": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"email": {
"description": "Only contacts with this email value.",
"type": "string",
"minLength": 1,
"maxLength": 254
},
"phone": {
"description": "Only contacts with this phone number.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"country": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"state": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"city": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"gender": {
"type": "string",
"minLength": 1,
"maxLength": 20
},
"has_deals": {
"description": "true = only contacts with deals.",
"type": "boolean"
},
"is_customer": {
"description": "true = only customers (contacts with orders).",
"type": "boolean"
},
"subscribed": {
"description": "Subscription filter as Revamp CRM numbers it.",
"type": "integer",
"minimum": 0,
"maximum": 5
},
"added_from": {
"description": "Created on or after this date.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"added_to": {
"description": "Created on or before this date.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"sort_by": {
"description": "Field to sort by (e.g. name, createdon, updatedon).",
"type": "string",
"minLength": 1,
"maxLength": 50
},
"sort_direction": {
"type": "string",
"enum": [
"asc",
"desc"
]
},
"page": {
"description": "Page index as in the previous reply's resultsInfo.nextIndex (default: the first page).",
"type": "integer",
"minimum": 0,
"maximum": 100000
},
"pagesize": {
"description": "Contacts per page, 1-100 (default 25).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢revampcrm_get_contact(contact_id)
One contact by id with full details: contact info, address, tags, stage, custom fields, owner, previous/next task, deal totals (won/lost/open per currency), e-commerce order summary and order details. GET /Contacts/GetSingleContact/{id}/true.
Eingabe-Schema
{
"type": "object",
"properties": {
"contact_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Revamp CRM contact id (_id from revampcrm_list_contacts)."
}
},
"required": [
"contact_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢revampcrm_list_contact_deals(contact_id)
All deals of one contact (name, stage, status, value, currency, expected closing date, owner). GET /Contacts/{id}/Deals.
Eingabe-Schema
{
"type": "object",
"properties": {
"contact_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Revamp CRM contact id."
}
},
"required": [
"contact_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢revampcrm_list_deals(status, pipeline, owner_user_id, contact_id, currency, ...)
List deals with optional filters (status, pipeline, owner, contact, currency, created / expected-closing / closed date ranges). Each deal has name, stage, status, value, probability, forecasted sale, expected closing date, contact, owner and tags. The deal endpoints have no paging: the reply is cut to `limit` and says how many matched. GET /Deals/List.
Eingabe-Schema
{
"type": "object",
"properties": {
"status": {
"description": "Deal status filter as existing deals show it, e.g. \"Open\", \"Won\" or \"Lost\".",
"type": "string",
"minLength": 1,
"maxLength": 50
},
"pipeline": {
"description": "Pipeline name.",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"owner_user_id": {
"description": "Only deals owned by this Revamp CRM user id.",
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"contact_id": {
"description": "Only deals of this contact.",
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"currency": {
"description": "Currency, e.g. USD (see revampcrm_list_deal_currencies).",
"type": "string",
"minLength": 1,
"maxLength": 20
},
"created_from": {
"description": "Created on or after this date.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"created_to": {
"description": "Created on or before this date.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"expected_close_from": {
"description": "Expected closing date on or after this date.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"expected_close_to": {
"description": "Expected closing date on or before this date.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"closed_from": {
"description": "Closed (won/lost) on or after this date.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"closed_to": {
"description": "Closed (won/lost) on or before this date.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"sort_by": {
"description": "Field to sort by (e.g. Value, CreatedOn, ExpectedClosureDate).",
"type": "string",
"minLength": 1,
"maxLength": 50
},
"sort_direction": {
"type": "string",
"enum": [
"asc",
"desc"
]
},
"limit": {
"description": "Show at most this many deals, 1-200 (default 50). The reply says how many matched in total.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 200
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢revampcrm_search_deals(name, status, deal_stage, contact, owner_name, ...)
Search deals by name, status, stage, contact, owner, pipeline, product, sales region or deal source (text match as Revamp CRM defines it). Revamp CRM applies `limit` itself and gives no total: may_have_more is true when a full page came back. GET /Deals/Search.
Eingabe-Schema
{
"type": "object",
"properties": {
"name": {
"description": "Deal name (contains).",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"status": {
"description": "e.g. \"Open\", \"Won\", \"Lost\".",
"type": "string",
"minLength": 1,
"maxLength": 50
},
"deal_stage": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"contact": {
"description": "Contact name.",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"owner_name": {
"description": "Name of the deal owner.",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"pipeline": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"product": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"sales_region": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"deal_source": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"value": {
"description": "Deal value.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"expected_close_date": {
"type": "string",
"minLength": 1,
"maxLength": 40,
"description": "A date as Revamp CRM accepts it, e.g. 2026-10-31."
},
"sort_by": {
"type": "string",
"minLength": 1,
"maxLength": 50
},
"sort_direction": {
"type": "string",
"enum": [
"asc",
"desc"
]
},
"limit": {
"description": "Show at most this many deals, 1-200 (default 50). The reply says how many matched in total.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 200
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢revampcrm_list_deals_by_stage(status, pipeline, owner_user_id, contact_id, currency, ...)
The deal pipeline board: deals grouped by stage (with the stage names in CurrentStages). Same filters as revampcrm_list_deals. At most `limit` deals are shown per stage. GET /Deals/ByStage.
Eingabe-Schema
{
"type": "object",
"properties": {
"status": {
"description": "Deal status filter as existing deals show it, e.g. \"Open\", \"Won\" or \"Lost\".",
"type": "string",
"minLength": 1,
"maxLength": 50
},
"pipeline": {
"description": "Pipeline name.",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"owner_user_id": {
"description": "Only deals owned by this Revamp CRM user id.",
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"contact_id": {
"description": "Only deals of this contact.",
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"currency": {
"description": "Currency, e.g. USD (see revampcrm_list_deal_currencies).",
"type": "string",
"minLength": 1,
"maxLength": 20
},
"created_from": {
"description": "Created on or after this date.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"created_to": {
"description": "Created on or before this date.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"expected_close_from": {
"description": "Expected closing date on or after this date.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"expected_close_to": {
"description": "Expected closing date on or before this date.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"closed_from": {
"description": "Closed (won/lost) on or after this date.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"closed_to": {
"description": "Closed (won/lost) on or before this date.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"sort_by": {
"description": "Field to sort by (e.g. Value, CreatedOn, ExpectedClosureDate).",
"type": "string",
"minLength": 1,
"maxLength": 50
},
"sort_direction": {
"type": "string",
"enum": [
"asc",
"desc"
]
},
"limit": {
"description": "Show at most this many deals per stage, 1-200 (default 50).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 200
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢revampcrm_get_note(note_id)
One note or timeline entry by id: text/message, type, author, related contact and deal, created date. GET /Notes/getNote/{id}.
Eingabe-Schema
{
"type": "object",
"properties": {
"note_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Revamp CRM note id."
}
},
"required": [
"note_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢revampcrm_get_order(provider, store, order_id)
One synced e-commerce order (Shopify, WooCommerce, BigCommerce ...) by the store's own order id: totals, tax, discount, shipping, financial and shipping status, line items and customer. Needs the provider name and store name exactly as Revamp CRM stores them (see ExternalProviders / Shop on a contact). GET /Orders/Get/{provider}/{store}/{id}.
Eingabe-Schema
{
"type": "object",
"properties": {
"provider": {
"type": "string",
"minLength": 1,
"maxLength": 50,
"description": "Store provider, e.g. \"Shopify\"."
},
"store": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Store name / domain as Revamp CRM stores it."
},
"order_id": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "The order id in the store."
}
},
"required": [
"provider",
"store",
"order_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢revampcrm_count_orders(provider, store)
How many orders Revamp CRM has synced for one store. GET /Orders/Count/{provider}/{store}.
Eingabe-Schema
{
"type": "object",
"properties": {
"provider": {
"type": "string",
"minLength": 1,
"maxLength": 50,
"description": "Store provider, e.g. \"Shopify\"."
},
"store": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Store name / domain as Revamp CRM stores it."
}
},
"required": [
"provider",
"store"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟡revampcrm_create_contact(name, title, organization, primary_email, secondary_email, ...)
WRITE: create a new contact (person or organization) in the Revamp CRM account. It does not email or message the contact. Search first (revampcrm_list_contacts with keyword/email) so you do not create a duplicate: this tool does not check. Returns Revamp CRM's import result (status, message, the new id in ImportingIntoId). POST /Contacts/New.
Eingabe-Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Full name of the contact (or of the organization)."
},
"title": {
"description": "Job title.",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"organization": {
"description": "Company name.",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"primary_email": {
"type": "string",
"maxLength": 254,
"format": "email",
"pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
},
"secondary_email": {
"type": "string",
"maxLength": 254,
"format": "email",
"pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
},
"primary_phone": {
"type": "string",
"minLength": 1,
"maxLength": 40
},
"secondary_phone": {
"type": "string",
"minLength": 1,
"maxLength": 40
},
"website": {
"type": "string",
"minLength": 1,
"maxLength": 300
},
"address_line1": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"address_line2": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"city": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"state": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"postal_code": {
"type": "string",
"minLength": 1,
"maxLength": 30
},
"country": {
"description": "Country as Revamp CRM stores it (code or name; see an existing contact).",
"type": "string",
"minLength": 1,
"maxLength": 100
},
"description": {
"description": "About / description text.",
"type": "string",
"minLength": 1,
"maxLength": 5000
},
"tags": {
"description": "Tags, comma separated. On an update this REPLACES the contact's tags.",
"type": "string",
"minLength": 1,
"maxLength": 500
},
"gender": {
"type": "string",
"minLength": 1,
"maxLength": 20
},
"contact_stage": {
"description": "A contact stage name (see revampcrm_list_contact_stages).",
"type": "string",
"minLength": 1,
"maxLength": 100
},
"contact_source": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"contact_type": {
"description": "Contact type as Revamp CRM names it (see an existing contact).",
"type": "string",
"minLength": 1,
"maxLength": 50
},
"assigned_user_id": {
"description": "Id of the Revamp CRM user who owns the contact (revampcrm_get_current_user returns your own).",
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"subscribed": {
"description": "Marketing email subscription state.",
"type": "string",
"enum": [
"UNSUBSCRIBED",
"MARKETING_OFF",
"MARKETING_ON"
]
},
"custom_fields": {
"description": "Custom fields by Revamp property name, e.g. {\"CustomField1\": \"Gold\", \"CustomField101\": 42}. revampcrm_list_custom_fields explains what each one means.",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"anyOf": [
{
"type": "string",
"maxLength": 1000
},
{
"type": "number"
}
]
}
}
},
"required": [
"name"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴revampcrm_update_contact(contact_id, name, title, organization, primary_email, ...)
WRITE: change fields of an existing contact. Only the fields you pass change: the tool reads the stored contact first and sends it back with your changes (Revamp CRM's update replaces the whole record). `tags` replaces the contact's tags; passing a field overwrites its old value. It does not email or message the contact. PUT /Contacts/Edit.
Eingabe-Schema
{
"type": "object",
"properties": {
"contact_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Revamp CRM contact id to update."
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Full name of the contact (or of the organization)."
},
"title": {
"description": "Job title.",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"organization": {
"description": "Company name.",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"primary_email": {
"type": "string",
"maxLength": 254,
"format": "email",
"pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
},
"secondary_email": {
"type": "string",
"maxLength": 254,
"format": "email",
"pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
},
"primary_phone": {
"type": "string",
"minLength": 1,
"maxLength": 40
},
"secondary_phone": {
"type": "string",
"minLength": 1,
"maxLength": 40
},
"website": {
"type": "string",
"minLength": 1,
"maxLength": 300
},
"address_line1": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"address_line2": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"city": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"state": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"postal_code": {
"type": "string",
"minLength": 1,
"maxLength": 30
},
"country": {
"description": "Country as Revamp CRM stores it (code or name; see an existing contact).",
"type": "string",
"minLength": 1,
"maxLength": 100
},
"description": {
"description": "About / description text.",
"type": "string",
"minLength": 1,
"maxLength": 5000
},
"tags": {
"description": "Tags, comma separated. On an update this REPLACES the contact's tags.",
"type": "string",
"minLength": 1,
"maxLength": 500
},
"gender": {
"type": "string",
"minLength": 1,
"maxLength": 20
},
"contact_stage": {
"description": "A contact stage name (see revampcrm_list_contact_stages).",
"type": "string",
"minLength": 1,
"maxLength": 100
},
"contact_source": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"contact_type": {
"description": "Contact type as Revamp CRM names it (see an existing contact).",
"type": "string",
"minLength": 1,
"maxLength": 50
},
"assigned_user_id": {
"description": "Id of the Revamp CRM user who owns the contact (revampcrm_get_current_user returns your own).",
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"subscribed": {
"description": "Marketing email subscription state.",
"type": "string",
"enum": [
"UNSUBSCRIBED",
"MARKETING_OFF",
"MARKETING_ON"
]
},
"custom_fields": {
"description": "Custom fields by Revamp property name, e.g. {\"CustomField1\": \"Gold\", \"CustomField101\": 42}. revampcrm_list_custom_fields explains what each one means.",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"anyOf": [
{
"type": "string",
"maxLength": 1000
},
{
"type": "number"
}
]
}
}
},
"required": [
"contact_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟡revampcrm_create_deal(name, contact_id, value, currency, pipeline, ...)
WRITE: create a new deal (opportunity) in the Revamp CRM account, optionally linked to a contact. It does not message anyone. Use revampcrm_list_deals_by_stage (CurrentStages) for valid stage names and revampcrm_list_deal_currencies for currencies. POST /Deals.
Eingabe-Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Deal name."
},
"contact_id": {
"description": "Contact the deal belongs to.",
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"value": {
"type": "number",
"minimum": 0,
"maximum": 1000000000000,
"description": "Deal value in `currency` (required by Revamp CRM)."
},
"currency": {
"description": "Currency, e.g. USD.",
"type": "string",
"minLength": 1,
"maxLength": 20
},
"pipeline": {
"description": "Pipeline name (default pipeline if omitted).",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"deal_stage": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Stage name in the pipeline (required by Revamp CRM; see revampcrm_list_deals_by_stage CurrentStages)."
},
"status": {
"description": "Deal status as existing deals show it (see revampcrm_list_deals). Default \"Open\".",
"type": "string",
"minLength": 1,
"maxLength": 50
},
"probability": {
"description": "Win probability in percent.",
"type": "number",
"minimum": 0,
"maximum": 100
},
"expected_close_date": {
"description": "Expected closing date, e.g. 2026-12-31.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"owner_user_id": {
"description": "Revamp CRM user id of the deal owner.",
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"product": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"sales_region": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"deal_source": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"tags": {
"description": "Tags, comma separated.",
"type": "string",
"minLength": 1,
"maxLength": 500
},
"note": {
"description": "Note stored with the deal.",
"type": "string",
"minLength": 1,
"maxLength": 5000
}
},
"required": [
"name",
"value",
"deal_stage"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟡revampcrm_add_note(entity_type, entity_id, text)
WRITE: add a note to a contact or a deal timeline in Revamp CRM. It is an internal note: nothing is sent to the contact. Adding twice creates two notes. POST /Notes/{Contact|Deal}/{id}/Add.
Eingabe-Schema
{
"type": "object",
"properties": {
"entity_type": {
"type": "string",
"enum": [
"Contact",
"Deal"
],
"description": "What the note is attached to."
},
"entity_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "The contact id or deal id."
},
"text": {
"type": "string",
"minLength": 1,
"maxLength": 10000,
"description": "The note text."
}
},
"required": [
"entity_type",
"entity_id",
"text"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴revampcrm_mark_deal_won(deal_id, note)
WRITE: mark a deal as Won in Revamp CRM (its status changes and it counts in won-deal reports). It does not message the contact. Check the deal first with revampcrm_search_deals. POST /Deals/Won.
Eingabe-Schema
{
"type": "object",
"properties": {
"deal_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Revamp CRM deal id (_id or DealId of a deal)."
},
"note": {
"description": "Optional note stored with the change.",
"type": "string",
"minLength": 1,
"maxLength": 5000
}
},
"required": [
"deal_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴revampcrm_mark_deal_lost(deal_id, reason, note)
WRITE: mark a deal as Lost in Revamp CRM with a reason (its status changes and it counts in lost-deal reports). It does not message the contact. Check the deal first with revampcrm_search_deals. POST /Deals/Lost.
Eingabe-Schema
{
"type": "object",
"properties": {
"deal_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Revamp CRM deal id (_id or DealId of a deal)."
},
"reason": {
"type": "string",
"minLength": 1,
"maxLength": 500,
"description": "Why the deal was lost."
},
"note": {
"description": "Optional note stored with the change.",
"type": "string",
"minLength": 1,
"maxLength": 5000
}
},
"required": [
"deal_id",
"reason"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Community
Nachweis