Personal MCP Server, Live Content for AI Assistants
Creator · 2026 · 3 min read
A remote Model Context Protocol server that gathers my thoughts, projects, and writing in one place, so when people ask an AI to 'behave like Donnie' the answer comes from my actual content, almost like asking me directly without scheduling time with me.
Overview
mcp.damato.design is a Model Context Protocol (MCP) server that turns the damato.design ecosystem (expertise, projects, media, blog, and design system docs) into structured, queryable resources for AI clients. Building it was also how I taught myself to create an MCP server.
Problem
People increasingly ask LLMs to 'behave like Donnie,' but the model answers from whatever it happened to train on, which is often outdated, incomplete, or simply invented. I wanted a single place holding my thoughts, projects, and writing, so an AI can respond as accurately as if you had asked me directly, without scheduling time with me.
Constraints
- Had to work across many MCP clients (Claude Desktop, Cursor, Cline, Windsurf, Zed, Continue)
- Content lives across several subdomains and should stay the single source of truth
- Remote and zero-install for consumers, with no per-client custom code
Approach
I built a remote HTTP MCP server that dynamically pulls each subdomain's llms.txt and exposes its entries as MCP resources under a {subdomain}://{category}/{slug} URI scheme. Clients connect over a single URL via mcp-remote, the server caches fetched content for performance, and it publishes a standard server card for discovery.
Key Decisions
Source content from each site's llms.txt rather than a separate database Reasoning Alternatives The published sites stay the single source of truth, so the server never drifts from what is live and needs no separate content pipeline.
- Maintain a separate content store or CMS for the server
- Hardcode resources in the server
Expose a small, predictable surface (list_resources, get_resource, get_llms_txt) over a semantic URI scheme, aligned to the emerging standards Reasoning Alternatives Following the emerging MCP and llms.txt conventions rather than inventing a bespoke surface keeps the server interoperable across clients, and a bounded, well-named surface is easy for an AI to navigate, mirroring how I think about bounded, semantic token systems.
- A single catch-all tool
- Many narrow per-category tools
Serve remotely over HTTP instead of a local stdio server Reasoning Alternatives Consumers connect with one URL and no install or build step, and improvements ship server-side.
- Distribute a local stdio server users run themselves
Tech Stack
- TypeScript
- Node.js
- MCP
- MCP SDK
- JSON-RPC
- llms.txt
Result & Impact
AI assistants can now answer questions about my work and design systems thinking from my actual, current content, and the same llms.txt sources power both the websites and the server, so there is nothing extra to keep in sync.
Learnings
- Treating published llms.txt as the source of truth keeps an AI integration honest and low-maintenance
- A bounded, well-named resource and tool surface matters as much for AI consumers as for human ones
- Hands-on MCP work is the fastest way to understand where generative tools actually fit around a design system
- Running a remote MCP server carries a real, ongoing hosting cost, enough to pause a personal project, which is its own lesson in what it takes to keep generative infrastructure live
The honest reason it exists: people kept asking AIs to act like me, and I wanted those answers to come from something real. Building it also taught me how an MCP server actually works.
In practice, resources read like donnie://projects/miseenmode or blog://posts/truly-semantic, and an ask-damato prompt lets a client ask for my answer specifically when several servers are connected. Point any MCP client at https://mcp.damato.design/ to connect, though it is paused for now to keep hosting costs down.