# Pipeline CRM MCP by usefulapi (remote · pipeline-crm.usefulapi.io)

Manage Pipeline CRM deals, people, companies, notes and calendar entries.

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

## Components

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

## Channel facts

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

## 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-17.

- **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**: 78/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 4970 tokens (~165/item across 30 items; 30 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 17/100
  - Stability observed for 5 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% 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 30 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 31 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 Pipeline CRM MCP by usefulapi server?

Pipeline CRM MCP by usefulapi is a hosted endpoint at https://pipeline-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-pipeline-crm 'https://pipeline-crm.usefulapi.io/mcp'
```

### Cursor

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

### VS Code

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

### Codex

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

### opencode

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

### OpenClaw

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

### Hermes

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

### Netclaw

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

### Vellum

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

### Other

```json
{
  "mcpServers": {
    "io-usefulapi-pipeline-crm": {
      "type": "http",
      "url": "https://pipeline-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-17 (score 64, +1)

No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-14 (score 63, +3)

- [security] The server rewrote its instructions, which are the text every model session reads
- [functional] The server now declares the “prompts” capability
- [functional] First check of Schema quality: 100
- [functional] New prompt “getting_started”
- [functional] Server version: 1.0.0 → 1.1.0

### 2026-10-13 (score 60, +1)

- [functional improvement] Stability: unverified → 0.03

### 2026-10-12 (score 59)

First indexed and scored.

## MCP tools (30)

### `pipelinecrm_get_profile` (~42 tokens)

Get my profile

The Pipeline CRM user this credential acts as: id, name and whether they are an account admin. The user's api_key is never returned. GET /profile.

### `pipelinecrm_list_users` (~125 tokens)

List users

List the users of the Pipeline CRM account (id, name, email, team, admin flag). Use the ids as owners of deals, people and companies. api_key values are never returned. GET /users.

Input parameters:

- `email` (string): Only users with this email address.
- `including_inactive` (boolean): Also return deactivated users.
- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `per_page` (integer): Results per page, 1-200 (default 25).

### `pipelinecrm_get_user` (~44 tokens)

Get user

One user of the account by id. The user's api_key is never returned. GET /users/{id}.

Input parameters:

- `user_id` (integer, required): Pipeline CRM user id.

### `pipelinecrm_list_deals` (~496 tokens)

List deals

List or search deals with stage, owner, company, primary contact, value, probability and expected close date. Filter by name, stage, pipeline, status, owner, company, contact, archived flag, value range and created, expected-close, closed or modified dates. Money values come back as decimal strings. GET /deals.

Input parameters:

- `archived` (boolean): true = archived deals only, false = not archived only.
- `closed_after` (string): Closed (won or lost) on or after this date (yyyy-mm-dd).
- `closed_before` (string): Closed (won or lost) on or before this date (yyyy-mm-dd).
- `company_name` (string): Only deals whose company name contains this text.
- `created_after` (string): Created on or after this date (yyyy-mm-dd).
- `created_before` (string): Created on or before this date (yyyy-mm-dd).
- `expected_close_after` (string): Expected to close on or after this date (yyyy-mm-dd).
- `expected_close_before` (string): Expected to close on or before this date (yyyy-mm-dd).
- `max_value` (number): Only deals worth at most this much.
- `min_value` (number): Only deals worth at least this much.
- `modified_after` (string): Modified on or after this date (yyyy-mm-dd).
- `name` (string): Deals whose name contains this text.
- `owner_id` (integer): Only deals owned by this user id.
- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `per_page` (integer): Results per page, 1-200 (default 25).
- `pipeline_id` (integer): Only deals in this deal pipeline id (see pipelinecrm_list_deal_pipelines).
- `primary_contact_id` (integer): Only deals whose primary contact is this person id.
- `sort` (string): Sort column key, with a leading - for descending; several keys separated by commas. Example: -deal_value,deal_name. Custom fields sort as custom_label_<id>.
- `stage_id` (integer): Only deals in this deal stage id (see pipelinecrm_list_deal_stages).
- `status_id` (integer): Only deals with this deal status id (open, won, lost... see pipelinecrm_list_lookup with kind deal_statuses).

### `pipelinecrm_get_deal` (~59 tokens)

Get deal

One deal by id with owner, company, people, stage, status, loss/won reasons, tags, custom fields and the next task. GET /deals/{id}.

Input parameters:

- `deal_id` (integer, required): Pipeline CRM deal id.

### `pipelinecrm_deal_totals_by_stage` (~44 tokens)

Deal totals by stage

Count and total value of the deals visible to the user in every deal stage: the pipeline summary. GET /deals/totals_by_stage.

### `pipelinecrm_list_deal_notes` (~96 tokens)

List notes on a deal

List the notes (activities) logged on one deal, with author, category and content. GET /deals/{id}/notes.

Input parameters:

- `deal_id` (integer, required): Pipeline CRM deal id.
- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `per_page` (integer): Results per page, 1-200 (default 25).

### `pipelinecrm_create_deal` (~278 tokens)

Create deal

WRITE: create a deal. Give the owner (user id), stage id, value, expected close date and company or primary contact when known; a new company is created from company_name if no company_id is given. No email is sent to the owner. POST /deals.

Input parameters:

- `company_id` (integer): Existing company id.
- `company_name` (string): Creates a new company with this name for the deal.
- `custom_fields` (object): Custom field values keyed by the custom field's key (see the account's custom field labels in Pipeline CRM).
- `expected_close_date` (string): Expected close date (yyyy-mm-dd).
- `name` (string, required): Deal name.
- `owner_id` (integer): User id of the owner (default: the authenticated user).
- `person_ids` (array): Ids of the people associated with the deal.
- `primary_contact_id` (integer): Existing person id of the primary contact.
- `source_id` (integer): Lead source id (see pipelinecrm_list_lookup with kind lead_sources).
- `stage_id` (integer): Deal stage id (see pipelinecrm_list_deal_stages).
- `summary` (string): Description of the deal.
- `tag_ids` (array): Deal tag ids.
- `value`: The deal's value in its currency.

### `pipelinecrm_update_deal` (~379 tokens)

Update deal

WRITE: change fields of a deal; only the fields you pass change. Move it to another stage with stage_id. Setting probability to 100 or 0 closes the deal as won or lost; give won/loss reason ids when you do. Archive with archived: true. No email is sent to a new owner. PUT /deals/{id}.

Input parameters:

- `archived` (boolean): true archives the deal, false restores it.
- `closed_time` (string): Actual close date (yyyy-mm-dd).
- `company_id` (integer): Company id.
- `custom_fields` (object): Custom field values keyed by the custom field's key (see the account's custom field labels in Pipeline CRM).
- `deal_id` (integer, required): Pipeline CRM deal id.
- `expected_close_date` (string): New expected close date (yyyy-mm-dd).
- `loss_reason_id` (integer): Deal loss reason id.
- `loss_reason_notes` (string): Why the deal was lost.
- `name` (string): New deal name.
- `owner_id` (integer): New owner user id.
- `person_ids` (array): Full list of associated person ids (replaces the list).
- `primary_contact_id` (integer): Primary contact person id.
- `probability` (integer): Probability of closing, 0-100. 100 closes the deal as won, 0 as lost.
- `stage_id` (integer): Move the deal to this deal stage id.
- `status_id` (integer): Deal status id.
- `summary` (string): New description.
- `tag_ids` (array): Full list of deal tag ids (replaces the list).
- `value`: New value.
- `won_reason_id` (integer): Deal won reason id.
- `won_reason_notes` (string): Why the deal was won.

### `pipelinecrm_list_people` (~353 tokens)

List people (leads and contacts)

List or search people (leads and contacts) with email, phones, position, company, owner, lead status and tags. Use search for a quick match on name, email or company name, or filter precisely. GET /people.

Input parameters:

- `company_id` (integer): Only people at this company id.
- `company_name` (string): Only people whose company name contains this text.
- `created_after` (string): Created on or after this date (yyyy-mm-dd).
- `created_before` (string): Created on or before this date (yyyy-mm-dd).
- `email` (string): Matches the work email address.
- `modified_after` (string): Modified on or after this date (yyyy-mm-dd).
- `name` (string): Matches the first or last name.
- `owner_id` (integer): Only people owned by this user id.
- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `per_page` (integer): Results per page, 1-200 (default 25).
- `search` (string): Matches first name, last name, email or company name.
- `sort` (string): Sort column key, with a leading - for descending; several keys separated by commas. Example: -deal_value,deal_name. Custom fields sort as custom_label_<id>.
- `source_id` (integer): Only people with this lead source id.
- `status_id` (integer): Only people with this lead status id (see pipelinecrm_list_lookup with kind lead_statuses).
- `tag_ids` (array): Only people with these tag ids.
- `type` (string): Only leads or only contacts.

### `pipelinecrm_get_person` (~51 tokens)

Get person

One person (lead or contact) by id with all contact details, company, owner, tags and custom fields. GET /people/{id}.

Input parameters:

- `person_id` (integer, required): Pipeline CRM person id.

### `pipelinecrm_list_person_deals` (~87 tokens)

List deals of a person

List the deals one person is associated with. GET /people/{id}/deals.

Input parameters:

- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `per_page` (integer): Results per page, 1-200 (default 25).
- `person_id` (integer, required): Pipeline CRM person id.

### `pipelinecrm_list_person_notes` (~87 tokens)

List notes on a person

List the notes (activities) logged on one person. GET /people/{id}/notes.

Input parameters:

- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `per_page` (integer): Results per page, 1-200 (default 25).
- `person_id` (integer, required): Pipeline CRM person id.

### `pipelinecrm_create_person` (~236 tokens)

Create person

WRITE: create a lead or contact. Pass at least a first or last name or an email. No email is sent to the owner. POST /people.

Input parameters:

- `company_id` (integer): Existing company id.
- `company_name` (string): Links the company with this name, creating it when none matches.
- `custom_fields` (object): Custom field values keyed by the custom field's key (see the account's custom field labels in Pipeline CRM).
- `email` (string): Work email address.
- `first_name` (string): First name.
- `last_name` (string): Last name.
- `lead_source_id` (integer): Lead source id.
- `lead_status_id` (integer): Lead status id.
- `mobile` (string): Mobile phone.
- `owner_id` (integer): Owner user id.
- `phone` (string): Work phone.
- `position` (string): Job title.
- `summary` (string): Notes about the person.
- `tag_ids` (array): Full list of contact tag ids.
- `type` (string): Lead or Contact (default: the account's default).

### `pipelinecrm_update_person` (~244 tokens)

Update person

WRITE: change fields of a person; only the fields you pass change. Pass type Contact to convert a lead. PUT /people/{id}.

Input parameters:

- `company_id` (integer): Existing company id.
- `company_name` (string): Links the company with this name, creating it when none matches.
- `custom_fields` (object): Custom field values keyed by the custom field's key (see the account's custom field labels in Pipeline CRM).
- `email` (string): Work email address.
- `first_name` (string): First name.
- `last_name` (string): Last name.
- `lead_source_id` (integer): Lead source id.
- `lead_status_id` (integer): Lead status id.
- `mobile` (string): Mobile phone.
- `owner_id` (integer): Owner user id.
- `person_id` (integer, required): Pipeline CRM person id.
- `phone` (string): Work phone.
- `position` (string): Job title.
- `summary` (string): Notes about the person.
- `tag_ids` (array): Full list of contact tag ids.
- `type` (string): Convert the record to a Lead or a Contact.

### `pipelinecrm_list_companies` (~257 tokens)

List companies

List or search companies with address, website, phones, owner, tags and pipeline totals. GET /companies.

Input parameters:

- `city` (string): Companies in this city.
- `country` (string): Companies in this country.
- `created_after` (string): Created on or after this date (yyyy-mm-dd).
- `created_before` (string): Created on or before this date (yyyy-mm-dd).
- `is_customer` (boolean): true = customers only, false = non-customers only.
- `modified_after` (string): Modified on or after this date (yyyy-mm-dd).
- `name` (string): Companies whose name starts with this text.
- `owner_id` (integer): Only companies owned by this user id.
- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `per_page` (integer): Results per page, 1-200 (default 25).
- `sort` (string): Sort column key, with a leading - for descending; several keys separated by commas. Example: -deal_value,deal_name. Custom fields sort as custom_label_<id>.
- `tag_ids` (array): Only companies with these tag ids.

### `pipelinecrm_get_company` (~46 tokens)

Get company

One company by id with address, phones, website, owner, tags and custom fields. GET /companies/{id}.

Input parameters:

- `company_id` (integer, required): Pipeline CRM company id.

### `pipelinecrm_list_company_people` (~91 tokens)

List people at a company

List the people (leads and contacts) who work at one company. GET /companies/{id}/people.

Input parameters:

- `company_id` (integer, required): Pipeline CRM company id.
- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `per_page` (integer): Results per page, 1-200 (default 25).

### `pipelinecrm_create_company` (~182 tokens)

Create company

WRITE: create a company. POST /companies.

Input parameters:

- `address_1` (string): Address line 1.
- `address_2` (string): Address line 2.
- `city` (string): City.
- `country` (string): Country.
- `custom_fields` (object): Custom field values keyed by the custom field's key (see the account's custom field labels in Pipeline CRM).
- `description` (string): Description.
- `email` (string): Company email address.
- `name` (string, required): Company name.
- `owner_id` (integer): Owner user id.
- `phone1` (string): Primary business phone.
- `postal_code` (string): Postal code.
- `state` (string): State or province.
- `tag_ids` (array): Full list of company tag ids.
- `web` (string): Website.

