mcpbeat Sign in

Spruce Health MCP by usefulapi MCP Server

answering

Spruce Health MCP by usefulapi is answering right now. Last checked 11 min ago. It exposes 24 tools. Last commit 10 Oct 2026.

Read Spruce Health contacts, conversations, messages, phone lines and team members (read-only).

Uptime history 4 days of history
4 days agonow
100.0%
Uptime 24h
91 of 91 checks
24
Tools
read from the server
119 ms
Response time
average over 24h
0
Stars
last commit 10 Oct 2026

What changed 4

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 9 October 2026. No other catalogue keeps this.

9 Oct a tool changed version4 times that day
and 3 more, back to 9 October 2026

Nothing serious here today

Today is the operative word: we check Spruce Health MCP by usefulapi every 15 minutes and re-read its code on every release. Watch it and you find out the day that stops being true.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 11 min ago.

run in your terminal
claude mcp add spruce-health --transport http https://spruce-health.usefulapi.io/mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "spruce-health": {
      "url": "https://spruce-health.usefulapi.io/mcp"
    }
  }
}
~/.codex/config.toml
[mcp_servers.spruce-health]
url = "https://spruce-health.usefulapi.io/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "spruce-health": {
      "url": "https://spruce-health.usefulapi.io/mcp"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "spruce-health": {
      "url": "https://spruce-health.usefulapi.io/mcp"
    }
  }
}

Available tools 24

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

sprucehealth
sprucehealth_get_contact
One contact by Spruce contact id (entity_…): demographics, phones, emails, tags, custom and organization fields, integration links. GET /contacts/{contactId}.
sprucehealth_get_conversation
One conversation by id (t_…). GET /conversations/{conversationId}.
sprucehealth_get_conversation_item
One conversation item (message, note, call, voicemail…) by id (ti_…). GET /conversationItems/{conversationItemId}.
sprucehealth_get_member
One organization member (teammate, team or the organization) by id. GET /organization/members/{memberId}.
sprucehealth_get_organization
Your Spruce organization (id and name). The id is the owner/member id used by other objects. Good first call. GET /organization.
sprucehealth_get_phone_line
One phone line by id (pd_…). GET /phonelines/{phonelineId}.
sprucehealth_get_transcription
The full transcription text and its summary (if any) for a transcription id (the transcriptionId on a call/voicemail attachment). Status pending/completed/failed/noSpeech. GET /transcriptions/{transcriptionId}.
sprucehealth_list_contact_conversations
The conversations (secure, SMS/phone, email, fax…) associated with one contact. GET /contacts/{contactId}/conversations.
sprucehealth_list_contact_fields
The organization-wide contact fields shown on every contact. Paged; totalCount included. GET /contacts/fields.
sprucehealth_list_contact_integration_links
Links between a contact and external systems (Elation, Hint, athena, custom): type, external id, url. GET /contacts/{contactId}/integrationlinks.
sprucehealth_list_contact_tags
All contact tags of the organization. Paged with hasMore/paginationToken; totalCount included. GET /contacts/tags.
sprucehealth_list_contacts
Contacts of the organization (patients, professionals, clinics): name, date of birth, phones, emails, tags, custom fields, integration links. Paged with hasMore/paginationToken; totalCount included. Use sprucehealth_search_contacts to find someone. GET /contacts.
sprucehealth_list_conversation_items
The items (messages, internal notes, calls, voicemails, faxes, attachments with short-lived signed URLs) in one conversation. Order newest_first (default) or oldest_first; start_from = only items created after that time. Paged with hasMore/paginationToken; totalCount is a best-effort count. GET /conversations/{conversationId}/items.
sprucehealth_list_conversation_scheduled_messages
Messages scheduled to be sent later in one conversation (read only; nothing is sent or cancelled). GET /conversations/{conversationId}/scheduledmessages.
sprucehealth_list_conversation_tags
All conversation tags of the organization. Paged; totalCount included. GET /conversations/tags.
sprucehealth_list_conversations
Conversations of the organization (title, type, tags, archived, assignee, participants, last message time), ordered by creation or last message. With start_from, only conversations whose ordering time is at or after it (useful for 'what changed since…'). Eventually consistent. Paged; give start_from OR pagination_token, not both. GET /conversations.
sprucehealth_list_internal_endpoints
The organization's own channels: Spruce phone and fax numbers, email addresses and Spruce Links, with their owner and members. GET /internalendpoints.
sprucehealth_list_members
All members of the organization: teammates (name, email, admin, suspended), teams and the organization itself. Paged with hasMore/paginationToken; totalCount included. GET /organization/members.
sprucehealth_list_phone_lines
All phone lines of the organization (id, name); totalCount included. GET /phonelines.
sprucehealth_list_read_receipts
Who has read one conversation item and when they first read it (oldest first). GET /conversationItems/{conversationItemId}/readReceipts.
sprucehealth_list_saved_messages
Saved message templates (private and organization-wide): title, text, internal/shared flags. Paged with hasMore/paginationToken. GET /savedmessages.
sprucehealth_list_scheduled_messages
All messages scheduled to be sent from the organization (read only). Paged with hasMore/paginationToken; totalCount included. GET /scheduledmessages.
sprucehealth_list_team_members
The members of one team (team ids come from sprucehealth_list_members, type 'team'). Paged. GET /teams/{teamId}/members.
sprucehealth_search_contacts
Find contacts by free text and/or filters (category, tags, name, phone, email, invite state, created time). Filters combine with AND; values inside one filter match ANY (tags can use all/none). Paged; totalCount with totalCountRelation (eq = exact, gte = lower bound). A read: POST /contacts/search changes nothing.

