VibeSynergy MCP Server
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
VibeSynergy
Your own health and training archive. VibeSynergy collects your data from Garmin, Withings, Strava, intervals.icu, CalDAV calendars and activity files into one local archive. You see it in a web portal, and any AI app can read it through a standard MCP server. An optional AI coach runs inside VibeSynergy on your own API key.
Everything runs on your own machine. Your data stays in your data folder and never leaves it unless you connect a service yourself.
Sources and what each one collects: docs/SOURCES.md
The MCP interface for AI apps: docs/MCP.md
The AI coach: docs/AI_HARNESS.md, docs/COACH_RUNNER.md
Running it as a service: deploy/README.md
Map of the code: docs/OVERVIEW.md
Reporting a bug or asking for a feature: docs/REPORTING.md
Status: alpha (0.0.1). Expect changes between versions.
Install
INSTALL.md has every way, step by step, for people and for AI assistants. In short:
Windows, macOS, Linux, with Docker: save compose.yaml, put your email address in it,
docker compose up -d, and open the login link fromdocker compose logs vibesynergy.macOS, Linux, with uv (Python 3.12+):
uv tool install git+https://github.com/rvartanov/vibesynergy vibesynergy init --email you@example.com # prints your one-time login link vibesynergy serve # the portal on http://127.0.0.1:8447
Open the link, choose a password, and optionally a second step (a code by mail or an
authenticator app). To look around without any account: vibesynergy init --demo and
vibesynergy sync demo (synthetic data).
Updating: vibesynergy update or Update now in Settings → System (container:
docker compose pull && docker compose up -d).
Related MCP server: garmin-mcp
Connect your accounts
Enable a source in the config file and log in once. VibeSynergy only stores tokens, and stores them encrypted:
[sources.garmin]
enabled = truevibesynergy auth garmin # once
vibesynergy backfill garmin --start 2015-01-01 # history, month by month
vibesynergy import garmin-export <export.zip> # a Garmin account export
vibesynergy import strava-export <export.zip> # a Strava account archive
vibesynergy import files <folder> # FIT, GPX or TCX filesWithings, Strava, intervals.icu and CalDAV are set up the same way or in the portal under Settings. See docs/SOURCES.md for each source.
Connect an AI app
Any MCP client (Claude, ChatGPT, a local model, …) connects in the portal under
Settings → Coach apps. Set a passphrase, give the app the MCP address, and approve it on
the consent page. You choose per app what it may do: read, read.expert, diary.write,
coach.write, plan.propose, plan.write, sync, publish and sql. Writing to your
plan, publishing and free-form queries stay off unless you turn them on.
Personal access tokens are made on the same page and always expire (30, 90 or 365 days).
The AI coach
The coach runs inside VibeSynergy on your own API key (Anthropic, OpenAI, xAI or a local server) and is off until you switch it on in Coach → Settings. Each task (morning advice, week review, race brief, and more) has its own switch, schedule and model. It fills in sessions within the plan you set up; changing planned sessions, thresholds or the knowledge base waits for your approval. See docs/AI_HARNESS.md.
Dates and times
Dates are shown day-month-year (d-m-yyyy), clock times on 24 hours, in the time zone from
[user] timezone. The portal is in Dutch or English. Weather and temperatures in °C or °F,
wind in km/h, m/s, knots or Beaufort: Settings → System ([user] temperature, [user] wind).
AI apps always get SI values (°C, m/s) over MCP.
Development
uv sync
uv run ruff check . && uv run ruff format --check .
uv run basedpyright
uv run pytest -n 4See CONTRIBUTING.md for the conventions. Tests use synthetic data only; never commit real exports, FIT files or tokens.
Licence
MIT, see LICENSE. Third-party code and assets: THIRD_PARTY.md.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
Remote MCP server for training, nutrition, wellness, and performance data with OAuth 2.0.
MCP server for Withings health data — sleep, activity, heart, and body metrics.
Multi-tenant hosted MCP server for Oura Ring — 21 read-only tools, OAuth per user.
Hosted MCP server with managed OAuth for 15+ toolkits: Google Workspace, Fitbit, Oura, Kalshi, etc.
Related MCP Servers
- AlicenseBqualityBmaintenancePrivacy-first MCP server for Strava activities, streams, routes and training data.29295 npm3MIT
- FlicenseAqualityDmaintenanceProvides read-only access to your Garmin Connect health data, including sleep, HRV, body battery, stress, training readiness, and activities, through an MCP server.214-
- AlicenseBqualityBmaintenanceMCP server for local fitness-data extraction and analysis from Garmin Connect, Intervals.icu, and Strava. Provides read-only analytical tools over DuckDB and targeted Strava enrichment.35469 npm1AGPL 3.0
- AlicenseNot gradedqualityBmaintenanceEnables MCP clients to connect to a privacy-first, self-hostable workout planning and training log, allowing coaching agents to preview and apply program changes while accessing training data through OAuth-protected endpoints.AGPL 3.0