Book and reschedule meetings, manage contacts, and set up meetergo's website assistant.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by Meetergo.
get_meConfirm the token works β start here when something looks empty
list_meeting_typesWhat can be booked
get_availabilityBookable slots for a meeting type
book_appointmentBook a slot
reschedule_appointmentMove an appointment
cancel_appointmentCancel, or drop one attendee
Lets an AI agent actually run a calendar: find slots, book, reschedule, cancel, review what is coming up, and keep the contact record straight.
Not to be confused with the docs MCP server at
https://developer.meetergo.com/mcp, which searches documentation and cannot
change anything. Both are useful and they do different jobs:
| Docs MCP | This server | |
|---|---|---|
| Endpoint | developer.meetergo.com/mcp | mcp.meetergo.com/mcp, or npx over stdio |
| Tools | SearchMeetergo | 57 scheduling, CRM, Mira and config tools |
| Can it book? | No | Yes |
| Use it to | write an integration | be the integration |
Create a Personal Access Token at
my.meetergo.com/integrations β it looks
like rgo-β¦ β then either point your client at the hosted server or run this
package locally over stdio. The token works on every plan, including Free.
Streamable HTTP, authenticated with Authorization: Bearer rgo-β¦. The path
matters: mcp.meetergo.com alone is not the endpoint. For clients that take a
remote URL and headers:
Works with Claude Desktop, Claude Code, Cursor, or anything else that speaks MCP.
When you create the token you can limit it to the capabilities the agent actually needs (scheduling, contacts and deals, Mira, forms, account). A limited token is refused on everything outside those groups, including reads, so give it every group whose tools you intend to use β a Mira-only token cannot book, and a scheduling-only token cannot read your knowledge base.
OAuth sign-in is live on the hosted endpoint. Discovery is published at
/.well-known/oauth-protected-resource (RFC 9728), so a capable client can
start the flow from the MCP URL. Clients are pre-registered rather than created
through dynamic client registration. For a Claude custom connector, enter the
public client id mcp-claude under Advanced settings and leave the client secret
blank. The directory clients for Claude and ChatGPT are configured with their
respective providers.
This repository includes the Cursor Marketplace plugin used by both Cursor and
Grok Bot. Install meetergo from Settings, Plugins, Marketplace, then finish
the browser sign-in. The plugin connects to the hosted endpoint and uses the
public PKCE client id mcp-cursor; there is no client secret or token to paste.
For local review before the marketplace listing is published, load this
repository as a local Cursor plugin. Its .cursor-plugin/plugin.json manifest
points at mcp.json, which contains the same hosted URL and OAuth client id.
A Personal Access Token works in every MCP client, on every plan including Free. That is what the rest of this page assumes.
A Personal Access Token always acts as its owner. To run an agent across a whole
company β an assistant booking on behalf of several colleagues β use a Platform
API Key (ak_live:<uuid>:<secret>) and name the target user:
The two token types have opposite requirements, and the server checks both at startup rather than letting you find out mid-booking:
MEETERGO_USER_ID β the API demands an
acting user on nearly every route;Against the hosted endpoint the acting user travels as the
X-Meetergo-Api-User-Id request header instead of an environment variable; the
same two rules apply, and sending it with a Personal Access Token is refused.
The stdio entry (meetergo-mcp, what npx runs):
| Variable | Required | Purpose |
|---|---|---|
MEETERGO_TOKEN | yes | rgo-β¦ Personal Access Token or ak_live:β¦ Platform API Key |
MEETERGO_USER_ID | with a Platform API Key | The user to act as |
MEETERGO_API_URL | API base override, default https://api.meetergo.com/v4 | |
MEETERGO_NEXT_URL | Booking-page host rendered into widget install snippets, default https://cal.meetergo.com | |
MEETERGO_TIMEOUT_MS | Per-request timeout, default 30000 |
The package also ships meetergo-mcp-http, the Streamable HTTP entry that runs
behind https://mcp.meetergo.com/mcp. Credentials arrive per request in the
Authorization header rather than from the environment, so one process serves
any number of accounts β MEETERGO_TOKEN and MEETERGO_USER_ID are not read
here. It reads:
| Variable | Required | Purpose |
|---|---|---|
PORT | Listen port, default 8080 | |
MEETERGO_API_URL | API base override, default https://api.meetergo.com/v4 | |
MEETERGO_NEXT_URL | Booking-page host rendered into widget install snippets, default https://cal.meetergo.com | |
MEETERGO_DASHBOARD_URL | Dashboard host used for upgrade links in plan-limit errors, default https://my.meetergo.com | |
MCP_PUBLIC_URL | This server's public URL, default http://localhost:$PORT. Only its origin is used: origin + /mcp is the resource identifier β the resource field of the discovery document, and the value an OAuth token must carry in aud. https://host, https://host/ and https://host/mcp are therefore the same setting. Anything that is not an absolute http(s) URL fails at startup | |
OAUTH_ISSUER | all three or none | OpenID issuer of the authorization server, e.g. https://login.meetergo.com/realms/meetergo. Must be absolute and https β the exchange posts this server's client secret and the user's token to it β or the process refuses to start. A trailing slash is trimmed |
OAUTH_CLIENT_ID | all three or none | Confidential client this server exchanges tokens into (RFC 8693) |
OAUTH_CLIENT_SECRET | all three or none | That client's secret |
The three OAUTH_* variables are all-or-nothing. Set all three and an
inbound access token is validated first β issuer, aud, typ: Bearer, RS256
signature against the issuer's JWKS, expiry β and only then exchanged for a
separate token for the upstream API. The MCP spec forbids forwarding the token a
client handed you, so the exchange is not an optimisation; it is the only path.
Set none and the process is bearer-token-only: Personal Access Tokens and
Platform API Keys work, both .well-known paths answer 404, the 401 challenge
carries no resource_metadata, and an OAuth token is refused rather than passed
upstream.
Set one or two and you get the bearer-token-only behaviour above, not a partial
OAuth β plus a warning log, oauth_disabled_incomplete_config, naming the
variables that are missing.
Both entries behave the same here. Rate limits and transient upstream errors
(429, 502, 503, 504) get up to three attempts in total (so two retries),
honouring Retry-After where the API sends one.
Retries are not applied blindly. A booking or cancellation that fails ambiguously β a timeout, a dropped connection, a 502 β may already have been applied by the API, and there is no idempotency key to make a second attempt safe. Only reads are retried on those; writes are retried solely on a 429, the one response that states the request was never processed.
If your client supports MCP prompts, run meetergo: onboard. Otherwise
paste this:
Set up meetergo for my company. Call get_me and get_setup_status first and tell me what already exists. Then analyse my website with propose_conversion_setup and present the proposed setup β meeting types, qualification questions, the website assistant. Build nothing until I approve. After I approve: create what's missing, turn the questions into a routing form with create_qualification_form, crawl my site, then PROVE it works with run_test_drive and show me the verdicts. Finish by giving me the install snippet, and verify with verify_widget_install after I've pasted it.
The agent audits what exists, proposes, waits for your yes, builds, and then
shows you scripted visitors booking through your own assistant before
anything goes live. A second prompt, meetergo: weekly-review, pulls last
week's conversations and offers to teach the assistant every answer it missed.
Every tool reports plan walls structurally: which limit was hit and where
upgrading happens, so your agent explains the situation instead of failing
vaguely. get_me also returns a plan block (tier, limits) so a good agent
warns you before starting something your plan cannot finish. Connecting the
server itself is never gated β a token from any plan, including Free, works.
57 tools, covering scheduling end to end. Scheduling is the loop most agents live in; the rest is there so an agent never has to fall back to raw REST.
Factual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/meetergo)<a href="https://allmcps.com/mcp/meetergo"><img src="https://allmcps.com/api/badge/meetergo?style=directory" alt="Meetergo on AllMCPs" /></a>