### `pipelinecrm_update_company` (~206 tokens)

Update company

WRITE: change fields of a company; only the fields you pass change. PUT /companies/{id}.

Input parameters:

- `address_1` (string): Address line 1.
- `address_2` (string): Address line 2.
- `city` (string): City.
- `company_id` (integer, required): Pipeline CRM company id.
- `country` (string): Country.
- `custom_fields` (object): Custom field values keyed by the custom field's key (see the account's custom field labels in Pipeline CRM).
- `description` (string): Description.
- `email` (string): Company email address.
- `name` (string): New company name.
- `owner_id` (integer): Owner user id.
- `phone1` (string): Primary business phone.
- `postal_code` (string): Postal code.
- `state` (string): State or province.
- `tag_ids` (array): Full list of company tag ids.
- `web` (string): Website.

### `pipelinecrm_list_notes` (~275 tokens)

List notes

List notes (called activities in the Pipeline CRM app) attached to a deal, person or company. Pass at least one of deal_id, person_id, company_id. Filter by text, category, author and created date. GET /notes.

Input parameters:

- `author_id` (integer): Only notes written by this user id.
- `category_id` (integer): Only notes in this note category id (see pipelinecrm_list_lookup with kind note_categories).
- `company_id` (integer): Notes on this company.
- `created_after` (string): Created on or after this date (yyyy-mm-dd).
- `created_before` (string): Created on or before this date (yyyy-mm-dd).
- `deal_id` (integer): Notes on this deal.
- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `per_page` (integer): Results per page, 1-200 (default 25).
- `person_id` (integer): Notes on this person.
- `query` (string): Free-text search across title, content, category and comments.
- `sort` (string): Sort column key, with a leading - for descending; several keys separated by commas. Example: -deal_value,deal_name. Custom fields sort as custom_label_<id>.

