MCP HeartbeatTHE MCP OBSERVATORY
Public workspace

Explore

Evidence for your next connection.

Independent measurements of remote MCP servers. Every observation has a timestamp.

Read-only probes

MCP server · Communication & messaging

Sendlane MCP by usefulapi

Manage Sendlane lists, contacts, tags and custom fields; read campaign and SMS reports.

Checks passed
13 / 22

1 failed · 8 not measured

Median response
56 ms

Median of successful probes over 7 days

30-day uptime
Not measured

Share of countable probes over 30 days, including daily rollups. Auth challenges are excluded.

Discovered tools
31

Tool definitions returned by this server

Independent monitoring

Health & checks

Status history

Outdated check

Last connection measurement is over 24 hours old. Current availability is unknown.

Last checked
Check summary by test group
Test areaPassedFailedUnmeasured
ConnectionCan a client connect and discover tools?
500
Reliability & speedDoes it respond consistently and quickly?
004
Access & authenticationWhat is required to use this server?
102
Tool qualityAre the tool definitions usable by an agent?
310
Publisher identityCan the publisher be traced to its source?
402

Unmeasured means there is not enough evidence to decide. How these checks work

Inspect individual checks 22 recorded

Core

  • Pass
    Reachable

    Latest probe returned HTTP 200 in 56 ms.

  • Pass
    Valid handshake

    protocolVersion 2025-11-25, serverInfo.name sendlane-mcp.

  • Pass
    Lists tools

    tools/list returned 31 tools.

  • Pass
    Current protocol

    Negotiated 2025-11-25. The bar is 2025-06-18 or newer.

  • Pass
    HTTPS

    The endpoint URL is https.

Performance

  • Not measured
    Fast (p50)

    Median latency 56 ms over 1 samples in 7 days. The bar is 1000 ms. Need at least 5 samples.

  • Not measured
    Consistent (p95)

    95th percentile 56 ms over 1 samples in 7 days. The bar is 3000 ms. Need at least 20 samples.

  • Not measured
    Reliable (uptime)

    1 of 1 attempts returned a tool list in 30 days (100%). The bar is 99%. Need at least 30 samples.

  • Not measured
    Stable tool list

    Fewer than two successful probes in 30 days, so tool-list stability is not measured.

Access

  • Pass
    Open access

    tools/list succeeded with no credential, and the record declares none.

  • Not measured
    Standard auth

    Auth is not required, so the OAuth metadata check does not apply.

  • Not measured
    Free tier cited

    No publisher quote has been checked.

Tools

  • Pass
    Tools described

    Every tool description is at least 20 characters.

  • Pass
    Valid input schemas

    Every inputSchema is a JSON Schema object.

  • Fail
    Parameters documented

    44 of 74 parameters have a description (59%). The bar is 80%.

  • Pass
    Safety hints

    Every tool sets readOnlyHint or destructiveHint.

Publisher

  • Pass
    Verified namespace

    Listed in the Official MCP Registry.

  • Pass
    Website matches publisher

    The website host matches the reverse-domain namespace.

  • Pass
    Source repo linked

    A repository URL is on file.

  • Not measured
    Repo owner matches

    This namespace is not an io.github login, so the owner comparison does not apply.

  • Pass
    Recently updated

    Updated 2026-11-10T23:33:52.558619Z, within 180 days.

  • Not measured
    Open-source licence

    The GitHub licence lookup has not returned an OSI result yet.

Start using Sendlane MCP by usefulapi

Connect to this server

Choose your client, copy the configuration, then enable the server in your client’s MCP settings.

Run this command in your terminal, then restart Claude Code.

Claude Code

claude mcp add --transport http sendlane-mcp-by-usefulapi https://sendlane.usefulapi.io/mcp

Capabilities

Tools 31

sendlane_add_contact_tags

WRITE: put one or more existing tags on a contact. POST /contacts/{contactId}/tags.

Discovered
sendlane_add_contacts_to_list

WRITE: add one or more contacts (up to 100) to a list; a contact that does not exist is created. Each needs an email or a phone. Sendlane accepts the request for processing (HTTP 202). Only add people who agreed to receive marketing. POST /lists/{listId}/contacts.

Discovered
sendlane_create_list