Endpoints

URLTransportStateLatencyChecked
https://spruce-health.usefulapi.io/mcp streamable-http answering 71 ms 11 min ago

Alternatives to Spruce Health MCP by usefulapi

same job, measured the same way
OpenPhone MCP by usefulapi
by usefulapi

Send and read OpenPhone messages, calls, contacts and phone numbers.

16 tools answering
Re:amaze MCP by usefulapi
by usefulapi

Manage Re:amaze conversations, messages, contacts and help articles.

17 tools answering
Missive MCP by usefulapi
by usefulapi

Read email/chat conversations, messages, contacts and teams; draft, send and update threads.

19 tools answering
Textline MCP by usefulapi
by usefulapi

Read Textline conversations, contacts and reports; send a text, add notes, resolve or transfer.

23 tools answering
Helpwise MCP by usefulapi
by usefulapi

Read Helpwise conversations, contacts, tags and reports; note, tag, assign, close; send one email.

21 tools answering
Formbricks MCP by usefulapi
by usefulapi

Read survey responses and manage contacts, webhooks, teams and organisation users.

17 tools answering
SimpleTexting MCP by usefulapi
by usefulapi

Send SMS/MMS, manage contacts, and read campaigns, messages and media on SimpleTexting.

11 tools answering
Groove MCP by usefulapi
by usefulapi

Read Groove shared-inbox conversations, contacts, agents and tags; close, assign, snooze and tag.

16 tools answering

Spruce Health MCP by usefulapi — questions

Answers built from our own checks of this server.

What can Spruce Health MCP by usefulapi do?
It exposes 24 tools, read directly from the server on our last check. Among them: sprucehealth_get_contact, sprucehealth_get_conversation, sprucehealth_get_conversation_item, sprucehealth_get_member, sprucehealth_get_organization, sprucehealth_get_phone_line and 18 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
Is Spruce Health MCP by usefulapi working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 91 of 91 checks got a reply (100.0%), average response time 119 ms. The bar chart above shows every period we have measured.
How do I connect Spruce Health MCP by usefulapi?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Spruce Health MCP by usefulapi need an API key?
No. Spruce Health MCP by usefulapi completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 24 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Spruce Health MCP by usefulapi?
It answers our handshake in 119 ms on average, which is faster than 79% of all working MCP servers we measure. That puts it in the quick quarter of the ecosystem. The comparison comes from our own checks across the whole registry, every 15 minutes.
Is Spruce Health MCP by usefulapi open source?
Yes — it is published under the MIT licence, written in JavaScript, 0 stars on GitHub and 1 open issue. The source link is on this page, so you can read exactly what it does with your data before you connect it.