### `pipelinecrm_get_note` (~47 tokens)

Get note

One note (activity) by id with its content, author, category, associations and comments. GET /notes/{id}.

Input parameters:

- `note_id` (integer, required): Pipeline CRM note id.

### `pipelinecrm_add_note` (~122 tokens)

Add note

WRITE: log a note (activity) on a deal, person or company. Pass at least one of deal_id, person_id, company_id. POST /notes.

Input parameters:

- `company_id` (integer): Attach to this company.
- `content` (string, required): The note text.
- `deal_id` (integer): Attach to this deal.
- `note_category_id` (integer): Note category id (see pipelinecrm_list_lookup with kind note_categories).
- `person_id` (integer): Attach to this person.
- `title` (string): Optional note title.

### `pipelinecrm_list_calendar_entries` (~188 tokens)

List tasks and events

List calendar entries: tasks (a due date) and events (a start and end time) tied to deals, people or companies. Filter by kind, owner, a date range, and completed, incomplete or late. GET /calendar_entries.

Input parameters:

- `from_date` (string): Only entries on or after this date (yyyy-mm-dd).
- `kind` (string): Only tasks or only events.
- `owner_id` (integer): Only entries owned by this user id.
- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `per_page` (integer): Results per page, 1-200 (default 25).
- `status` (string): Only incomplete, completed or late (overdue) entries.
- `to_date` (string): Only entries on or before this date (yyyy-mm-dd).