WRITE: create an audience list. Not idempotent: calling it twice makes two lists. POST /lists.

Discovered
sendlane_create_tag

WRITE: create a contact tag. POST /tags.

Discovered
sendlane_get_campaign

One email campaign by id. GET /campaigns/{campaignId}.

Discovered
sendlane_get_campaign_report

Statistics of one email campaign: sent, opens, clicks (unique too), bounced, suppressed, unsubscribed, spam, revenue. from/to limit the period. GET /campaigns/{campaignId}/report.

Discovered
sendlane_get_contact

One contact by id, with lists, tags, custom fields, consent, lifetime value and subscribed/suppressed state. GET /contacts/{contactId}.

Discovered
sendlane_get_contact_custom_fields

The custom field values of one contact. GET /contacts/{contactId}/custom-fields.

Discovered
sendlane_get_contact_subscriptions

The list subscriptions of one contact: list, subscribed/suppressed state, who added it and when. GET /contacts/{contactId}/subscriptions.

Discovered
sendlane_get_contact_tags

The tags on one contact. GET /contacts/{contactId}/tags.

Discovered
sendlane_get_list

One audience list by id. GET /lists/{listId}.

Discovered
sendlane_get_sms_report

Statistics of one SMS message: sent, delivered, clicks, failed, replies, unsubscribed, credits, revenue. from/to limit the period. GET /sms-messages/{messageId}/report.

Discovered
sendlane_get_tag

One tag by id. GET /tags/{tagId}.

Discovered
sendlane_list_campaigns

Email campaigns: id, name, status, scheduled and sent time, automation. GET /campaigns.

Discovered
sendlane_list_contacts

All contacts of the account: email, name, phone, lists, tags, custom fields, subscribed/suppressed state. Filter by creation time with from/to. GET /contacts.

Discovered
sendlane_list_custom_fields

The custom contact fields of the account: id, name, type. Use the ids when setting field values. GET /custom-fields.

Discovered
sendlane_list_list_contacts

Contacts on one list: email, name, phone, subscribed/suppressed state, tags, custom fields, lifetime value. GET /lists/{listId}/contacts.

Discovered
sendlane_list_list_unsubscribed

Contacts that unsubscribed from one list. GET /lists/{listId}/unsubscribed.

Discovered
sendlane_list_lists

List the audience lists of the account: id, name, description, status, created date. GET /lists.

Discovered
sendlane_list_segment_contacts

Contacts in one segment: id, email, name, phone. GET /segments/{segmentId}/contacts.

Discovered
sendlane_list_segments

The segments of the account: id, name, list, match rule, last count. GET /segments.

Discovered
sendlane_list_sender_profiles

The sender profiles (from name, from/reply email, postal address, default flag). GET /senders.

Discovered
sendlane_list_sms_messages

SMS messages (campaign and automation): id, name, campaign status, automation. GET /sms-messages.

Discovered
sendlane_list_tag_contacts

Contacts that carry one tag. GET /tags/{tagId}/contacts.

Discovered
sendlane_list_tags

The contact tags of the account: id, name, audience count. GET /tags.

Discovered
sendlane_list_unsubscribed_contacts

Contacts that unsubscribed from the account. GET /contacts/unsubscribed.

Discovered
sendlane_remove_contact_from_list

WRITE: remove one contact from one list (the contact stays in the account). DELETE /lists/{listId}/contacts/{contactId}.

Discovered
sendlane_remove_contact_tag

WRITE: remove one tag from a contact (the tag itself is kept). DELETE /contacts/{contactId}/tags/{tagId}.

Discovered
sendlane_set_contact_custom_fields

WRITE: add custom field values to a contact. Field ids come from sendlane_list_custom_fields. POST /contacts/{contactId}/custom-fields.

Discovered
sendlane_unsubscribe_contact

WRITE: unsubscribe one contact from email marketing. The contact stops receiving campaigns. POST /contacts/{contactId}/unsubscribe.

Discovered
sendlane_update_list

WRITE: rename a list and/or change its description (a full update: name is required, an omitted description may be cleared). PUT /lists/{listId}.

Discovered

Recent measurements

Probe history

View status
Latest stored probes. Raw probe rows are kept for 14 days.
CheckedResultResponseTools
Connected56 ms31