Ten MCP Servers for Ten Self-Hosted Apps: One Pattern
A Reusable Access Layer I recently wrote about pages, a static-site host with an MCP upload tool. That server was the first in a fleet that has since grown to ten. I now run ten MCP servers in the cluster. Each presents one self-hosted application: congress-mcp, freshrss-mcp, googlenews-mcp, gsc-mcp, jetlog-mcp, media-mcp, monica-mcp, nodebyte-mcp, pages, and the Kubernetes server. They share a core manifest pattern, a bearer-token boundary, a hostname convention, and a deployment path. Adding the tenth took approximately forty minutes; most of that time went into writing tool descriptions. ...