Dexcom Share MCP Server (Node.js)
A Model Context Protocol (MCP) server that provides access to your Dexcom Continuous Glucose Monitor (CGM) data via the unofficial Dexcom Share API. This server exposes your real-time glucose readings to any MCP-compatible AI assistant or application.
[!IMPORTANT] This uses the unofficial Share API designed for real-time monitoring, not the official Dexcom API. Data is limited to the last 24 hours only.
Features
- Get Latest Reading: Retrieve the most recent glucose value and trend
- Get Recent Readings: Fetch glucose values from the last few hours (up to 24 hours maximum)
- Direct Authentication: Uses Dexcom Share credentials (no OAuth setup required)
- Universal MCP Compatibility: Works with any MCP client (Claude Desktop, IDEs, custom applications)
- Real-Time Focused: Perfect for "What's my glucose now?" queries, not historical analysis
🚀 Getting Started
Prerequisites
- Node.js: Download and install the "LTS" version from nodejs.org
- Dexcom Account: Valid username and password (same as Dexcom mobile app)
- Data Sharing Enabled: "Share" feature must be ON in your Dexcom mobile app (Settings > Share)
Installation
- Download this project as a ZIP file or clone it with Git
- Extract to a folder (e.g.,
Documents/dexcom-share-mcp-node) - Install dependencies and build:
🍎 macOS
cd /path/to/dexcom-share-mcp-node
npm install && npm run build
🪟 Windows
cd C:\path\to\dexcom-share-mcp-node
npm install && npm run build
Verify Connection
Test your credentials before configuring a client: ``bash npm run test-connection ``
---
🔌 MCP Client Configuration
This server communicates over stdio and can be used with any MCP-compatible client. Below is an example for Claude Desktop, but the same pattern applies to other clients.
Example: Claude Desktop
🍎 macOS Configuration
- Open Claude Desktop >
Claudemenu >Settings...>Developer>Edit Config - Add this to
claude_desktop_config.json:
{
"mcpServers": {
"dexcom": {
"command": "node",
"args": ["/Users/YOUR_NAME/Documents/dexcom-share-mcp-node/build/index.js"],
"env": {
"DEXCOM_USERNAME": "your_username",
"DEXCOM_PASSWORD": "your_password",
"DEXCOM_REGION": "us"
}
}
}
}
Tip: Drag the build/index.js file into Terminal to get its full path.
🪟 Windows Configuration
- Open Claude Desktop >
File>Settings>Developer>Edit Config
(Config file: %APPDATA%\Claude\claude_desktop_config.json)
- Add this configuration (use double backslashes
\\):
{
"mcpServers": {
"dexcom": {
"command": "node",
"args": ["C:\\Users\\YOUR_NAME\\Documents\\dexcom-share-mcp-node\\build\\index.js"],
"env": {
"DEXCOM_USERNAME": "your_username",
"DEXCOM_PASSWORD": "your_password",
"DEXCOM_REGION": "us"
}
}
}
}
Region Note: Change DEXCOM_REGION to "ous" if you're outside the US.
- Restart Claude Desktop. You should see a 🔌 icon indicating the server is connected.
---
🛠️ Available Tools
The server exposes the following MCP tools:
get_glucose_readings
Fetch recent glucose values within the last 24 hours. The Share API calculates lookback time from the current moment, not arbitrary historical ranges.
Parameters:
startDate(string): ISO 8601 format (e.g.,"2024-01-15T10:00:00Z"). Must be within the last 24 hours.endDate(string): ISO 8601 format. Must be within the last 24 hours.
Example: To get readings from 3 hours ago to now, you'd calculate startDate as 3 hours before the current time.
get_latest_reading
Get the most recent glucose reading (typically within the last 5-15 minutes).
Parameters: None
---
📝 Usage Examples (Claude Desktop)
Once connected, you can ask:
- ✅ "What is my current glucose level?"
- ✅ "Show me my glucose readings from the last 3 hours"
- ✅ "Was my blood sugar high this morning?" (if within 24 hours)
- ❌ "Show me my readings from last week" (not supported - exceeds 24-hour limit)
---
⚠️ Important Limitations
- Unofficial API: This uses the Share API, which is designed for real-time monitoring, not the official Dexcom Web API
- 24-Hour Maximum: Can only retrieve data from the last 24 hours. Historical data beyond this is not accessible.
- No Long-Term Trends: For multi-day analysis or reports, you'll need the official Dexcom API (requires OAuth setup)
- Dexcom Share Required: Must be enabled in the Dexcom mobile app (even with 0 followers)
- Recent Data Only: Readings are typically available within 5-15 minutes of device transmission
- Credentials: Use the same username/password as your Dexcom app or Clarity account
🔒 Data Privacy
Your credentials are stored locally on your computer (in the MCP client config file or .env). This server communicates directly with Dexcom's API and does not send data to any third party.
📄 License
MIT






