
Webanion - Headless CMS Portfolio Platform with MCP Server
A static portfolio site could not carry work in five languages or keep pace with the writing behind it, so we replaced it with a platform. A headless CMS holds every case study, article and record; a Next.js front end renders them in English, Bengali, Spanish, Hindi and Chinese; and an MCP server exposes the same content to AI assistants, so an agent asked about this work reads the source rather than guessing from a scrape. Search, media handling, an approval flow and a public discovery layer all run on it. The proof is recursive: the page you are reading is served by the system this entry describes.
The Full Story
A portfolio built like a product: one record, every page, every language, and a server that lets AI assistants read it at the source.
A portfolio that could not keep up
A studio lives or dies on proof. The old Webanion site was a set of hand-built pages: every new project meant editing several of them, the writing behind the work never made it onto the site, and a buyer reading in Bengali, Spanish, Hindi or Chinese got English or nothing. Worse, buyers had started asking AI assistants for a shortlist, and those assistants were guessing from scraped pages that were already out of date.
The answer was to stop treating the portfolio as pages and build it as a product: one source of truth for every case study, served to people in their language and to assistants in a form they can trust.
Every case study is a record, not a page
Projects, services, companies, clients, testimonials and articles are structured records in a headless CMS, linked to each other. Change a record once and every page that mentions it updates: the project page, the company page, the service page, the search results.
For a buyer that means the proof is always current and always connected, from a service they need to the projects that show it and the people who vouch for it. For the founder it means a new project is published once rather than copied into an afternoon of pages.



Five languages from the same record
English leads, and every record also carries its own Bengali, Spanish, Hindi and Chinese version, rendered from the same structure at every screen size. A buyer in Dhaka, Madrid, Delhi or Shanghai reads the work in their own language with the same depth as the English, instead of a translated homepage with English everywhere behind it.




A story is the project page, cover to close
Case studies that matter get a full story: a cover, then sections stacked on one canvas, each with its own layout and animated artwork, all written and arranged in the same CMS. The story is the project page itself, so a buyer who lands from search reads the problem, the solution and the result without leaving it. Stories are data too, so they translate like everything else and change without a developer.


An MCP server so assistants read the source
Alongside the website runs an MCP server that exposes the same content to AI assistants as typed tools: search the portfolio, read a project, list services, check a testimonial. An assistant asked about Webanion reads the record rather than guessing from a scrape, and a buyer who wants more can request a key and send a message through the assistant itself.
That makes the portfolio a lead channel in a place most studios are not yet present, and every answer an assistant gives is one the studio wrote.



Private by construction
A portfolio holds things that must never leak: client contacts, confidential companies, drafts not yet approved. So the public surface is an allowlist decided field by field in one place, enforced in CI, and anything not on it cannot be returned by the website or the MCP server. Drafts stay invisible until they are published, and the owner's admin surface sits behind three independent checks.
Clients under NDA can be shown as proof without being named, which is often the difference between having a case study and not.
Nothing goes live without a read
Every change lands as a draft first, whether it was typed in the admin or drafted by an AI assistant through the owner's own MCP server. The founder reads it in a private preview of the real page, hidden from search engines, and only then publishes. A one-person studio keeps its portfolio as current as an agency's without shipping a word nobody read.



Proof that compounds
Every project added to Webanion lands on the right pages, in five languages, searchable on the site and answerable by assistants, the same day. For buyers it is the fastest way to see relevant work they can trust; for the studio it is a portfolio that grows in value with every record instead of going stale.
The platform runs on the same self-hosted Kubernetes cluster as the client work it describes, told in the zero-downtime migration story, and the assistants that help run it are described in the AI engineering story.
You May Also Like
CoverFanz - Admin Dashboard for a Performer Marketplace
The admin dashboard that let CoverFanz's founder run a performer marketplace from launch day without asking a developer. Every fan, performer and venue sits in one list with its subscription state, new venues wait in an approval queue until their address is checked, reports land with the reason attached, and the kinds of act are a list the founder controls. It was built in the same month as the apps, on the same GraphQL API.
Al-Insaf - Cooperative Finance Platform with Ledger and Loans
A cooperative finance organisation was running member records, savings, loans and investor capital across paper and spreadsheets, with no way to audit a branch or close a day cleanly. We built one system that holds all of it: member registration, daily collections, loan application through to disbursement, a multi-branch ledger, investor capital and an audit log that records who did what. Officers record each collection the moment it is made, managers approve loans and close the day, and the permission model decides what each role can see and do rather than hiding buttons. Everything shown in this case study runs on seeded demonstration data; real member records never appear in portfolio material.
Sukalyan Research Group, a website for a university pharmacy lab
A website for the Sukalyan Research Group at the Department of Pharmacy, Jahangirnagar University, led by Professor Sukalyan Kumar Kundu: seven research areas with their techniques and papers, a filterable publication list of one hundred and twenty-four Google Scholar entries grouped by year, the principal investigator's profile, the members by name and portrait, an alumni destinations wall, a Lab Life gallery and a four track join page with an email checklist. Next.js with static export, React and TypeScript, Tailwind CSS, all content behind one query function so the move to a headless CMS changes nothing else. Deployed as a single container on a self-hosted Kubernetes cluster.

The blog is field notes from production: architecture decisions, AI systems that survived contact with real users, and infrastructure that pays for itself. Written from the work, not about it.


