Connect to MCP

The pattern library is served over the Model Context Protocol. Once connected, your agent can list patterns, fetch full recipes, and match problem descriptions to patterns — five tools: list_patterns, get_pattern, find_pattern_for_problem, list_categories, get_setup_guide.

Hosted endpoint (easiest)

The hosted MCP runs at https://mcp.thuishaven.dev. Stateless and free; nothing about your requests is stored or logged.

Claude Code

claude mcp add --transport http thuishaven https://mcp.thuishaven.dev/mcp

Or commit it to a project's .mcp.json so your whole team (and the agent) gets it:

{
  "mcpServers": {
    "thuishaven": {
      "type": "http",
      "url": "https://mcp.thuishaven.dev/mcp"
    }
  }
}

Claude Desktop / claude.ai

Settings → Connectors → Add custom connector, then paste https://mcp.thuishaven.dev/mcp.

Try it

Ask your agent: "Find me a Thuishaven pattern for scheduling a date with friends, and follow it."

Self-host the MCP

Prefer not to depend on the hosted endpoint, or want to serve your own fork of the patterns? Same code, three options.

Docker image

docker run -p 3000:3000 ghcr.io/thuishaven/thuishaven-mcp
claude mcp add --transport http thuishaven http://localhost:3000/mcp

Or run it as a stdio server, directly wired into Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "thuishaven": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "ghcr.io/thuishaven/thuishaven-mcp",
               "node", "mcp-server/dist/node-stdio.js"]
    }
  }
}

From source

git clone https://github.com/thuishaven/thuishaven
cd thuishaven/mcp-server && npm install
npm run start:stdio   # direct Claude integration
npm run start:http    # HTTP server on :3000

Your own patterns

Point any self-hosted instance at a custom patterns directory with the PATTERNS_DIR env var (or mount it over /app/patterns in Docker). Custom patterns must validate against the pattern schema — the server refuses to start otherwise. See the mcp-server README for details.