burrow
by seanahn
README.md
# burrow
Personal MCP hub: one remote MCP server exposing Tesla, ChargePoint, and
Outlook mail as tools, so Gemini Spark ("hey google") can answer questions
about them mid-conversation.
## Architecture
```
Gemini app (phone/web)
→ Google cloud (Spark custom app)
→ https://<public-host>/mcp (caddy reverse proxy, TLS)
→ burrow (FastMCP, streamable HTTP, port 8620)
→ Tesla Fleet API | ChargePoint (unofficial) | Microsoft Graph
```
## Setup
```sh
make dev # install with all service extras
make run # serve on 127.0.0.1:8620 (BURROW_HOST/BURROW_PORT to override)
```
Register in Gemini: gemini.google.com → Settings & help → Connected Apps →
Custom apps for Spark → Add a custom app → paste the public `/mcp` URL.
## Service credentials
- **Tesla**: developer.tesla.com app registration + virtual-key pairing (one-time)
- **ChargePoint**: account username/password (unofficial API)
- **Mail**: Entra app registration + device-code login (token cached locally)
Modules register their tools only when their extra is installed; the hub
starts with whatever is available.
This server cannot be deployed
Maintenance
ActivitySlowing
ResponsivenessNo issues