meetergo-mcp
MCP server that exposes meetergo's scheduling and CRM API as tools for AI assistants, enabling Proton Calendar-backed booking management and contact operations without Google Workspace.
README
meetergo-mcp
A community Model Context Protocol server that turns the meetergo scheduling + CRM API into tools an AI assistant (Claude Desktop, or any MCP client) can call.
meetergo is a privacy-first, GDPR-friendly scheduler that — unlike most Calendly-style tools — syncs natively with Proton Calendar (and iCloud, CalDAV, Outlook, Google). This server lets you drive a Proton-backed scheduling + light-CRM stack entirely through an AI assistant, with no Google Workspace required.
⚠️ Disclaimer. Independent community project — not affiliated with, endorsed by, or supported by meetergo. It was largely "vibe-coded" with an AI assistant against meetergo's public API docs. Provided as is, no warranty (see LICENSE). Review the code, test against your own account, and use at your own risk. Every booking created via the API is metered/billed by meetergo.
What it can do (37 tools)
| Area | Tools |
|---|---|
| Account | get_me |
| Booking pages & links | list_meeting_types, get_meeting_type, create_meeting_type, update_meeting_type, create_one_time_booking_link |
| Page branding (colors/graphics) | get_personal_page, update_personal_page |
| Availability | get_availability |
| Bookings | create_booking, list_appointments, get_appointment, cancel_appointment, reschedule_appointment, update_appointment_notes |
| Meeting records | update_meeting_transcription |
| Follow-ups | send_quick_email |
| Forms + branching logic | create_routing_form, list_routing_forms, get_routing_form, update_routing_form, delete_routing_form, send_routing_form, list_form_recipients, create_data_field, list_data_fields |
| CRM (contacts) | create_contact, search_contacts, get_contact, update_contact, delete_contact, bulk_create_contacts |
| Automation (webhooks) | list_webhooks, create_webhook, update_webhook, delete_webhook |
| Calendar | list_calendar_connections |
Scope notes
- Transcription — meetergo stores a transcript/summary per appointment but does not record meetings itself. Feed
update_meeting_transcriptionfrom a notetaker. - Branding — the API sets brand colors, header image, logo, and per-meeting-type CSS modes; arbitrary raw CSS is a dashboard-only setting.
- CRM sync — meetergo has native sync to HubSpot/Pipedrive/Salesforce/etc. (set via
update_meeting_type), but not every CRM; route others via a webhook. - Payments — not exposed in the v4 API as of this writing; handle via a separate processor triggered off the booking webhook.
Prerequisites
- A meetergo plan with API access enabled. The Platform API is on eligible plans — you may need to contact meetergo to switch it on.
- An API token — in your meetergo dashboard, create a Personal Access Token (
rgo-…, recommended for automating your own workspace) or a Platform API Key (ak_live:…). Tokens are shown once; store securely. - Python 3.10+.
Quick start (guided setup)
git clone https://github.com/chill-lichen/meetergo-mcp.git
cd meetergo-mcp
python3 configure.py
configure.py interactively prompts you to paste your token (and optional settings), writes a
local .env, and prints a ready-to-paste Claude Desktop config block with the correct paths
for your machine — it can even merge it into your Claude config for you. Your token goes only into
the gitignored .env / your local Claude config, never into the source code.
Prefer to do it by hand? See the manual steps below.
<details> <summary>Manual install</summary>
Option A — uv (no manual install)
uvx --from git+https://github.com/chill-lichen/meetergo-mcp meetergo-mcp
Option B — pip + virtualenv
python3 -m venv .venv && source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install . # or: pip install -r requirements.txt
cp .env.example .env # then edit .env and add your token
</details>
Quick test
export MEETERGO_API_KEY="rgo-...your-token..."
mcp dev meetergo_mcp.py # opens the MCP Inspector UI
Call get_me first — a 200 with your user object means auth works.
Connect to Claude Desktop
configure.py will print and (optionally) install this for you. To do it manually, edit:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
uv (Option A):
{
"mcpServers": {
"meetergo": {
"command": "uvx",
"args": ["--from", "git+https://github.com/chill-lichen/meetergo-mcp", "meetergo-mcp"],
"env": { "MEETERGO_API_KEY": "rgo-...your-token..." }
}
}
}
venv (Option B) — use absolute paths to the venv's Python and the script:
{
"mcpServers": {
"meetergo": {
"command": "/absolute/path/to/meetergo-mcp/.venv/bin/python",
"args": ["/absolute/path/to/meetergo-mcp/meetergo_mcp.py"],
"env": { "MEETERGO_API_KEY": "rgo-...your-token..." }
}
}
}
Restart Claude Desktop fully. Then try: "Use meetergo to list my meeting types," then "show my openings next week."
Only set
MEETERGO_USER_IDif you use a Platform API Key (ak_live:…) and need to act on behalf of a specific user. With a Personal Access Token, leave it unset.
Configuration
| Env var | Required | Default | Description |
|---|---|---|---|
MEETERGO_API_KEY |
yes | — | Bearer token (rgo-… or ak_live:…) |
MEETERGO_USER_ID |
no | — | x-meetergo-api-user-id (Platform API Key only) |
MEETERGO_API_BASE |
no | https://api.meetergo.com/v4 |
Override base URL |
MEETERGO_TIMEOUT |
no | 30 |
Per-request timeout (seconds) |
Security
- Keep tokens in
env/.env— never in code or committed files..envis gitignored. - meetergo keys expire (1–90 days) and must be rotated; update your config on rotation.
- Rate limit: ~100 requests/minute per key (bursts to ~200). The server retries 429/5xx with backoff.
Extending
Adding an endpoint is a few lines — copy any @mcp.tool() function and change the path/body.
Full API reference: https://developer.meetergo.com. The _request(..., root=True) flag targets
host-level endpoints (/crm, /webhooks) that live outside /v4.
Contributing
Issues and PRs welcome. This is a small, dependency-light tool by design — please keep new tools
consistent with the existing style (typed args for simple calls, a passthrough dict/payload
for complex config objects).
License
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。