# Revamp CRM MCP by usefulapi (remote · revamp-crm.usefulapi.io)

Read Revamp CRM contacts, deals, notes and orders; create and update contacts, deals and notes.

- Trust score: 61/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-10-25

## Components

- remote · `revamp-crm.usefulapi.io`: 61/100 (this document), [markdown](https://verifymcp.io/servers/io-usefulapi-revamp-crm/revamp-crm.md), [page](https://verifymcp.io/servers/io-usefulapi-revamp-crm/revamp-crm)

## Channel facts

- Endpoint: `https://revamp-crm.usefulapi.io/mcp`
- Transports: `streamable-http`
- Auth: `required`
- Version: `1.0.3`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-10-25.

- **Endpoint Security**: 78/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation is enforced on tool calls, advertised via RFC 9728 protected-resource metadata. Discovery is public, which costs nothing: no tool can be invoked without a token.
  - HTTPS enforcement could not be verified: the plaintext port redirected somewhere other than https, so enforcement is unproven.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
  - The authorisation server offers only Dynamic Client Registration (RFC 7591), which MCP 2026-07-28 deprecated in favour of Client ID Metadata Documents.
- **Transport & Reachability**: 0/100
  - Transport check failed: declared streamable-http, but the endpoint redirected instead of responding directly.
- **Schema Quality & AI Usability**: 75/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 3595 tokens (~189/item across 19 items; 19 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 3/100
  - Stability observed for 1 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 90/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 70% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 19 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 20 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 60/100
  - Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28.

## Install

### How do I install the Revamp CRM MCP by usefulapi server?

Revamp CRM MCP by usefulapi is a hosted endpoint at https://revamp-crm.usefulapi.io/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http io-usefulapi-revamp-crm 'https://revamp-crm.usefulapi.io/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "io-usefulapi-revamp-crm": {
      "url": "https://revamp-crm.usefulapi.io/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "io-usefulapi-revamp-crm": {
      "type": "http",
      "url": "https://revamp-crm.usefulapi.io/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.io-usefulapi-revamp-crm]
url = "https://revamp-crm.usefulapi.io/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "io-usefulapi-revamp-crm": {
      "type": "remote",
      "url": "https://revamp-crm.usefulapi.io/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add io-usefulapi-revamp-crm --url 'https://revamp-crm.usefulapi.io/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  io-usefulapi-revamp-crm:
    url: "https://revamp-crm.usefulapi.io/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "io-usefulapi-revamp-crm": {
      "Transport": "http",
      "Url": "https://revamp-crm.usefulapi.io/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add io-usefulapi-revamp-crm -t streamable-http -u 'https://revamp-crm.usefulapi.io/mcp'
```

### Other

```json
{
  "mcpServers": {
    "io-usefulapi-revamp-crm": {
      "type": "http",
      "url": "https://revamp-crm.usefulapi.io/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-10-25 (score 61, +1)

- [functional improvement] Stability: unverified → 0.03
- [functional] Server version: 1.0.0 → 1.0.3

### 2026-10-24 (score 60)

First indexed and scored.

## MCP tools (19)

### `revampcrm_get_current_user` (~50 tokens)

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.

### `revampcrm_list_contact_stages` (~44 tokens)

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.

### `revampcrm_list_deal_currencies` (~37 tokens)

List deal currencies

The currencies that deals in this account can use (name, value, symbol). GET /Account/DealCurrencies.

### `revampcrm_list_custom_fields` (~67 tokens)

List contact 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.

### `revampcrm_list_contacts` (~394 tokens)

List or search contacts

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.

Input parameters:

- `added_from` (string): Created on or after this date.
- `added_to` (string): Created on or before this date.
- `assigned_user_id` (string): Only contacts owned by this user id.
- `city` (string)
- `contact_source` (string)
- `contact_stage` (string): Only contacts in this stage (see revampcrm_list_contact_stages).
- `contact_type` (string)
- `country` (string)
- `deal_stage` (string): Only contacts that have a deal in this stage.
- `email` (string): Only contacts with this email value.
- `gender` (string)
- `has_deals` (boolean): true = only contacts with deals.
- `is_customer` (boolean): true = only customers (contacts with orders).
- `keyword` (string): Free-text search (name, email, organization ...).
- `page` (integer): Page index as in the previous reply's resultsInfo.nextIndex (default: the first page).
- `pagesize` (integer): Contacts per page, 1-100 (default 25).
- `phone` (string): Only contacts with this phone number.
- `sort_by` (string): Field to sort by (e.g. name, createdon, updatedon).
- `sort_direction` (string)
- `state` (string)
- `subscribed` (integer): Subscription filter as Revamp CRM numbers it.
- `tags` (string): Only contacts with this tag.

### `revampcrm_get_contact` (~88 tokens)

Get contact

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.

Input parameters:

- `contact_id` (string, required): Revamp CRM contact id (_id from revampcrm_list_contacts).

### `revampcrm_list_contact_deals` (~56 tokens)

List a contact's deals

All deals of one contact (name, stage, status, value, currency, expected closing date, owner). GET /Contacts/{id}/Deals.

Input parameters:

- `contact_id` (string, required): Revamp CRM contact id.

### `revampcrm_list_deals` (~346 tokens)

List deals

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.

Input parameters:

- `closed_from` (string): Closed (won/lost) on or after this date.
- `closed_to` (string): Closed (won/lost) on or before this date.
- `contact_id` (string): Only deals of this contact.
- `created_from` (string): Created on or after this date.
- `created_to` (string): Created on or before this date.
- `currency` (string): Currency, e.g. USD (see revampcrm_list_deal_currencies).
- `expected_close_from` (string): Expected closing date on or after this date.
- `expected_close_to` (string): Expected closing date on or before this date.
- `limit` (integer): Show at most this many deals, 1-200 (default 50). The reply says how many matched in total.
- `owner_user_id` (string): Only deals owned by this Revamp CRM user id.
- `pipeline` (string): Pipeline name.
- `sort_by` (string): Field to sort by (e.g. Value, CreatedOn, ExpectedClosureDate).
- `sort_direction` (string)
- `status` (string): Deal status filter as existing deals show it, e.g. "Open", "Won" or "Lost".

### `revampcrm_search_deals` (~247 tokens)

Search deals

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.

Input parameters:

- `contact` (string): Contact name.
- `deal_source` (string)
- `deal_stage` (string)
- `expected_close_date` (string): A date as Revamp CRM accepts it, e.g. 2026-10-31.
- `limit` (integer): Show at most this many deals, 1-200 (default 50). The reply says how many matched in total.
- `name` (string): Deal name (contains).
- `owner_name` (string): Name of the deal owner.
- `pipeline` (string)
- `product` (string)
- `sales_region` (string)
- `sort_by` (string)
- `sort_direction` (string)
- `status` (string): e.g. "Open", "Won", "Lost".
- `value` (string): Deal value.

### `revampcrm_list_deals_by_stage` (~308 tokens)

List deals grouped by stage

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.

Input parameters:

- `closed_from` (string): Closed (won/lost) on or after this date.
- `closed_to` (string): Closed (won/lost) on or before this date.
- `contact_id` (string): Only deals of this contact.
- `created_from` (string): Created on or after this date.
- `created_to` (string): Created on or before this date.
- `currency` (string): Currency, e.g. USD (see revampcrm_list_deal_currencies).
- `expected_close_from` (string): Expected closing date on or after this date.
- `expected_close_to` (string): Expected closing date on or before this date.
- `limit` (integer): Show at most this many deals per stage, 1-200 (default 50).
- `owner_user_id` (string): Only deals owned by this Revamp CRM user id.
- `pipeline` (string): Pipeline name.
- `sort_by` (string): Field to sort by (e.g. Value, CreatedOn, ExpectedClosureDate).
- `sort_direction` (string)
- `status` (string): Deal status filter as existing deals show it, e.g. "Open", "Won" or "Lost".

### `revampcrm_get_note` (~55 tokens)

Get note

One note or timeline entry by id: text/message, type, author, related contact and deal, created date. GET /Notes/getNote/{id}.

Input parameters:

- `note_id` (string, required): Revamp CRM note id.

### `revampcrm_get_order` (~134 tokens)

Get e-commerce order

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}.

Input parameters:

- `order_id` (string, required): The order id in the store.
- `provider` (string, required): Store provider, e.g. "Shopify".
- `store` (string, required): Store name / domain as Revamp CRM stores it.

### `revampcrm_count_orders` (~66 tokens)

Count e-commerce orders

How many orders Revamp CRM has synced for one store. GET /Orders/Count/{provider}/{store}.

Input parameters:

- `provider` (string, required): Store provider, e.g. "Shopify".
- `store` (string, required): Store name / domain as Revamp CRM stores it.

### `revampcrm_create_contact` (~405 tokens)

Create contact

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.

Input parameters:

- `address_line1` (string)
- `address_line2` (string)
- `assigned_user_id` (string): Id of the Revamp CRM user who owns the contact (revampcrm_get_current_user returns your own).
- `city` (string)
- `contact_source` (string)
- `contact_stage` (string): A contact stage name (see revampcrm_list_contact_stages).
- `contact_type` (string): Contact type as Revamp CRM names it (see an existing contact).
- `country` (string): Country as Revamp CRM stores it (code or name; see an existing contact).
- `custom_fields` (object): Custom fields by Revamp property name, e.g. {"CustomField1": "Gold", "CustomField101": 42}. revampcrm_list_custom_fields explains what each one means.
- `description` (string): About / description text.
- `gender` (string)
- `name` (string, required): Full name of the contact (or of the organization).
- `organization` (string): Company name.
- `postal_code` (string)
- `primary_email` (string)
- `primary_phone` (string)
- `secondary_email` (string)
- `secondary_phone` (string)
- `state` (string)
- `subscribed` (string): Marketing email subscription state.
- `tags` (string): Tags, comma separated. On an update this REPLACES the contact's tags.
- `title` (string): Job title.
- `website` (string)

### `revampcrm_update_contact` (~414 tokens)

Update contact

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.

Input parameters:

- `address_line1` (string)
- `address_line2` (string)
- `assigned_user_id` (string): Id of the Revamp CRM user who owns the contact (revampcrm_get_current_user returns your own).
- `city` (string)
- `contact_id` (string, required): Revamp CRM contact id to update.
- `contact_source` (string)
- `contact_stage` (string): A contact stage name (see revampcrm_list_contact_stages).
- `contact_type` (string): Contact type as Revamp CRM names it (see an existing contact).
- `country` (string): Country as Revamp CRM stores it (code or name; see an existing contact).
- `custom_fields` (object): Custom fields by Revamp property name, e.g. {"CustomField1": "Gold", "CustomField101": 42}. revampcrm_list_custom_fields explains what each one means.
- `description` (string): About / description text.
- `gender` (string)
- `name` (string): Full name of the contact (or of the organization).
- `organization` (string): Company name.
- `postal_code` (string)
- `primary_email` (string)
- `primary_phone` (string)
- `secondary_email` (string)
- `secondary_phone` (string)
- `state` (string)
- `subscribed` (string): Marketing email subscription state.
- `tags` (string): Tags, comma separated. On an update this REPLACES the contact's tags.
- `title` (string): Job title.
- `website` (string)

### `revampcrm_create_deal` (~297 tokens)

Create deal

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.

Input parameters:

- `contact_id` (string): Contact the deal belongs to.
- `currency` (string): Currency, e.g. USD.
- `deal_source` (string)
- `deal_stage` (string, required): Stage name in the pipeline (required by Revamp CRM; see revampcrm_list_deals_by_stage CurrentStages).
- `expected_close_date` (string): Expected closing date, e.g. 2026-12-31.
- `name` (string, required): Deal name.
- `note` (string): Note stored with the deal.
- `owner_user_id` (string): Revamp CRM user id of the deal owner.
- `pipeline` (string): Pipeline name (default pipeline if omitted).
- `probability` (number): Win probability in percent.
- `product` (string)
- `sales_region` (string)
- `status` (string): Deal status as existing deals show it (see revampcrm_list_deals). Default "Open".
- `tags` (string): Tags, comma separated.
- `value` (number, required): Deal value in `currency` (required by Revamp CRM).

### `revampcrm_add_note` (~97 tokens)

Add note to a contact or deal

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.

Input parameters:

- `entity_id` (string, required): The contact id or deal id.
- `entity_type` (string, required): What the note is attached to.
- `text` (string, required): The note text.

### `revampcrm_mark_deal_won` (~97 tokens)

Mark deal won

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.

Input parameters:

- `deal_id` (string, required): Revamp CRM deal id (_id or DealId of a deal).
- `note` (string): Optional note stored with the change.

### `revampcrm_mark_deal_lost` (~112 tokens)

Mark deal lost

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.

Input parameters:

- `deal_id` (string, required): Revamp CRM deal id (_id or DealId of a deal).
- `note` (string): Optional note stored with the change.
- `reason` (string, required): Why the deal was lost.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/io-usefulapi-revamp-crm/revamp-crm#diagnostics

## Score history

- 2026-10-25: 61
- 2026-10-24: 60

## Common questions

### What is the Revamp CRM MCP by usefulapi server?

Revamp CRM MCP by usefulapi is listed in the public MCP registry as io.usefulapi/revamp-crm. Read Revamp CRM contacts, deals, notes and orders; create and update contacts, deals and notes. This page covers its hosted endpoint (https://revamp-crm.usefulapi.io/mcp).

### Is the Revamp CRM MCP by usefulapi server safe to use?

Revamp CRM MCP by usefulapi scores 61 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Revamp CRM MCP by usefulapi server expose?

Revamp CRM MCP by usefulapi exposes 19 tools: revampcrm_get_current_user, revampcrm_list_contact_stages, revampcrm_list_deal_currencies, revampcrm_list_custom_fields, revampcrm_list_contacts, and 14 more. Their descriptions and schemas cost roughly 3,314 tokens of context every time the server is loaded.

### Does the Revamp CRM MCP by usefulapi server require authentication?

Yes. Revamp CRM MCP by usefulapi asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.

### Is the Revamp CRM MCP by usefulapi server still maintained?

Revamp CRM MCP by usefulapi is still listed as active in the MCP registry. We last reached this channel on 25 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://revamp-crm.usefulapi.io/mcp
- Repository: https://github.com/m190/usefulapi-mcp
- Website: https://usefulapi.io/revamp-crm/
- Changelog RSS feed: https://verifymcp.io/servers/io-usefulapi-revamp-crm/revamp-crm.xml
- Changelog JSON feed: https://verifymcp.io/servers/io-usefulapi-revamp-crm/revamp-crm.json
- HTML version of this page: https://verifymcp.io/servers/io-usefulapi-revamp-crm/revamp-crm