### `pipelinecrm_get_calendar_entry` (~43 tokens)

Get task or event

One calendar entry (task or event) by id. GET /calendar_entries/{id}.

Input parameters:

- `calendar_entry_id` (integer, required): Pipeline CRM calendar entry id.

### `pipelinecrm_create_calendar_entry` (~216 tokens)

Create task or event

WRITE: create a task (CalendarTask, optional due date) or an event (CalendarEvent, start_time and end_time required), optionally tied to a deal, person or company. POST /calendar_entries.

Input parameters:

- `all_day` (boolean): All-day entry (events default to false, tasks to true).
- `association_id` (integer): Id of the deal, person or company this entry belongs to.
- `association_type` (string): Type of the record this entry belongs to (with association_id).
- `category_id` (integer, required): Event category id (required by Pipeline CRM; see pipelinecrm_list_lookup with kind event_categories).
- `description` (string): Details.
- `due_date` (string): Tasks only: the due date (yyyy-mm-dd).
- `end_time` (string): Events only: end time.
- `name` (string, required): Title of the task or event.
- `start_time` (string): Events only: start time.
- `type` (string, required): CalendarTask or CalendarEvent.

### `pipelinecrm_update_calendar_entry` (~150 tokens)

Update task or event

WRITE: change a task or event; only the fields you pass change. Pass complete: true to mark a task done. PUT /calendar_entries/{id}.

