home-mcp-starter
A starter MCP server for running local tools and resources on a home machine or NAS, enabling secure access from AI assistants like Kody.
README
Home MCP starter
<p align="center"> <img src="docs/images/social-preview.jpg" alt="GitHub repo kody-bot/home-mcp-starter. Home MCP starter: Kody cannot reach localhost. This server is the process that can — notes, devices, and local CLIs on your NAS." width="1280"> </p>
A small Streamable HTTP MCP server you run on a home machine or NAS and connect to Kody. Tools execute on this process. Kody reaches them over HTTPS after CIMD OAuth. The official Kody guide is Connect a home MCP server.
Household notes ship as the replace-me surface. Fork the repo, swap those tools for the LAN APIs and local CLIs you actually want, then publish the host with Cloudflare Tunnel and Access.
Use cases
- Keep a private notes file (or an Obsidian vault sidecar) on the same box
- Drive home devices that only answer on the LAN
- Wrap a local CLI your laptop already trusts
- Host automations next to a NAS share
Kody runs in the cloud. It cannot open localhost on your network. This server
is the process that can, and the public MCP URL is how Kody dials in. See
use cases.
Quick start
Local development
Requires Node 24.
cp .env.example .env
npm install
npm run dev
The status page is http://127.0.0.1:4040/. Health is /health. MCP is /mcp.
Docker
cp .env.example .env
# Set HOME_MCP_PUBLIC_BASE_URL to the HTTPS hostname you will publish.
docker compose up --build -d
See Docker for volumes, NAS-style Container Manager notes, and image updates.
Docs
- Getting started
- Use cases
- Docker
- Cloudflare Tunnel
- Cloudflare Access
- OAuth and CIMD
- Adding tools
- Connecting Kody
Connect to Kody
- Publish this process at an HTTPS hostname (Tunnel + Access).
- Open
/account/mcp-servers. - Add the server as
homewith your public/mcpURL. - Open the authorization URL, pass Access if prompted, and approve.
- Search capabilities under
mcp:home.
Details live in Connecting Kody.
Security
- MCP clients authenticate with CIMD-only OAuth and PKCE S256. There is no Dynamic Client Registration endpoint.
- The RFC 8707
resourceparameter must equal this server's MCP URL. - Cloudflare Access protects human paths (
/authorize,/). Machine paths (/mcp,/token,/revoke,/.well-known,/health) stay reachable so Kody can complete OAuth and call tools. Access is not a substitute for MCP OAuth. - The LAN origin is trusted. Do not expose an unrestricted shell. Keep tools narrow.
- Issue one OAuth grant per Kody account. Do not share a bearer token across accounts.
Community
Kody is Kent C. Dodds' character. This is the official home MCP starter from
kody-bot.
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.
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.
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.
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.
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.
E2B
Using MCP to run code via e2b.