en · a production stack

A production stack · last reviewed 2026-05-15

Claude Code. The MCP stack. One live app.

The configuration I actually ship with. Version-pinned, smoke-tested, with the tools I dropped and why.

Powers DSGVO.pro (scan → reports → email) — live since 2026-04.

→ github.com/shumande/claude-stack

The principle

Boring is good. I pick tools I can replace in one afternoon — not because I plan to, but because optionality is its own feature.

Every tool here earns its row twice: once in a real project, once again surviving the monthly review. The ones that didn't are in anti-picks.

The stack

Agent core

  • Claude Code↗ refThe agent. Anthropic Opus + Sonnet, MCP-native, terminal-first.
  • Custom subagentsSpecialized .claude/agents/ — Explore, Plan, domain helpers.

Build & ship

  • Next.jsFramework. App Router, server components, the boring choice.
  • SupabasePostgres + auth + EU hosting. DPA available, predictable pricing.
  • VercelDeploy + edge. Fast iteration, no infra to babysit.
  • Trigger.dev v4Background jobs, scheduled tasks, debounced triggers. Replaces 3 services.
  • DSGVO.pro MCPOwn product, dogfooded. Compliance scan during builds — actually used.
  • PlaywrightBrowser automation. Powers the DSGVO.pro site scanner — fetch, render, extract.
  • BrevoWeb forms + transactional email. The contact form on this site routes through it.

Work surface

  • ObsidianSecond Brain — local-first markdown vault. Claude Code reads it directly, no MCP needed.
  • Google Workspace MCPsGmail + Calendar + Drive in one cluster. Daily ops surface.

Research & creative

  • atypica↗ refSynthetic-persona research. Brand validation before commit.
  • HiggsfieldImage and video generation. Faster than the alternative I tried.
  • Gamma↗ refPresentations from prose. Output good enough to ship.
  • Context7Live library docs in-prompt. Skips outdated training data.
  • gsc-toolkitLocal CLI for Google Search Console data. SEO context for any project.

Compliance & infra

  • DSGVO.proOwn product, in production. Powers the compliance banner across my client sites.

What I dropped

The list of tools that didn't survive contact with my actual workflow. The reason is more useful than the name.

  • Figma MCPsupersedence

    Claude Design (Anthropic) replaces the design-to-code role in my workflow. I haven't needed Figma MCP since.

  • Notion MCPsupersedence

    Obsidian is my Second Brain — local-first markdown that Claude Code reads natively without an MCP layer. Notion never won the daily-use slot.

  • Slack MCPplatform mismatch

    Solo operator, no team chat to integrate. Adding Slack MCP would be cargo-cult of someone else's stack shape.

  • Sentrymaintenance abandoned

    Tried, didn't stick. Noise-to-signal stayed bad in solo-operator scale; alerts I cared about were already visible in Vercel logs + Trigger.dev runs. Sentry became dead actor in my stack.

Full list with reasons → docs/anti-picks.md

Where it breaks

Known failure modes, with fixes. The full list lives in the repo.

  • STDIO corruption— `console.log` writes to the same channel MCP uses for JSON-RPC. Replace with `console.error`.
  • Windows MSIX paths— spaces in `Program Files` break MCP launchers. Use nvm-windows or WSL.
  • Zombie MCP processes— missing SIGTERM handlers leave processes alive after Claude exits.
  • ~/.claude/settings.json vs ~/.claude.json— two settings locations with overlapping keys. Keep only the newer one.

With reproductions and fixes → docs/failure-modes.md

Data flows (EU / DSGVO)

For EU enterprise sharing — where each tool lives, and whether a DPA exists.

ToolEU region availableDPA
SupabaseYes (Frankfurt)Available
VercelEdge multi-regionAvailable
DSGVO.proEU onlyOn request
AnthropicEU availableAvailable

Full table → docs/gdpr-data-flows.md