How to Use the Patient Copilot MCP Server
This article will show you how to leverage the new Patient Copilot MCP (Model Context Protocol) server to empower your AI agents and copilots to access Patient Copilot data and tools seamlessly — all via a secure, standardized HTTP protocol. ## What is the MCP Server? The Patient Copilot MCP server is a standardized, secure protocol that allows AI agents to read and write data in Patient Copilot without needing SDKs or deep custom integrations. You can now give agents access to critical tools like Calendar, Contacts, Conversations, Opportunities, and Payments through a single, unified interface. ## Key Benefits of Using the MCP Server Connecting your AI agents to Patient Copilot has never been easier or safer. - Standardized Access: Query and update data through a unified protocol. - Fast Integration: No SDKs required; works with any HTTP-supporting client. - Secure: Uses private integration tokens (PITs) for granular, permission-based access. - Scalable: Designed for future expansion to 250+ tools. - Flexible: Supports popular clients like Cursor, Windsurf, and OpenAI Playground. Below is the initial set of tools your AI agents can use today:
# | Tool | Endpoint | Description |
1 | Get Calendar Events | calendars_get-calendar-events | Get calendar events using userId, groupId, or calendarId. |
2 | Get Appointment Notes | calendars_get-appointment-notes | Retrieve notes for a specific appointment. |
3 | Get All Tasks | contacts_get-all-tasks | Retrieve all tasks for a contact. |
4 | Add Tags | contacts_add-tags | Add tags to a contact. |
5 | Remove Tags | contacts_remove-tags | Remove tags from a contact. |
6 | Get Contact | contacts_get-contact | Fetch contact details. |
7 | Update Contact | contacts_update-contact | Update a contact. |
8 | Upsert Contact | contacts_upsert-contact | Update or create a contact. |
9 | Create Contact | contacts_create-contact | Create a new contact. |
10 | Get Contacts | contacts_get-contacts | Fetch all contacts. |
11 | Search Conversation | conversations_search-conversation | Search/filter/sort conversations. |
12 | Get Messages | conversations_get-messages | Retrieve messages by conversation ID. |
13 | Send a New Message | conversations_send-a-new-message | Send a message to a conversation thread. |
14 | Get Location | locations_get-location | Get location details by ID. |
15 | Get Custom Fields | locations_get-custom-fields | Retrieve custom field definitions for a location. |
16 | Search Opportunity | opportunities_search-opportunity | Search for opportunities by criteria. |
17 | Get Pipelines | opportunities_get-pipelines | Fetch all opportunity pipelines. |
18 | Get Opportunity | opportunities_get-opportunity | Fetch opportunity details by ID. |
19 | Update Opportunity | opportunities_update-opportunity | Update opportunity details. |
20 | Get Order by ID | payments_get-order-by-id | Retrieve payment order details. |
21 | List Transactions | payments_list-transactions | Fetch paginated list of transactions. |
22 | Check Blog URL Slug | blogs_check-url-slug-exists | Check the blog slug which is needed before publishing any blog post. |
23 | Update Blog Post | blogs_update-blog-post | Update blog post for any given blog site |
24 | Create Blog Post | blogs_create-blog-post | create blog post for any given blog site |
25 | Get Blog Authors | blogs_get-all-blog-authors-by-location | get blog authors for a given location ID |
26 | Get Blog Categories | blogs_get-all-categories-by-location | get blog categories for a given location ID |
27 | Get Blog Posts by Blog ID | blogs_get-blog-post | get blog posts for any given blog site using blog ID |
28 | Get Blogs by Location | blogs_get-blogs | get blogs using Location ID |
29 | Create Email Template | emails_create-template | Create a new template |
30 | Get Email Templates | emails_fetch-template | Fetch email templates by location id |
31 | Get Social Media Accounts | socialmediaposting_get-account | Get list of accounts and groups |
32 | Get Social Media Statistics | socialmediaposting_get-social-media-statistics | Retrieve analytics data for multiple social media accounts |
33 | Create Social Media Post | socialmediaposting_create-post | Create posts for all supported platforms |
34 | Get Social Media Post | socialmediaposting_get-post | Get social media post |
35 | Get Social Media Posts | socialmediaposting_get-posts | Get social media posts |
36 | Update Social Media Post | socialmediaposting_edit-post | Edit social media post |