Input parameters:

- `calendar_entry_id` (integer, required): Pipeline CRM calendar entry id.
- `category_id` (integer): New event category id.
- `complete` (boolean): true marks the entry complete, false reopens it.
- `description` (string): New details.
- `due_date` (string): Tasks only: new due date (yyyy-mm-dd).
- `end_time` (string): Events only: new end time.
- `name` (string): New title.
- `start_time` (string): Events only: new start time.

### `pipelinecrm_list_deal_stages` (~94 tokens)

List deal stages

List the deal stages with id, name, default win probability and the pipeline each belongs to. Use the ids to filter or move deals. GET /admin/deal_stages.

Input parameters:

- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `per_page` (integer): Results per page, 1-200 (default 25).

### `pipelinecrm_list_deal_pipelines` (~88 tokens)

List deal pipelines

List the deal pipelines (each has its own stages) with id, name and which one is the default. GET /admin/deal_pipelines.

Input parameters:

- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `per_page` (integer): Results per page, 1-200 (default 25).

### `pipelinecrm_list_lookup` (~137 tokens)

List lookup values

List one set of account lookup values to get ids for filters and writes. kind: deal_statuses, deal_loss_reasons, deal_won_reasons, deal_tags, lead_statuses, lead_sources, contact_tags, company_tags, note_categories, event_categories, task_priorities, task_statuses, teams. GET /admin/<kind>.

Input parameters:

- `kind` (string, required): Which lookup list to return.
- `page` (integer): Page number, from 1 (default 1). Pass the previous reply's next_page.
- `per_page` (integer): Results per page, 1-200 (default 25).

## Diagnostics

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

## Score history

- 2026-10-17: 64
- 2026-10-16: 63
- 2026-10-15: 63
- 2026-10-14: 63
- 2026-10-13: 60
- 2026-10-12: 59

## Common questions

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

Pipeline CRM MCP by usefulapi is listed in the public MCP registry as io.usefulapi/pipeline-crm. Manage Pipeline CRM deals, people, companies, notes and calendar entries. This page covers its hosted endpoint (https://pipeline-crm.usefulapi.io/mcp).

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

Pipeline CRM MCP by usefulapi scores 64 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 Pipeline CRM MCP by usefulapi server expose?

Pipeline CRM MCP by usefulapi exposes 30 tools: pipelinecrm_get_profile, pipelinecrm_list_users, pipelinecrm_get_user, pipelinecrm_list_deals, pipelinecrm_get_deal, and 25 more. Their descriptions and schemas cost roughly 4,763 tokens of context every time the server is loaded.

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

Yes. Pipeline 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 Pipeline CRM MCP by usefulapi server still maintained?

Pipeline CRM MCP by usefulapi is still listed as active in the MCP registry. We last reached this channel on 17 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://pipeline-crm.usefulapi.io/mcp
- Repository: https://github.com/m190/usefulapi-mcp
- Website: https://usefulapi.io/pipeline-crm/
- Changelog RSS feed: https://verifymcp.io/servers/io-usefulapi-pipeline-crm/pipeline-crm.xml
- Changelog JSON feed: https://verifymcp.io/servers/io-usefulapi-pipeline-crm/pipeline-crm.json
- HTML version of this page: https://verifymcp.io/servers/io-usefulapi-pipeline-crm/pipeline-crm
