[ <- BACK ]

┤ 01 / 06 :: KREIO ├

Kreio

My web agency website and an API exposing an MCP server to draft and publish articles with an LLM, plus free Lighthouse and security audits.

kreio.fr ->

Stack

  • Next.js
  • Hono
  • MCP SDK
  • Prisma
  • PostgreSQL

What I did

Kreio is my web agency: one single contact from the first meeting to production. The website presents the offers and past work, and doubles as a technical showcase: local SEO pages per city, blog, client reviews and free tools (Lighthouse SEO and accessibility audit, security scanner, color palette generator).

Behind it, a separate Hono API runs Lighthouse audits on a shared Chrome and exposes an MCP server. An LLM can read the writing guide, create, edit and publish articles there, with no direct database access. The back office (Better Auth, MDX editor with preview) keeps control over everything that goes live.

kreio :: architecture

┌ Next.js ┐

site + admin

HTTPS

┌ Hono ┐

Bun API

OAuth

┌ MCP ┐

7 tools

SQL

┌ Postgres ┐

Prisma 7

kreio-api :: /mcp#blog

>> Technical highlights

  • MCP server protected by OAuth/OIDC (Authentik, JWTs verified via JWKS): getGuide, listArticles, getArticle, createArticle, updateArticle, publishArticle, deleteArticle.
  • Write guardrails: MDX validated against a component allowlist, author set server-side, a tool can only touch its own author's articles.
  • Writing guide served section by section, so the LLM context only holds what it needs.
  • Lighthouse audits with an explicit timeout on the shared Chrome, and a FlareSolverr fallback when a site sits behind Cloudflare.
  • Strict CSP on the public site, relaxed only on /admin for the MDX preview. Cookie consent and automatic purge of contact data after 3 years.
  • ISR on articles, tag-based caching, free tools served as static HTML, heavy libraries (GSAP, 3D) kept out of the root layout.