Freestyle Libre MCP Server
Enables Claude to access Abbott Freestyle Libre CGM data from multiple providers (LibreView, Terra, Thryve) to retrieve current glucose, history, and summaries via natural language.
README
Freestyle Libre MCP Server
An MCP (Model Context Protocol) server that gives Claude access to Abbott Freestyle Libre CGM (continuous glucose monitor) data.
Supported providers
| Provider | Auth | Cost | Notes |
|---|---|---|---|
| libreview (default) | Email + password | Free | Unofficial LibreView/LibreLinkUp API |
| terra | API key | Paid | Terra API (tryterra.co) |
| thryve | API key + OAuth token | Paid | Thryve health platform |
Quick start (LibreView — recommended)
The LibreLinkUp API is designed for follower/carer accounts — accounts that have been invited to view a patient's glucose data. You'll need two LibreView accounts:
- Your patient account (the one linked to your sensor)
- A follower account (a second account you invite via the LibreLinkUp app)
Use the follower account's credentials in the MCP config.
1. Install
npm install
npm run build
2. Configure Claude Desktop
Edit your Claude Desktop config file, using the full path to your Node.js binary (Node 18+ required). The config location depends on your OS:
| OS | Path |
|---|---|
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Windows | %APPDATA%\Claude\claude_desktop_config.json |
| Linux | ~/.config/Claude/claude_desktop_config.json |
{
"mcpServers": {
"freestyle-libre": {
"command": "/path/to/node",
"args": ["/absolute/path/to/freestyle-libre/dist/index.js"],
"env": {
"LIBRE_PROVIDER": "libreview",
"LIBRE_REGION": "EU",
"LIBRE_EMAIL": "your-follower@email.com",
"LIBRE_PASSWORD": "yourpassword"
}
}
}
}
Replace the paths and credentials accordingly. The server auto-detects regional API endpoints (e.g. eu2) at login, so LIBRE_REGION just needs to be the base region for your account:
| Region | Value |
|---|---|
| Europe | EU (default) |
| United States | US |
| Australia | AU |
| Asia-Pacific | AP |
| Japan | JP |
| Germany | DE |
| Global | global |
3. Restart Claude Desktop
The server authenticates automatically on startup — no login step needed in the chat.
Available tools
| Tool | Description |
|---|---|
get_connections |
List patient connections on the account |
get_current_glucose |
Fetch the latest glucose reading |
get_glucose_history |
Fetch historical readings (1–24 hours) |
get_glucose_summary |
24-hour summary: TIR, avg, min/max, std dev |
Example prompts
- "What's my current glucose level?"
- "Show me my glucose history for the past 6 hours"
- "Give me a summary of my glucose control today"
- "Was I in range more than 70% of the time yesterday?"
Terra API setup
- Sign up at tryterra.co and create an application
- Connect a LibreView account via the Terra Connect widget to get a
user_id - Configure Claude Desktop:
{
"mcpServers": {
"freestyle-libre": {
"command": "/path/to/node",
"args": ["/absolute/path/to/freestyle-libre/dist/index.js"],
"env": {
"LIBRE_PROVIDER": "terra",
"TERRA_API_KEY": "your-api-key",
"TERRA_DEV_ID": "your-dev-id"
}
}
}
}
Thryve API setup
- Contact thryve.health for API access
- Direct users through Thryve's OAuth flow to connect their LibreView account
- Configure Claude Desktop:
{
"mcpServers": {
"freestyle-libre": {
"command": "/path/to/node",
"args": ["/absolute/path/to/freestyle-libre/dist/index.js"],
"env": {
"LIBRE_PROVIDER": "thryve",
"THRYVE_API_KEY": "your-api-key",
"THRYVE_API_SECRET": "your-api-secret",
"THRYVE_ACCESS_TOKEN": "user-oauth-access-token"
}
}
}
}
Development
npm run dev # watch mode — recompiles on save
npm run build # one-off compile
npm start # run the compiled server
The server communicates over stdio, which is the standard transport for local MCP servers used by Claude Desktop.
Disclaimer
The libreview provider uses a community-documented, reverse-engineered API that powers Abbott's LibreLinkUp app. It is not an official Abbott API and may change without notice. Use it responsibly and in accordance with Abbott's terms of service.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.