Babybuddy
FreeNot checkedConnect AI assistants to your Baby Buddy instance to log and query feedings, sleep, diaper changes, and more.
About
Connect AI assistants to your Baby Buddy instance to log and query feedings, sleep, diaper changes, and more.
README
An MCP server for the Baby Buddy baby tracking application. Connect AI assistants to your babybuddy instance to log and query feedings, sleep, diaper changes, and more.
Built with FastMCP and designed to run alongside babybuddy in Docker.
Requirements
- mise (for local development)
- Python 3.13+
- A running babybuddy instance with API access
Setup
1. Get your API token
- Log in to your babybuddy web UI
- Click your username in the top-right corner → Settings
- Copy the API Key shown on the page
2. Configure environment
cp .env.example .env
Edit .env:
BABYBUDDY_URL=http://localhost:8000 # URL of your babybuddy instance
BABYBUDDY_TOKEN=your-api-key-here # Token from step 1
MCP_TRANSPORT=http # "http" for Docker, "stdio" for Claude Desktop
MCP_PORT=8080
Running with Docker
docker compose up --build
The MCP server will be available at http://localhost:8080/mcp/.
If babybuddy is running on the same Docker network, set BABYBUDDY_URL to use its service name (e.g. http://babybuddy:8000).
Connecting to Claude Desktop (stdio mode)
Set MCP_TRANSPORT=stdio in .env, then add to your Claude Desktop claude_desktop_config.json:
{
"mcpServers": {
"babybuddy": {
"command": "mise",
"args": ["x", "[email protected]", "--", "uv", "run", "python", "-m", "babybuddy_mcp"],
"cwd": "/path/to/babybuddy-mcp",
"env": {
"BABYBUDDY_URL": "http://localhost:8000",
"BABYBUDDY_TOKEN": "your-api-key-here",
"MCP_TRANSPORT": "stdio"
}
}
}
}
Connecting via HTTP transport
Add to your MCP client config:
{
"mcpServers": {
"babybuddy": {
"url": "http://localhost:8080/mcp/"
}
}
}
Available Tools
Tools are organized by domain with namespaced names (e.g. feedings_list_feedings).
| Domain | Tools |
|---|---|
| children | list_children, get_child, create_child, update_child |
| diapers | list_diaper_changes, create_diaper_change, update_diaper_change, delete_diaper_change |
| feedings | list_feedings, create_feeding, update_feeding, delete_feeding |
| sleep | list_sleep, create_sleep, update_sleep, delete_sleep |
| pumping | list_pumping, create_pumping, update_pumping, delete_pumping |
| tummy_times | list_tummy_times, create_tummy_time, update_tummy_time, delete_tummy_time |
| timers | list_timers, get_timer, create_timer, update_timer, delete_timer |
| measurements | list/create/update/delete × bmi, height, weight, head_circumference, temperature |
| notes | list_notes, create_note, update_note, delete_note, list_tags, create_tag, update_tag, delete_tag |
Environment Variables
| Variable | Required | Default | Description |
|---|---|---|---|
BABYBUDDY_URL |
Yes | — | URL of your babybuddy instance |
BABYBUDDY_TOKEN |
Yes | — | API token from babybuddy Settings |
MCP_TRANSPORT |
No | http |
Transport: http or stdio |
MCP_HOST |
No | 0.0.0.0 |
Host to bind (HTTP transport only) |
MCP_PORT |
No | 8080 |
Port to listen on (HTTP transport only) |
REQUEST_TIMEOUT |
No | 30.0 |
Timeout in seconds for babybuddy API calls |
DEFAULT_PAGE_SIZE |
No | 100 |
Max records returned per list call |
Development
# Install tools and dependencies
mise install
mise run install
# Run tests
mise run test
# Lint
mise run lint
# Type check
mise run typecheck
Example prompts
- "Log a feeding for Alice — she had breast milk from the left breast from 2pm to 2:25pm today"
- "How many times did Alice eat yesterday?"
- "Record a diaper change for Alice at 3pm — wet only"
- "Start a sleep timer for Alice"
- "Alice just woke up, end her sleep timer and log it"
- "What was Alice's weight at her last checkup?"
Install Babybuddy in Claude Desktop, Claude Code & Cursor
unyly install babybuddy-mcpInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add babybuddy-mcp -- uvx --from git+https://github.com/babybuddy/babybuddy-mcp babybuddy-mcpFAQ
Is Babybuddy MCP free?
Yes, Babybuddy MCP is free — one-click install via Unyly at no cost.
Does Babybuddy need an API key?
No, Babybuddy runs without API keys or environment variables.
Is Babybuddy hosted or self-hosted?
A hosted option is available: Unyly runs the server in the cloud, no local setup required.
How do I install Babybuddy in Claude Desktop, Claude Code or Cursor?
Open Babybuddy on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
by modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
by xuzexin-hzCompare Babybuddy with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All ai MCPs
