Projects

~/projects

Projects

A selection of things I've built, from real-time multiplayer games to enterprise platforms.

MCP Observatory dashboard, tracked servers, release timeline and live event stream~/projects/mcp-observatory live

Real-time dashboard of the MCP ecosystem

MCP Observatory

A live dashboard tracking the Model Context Protocol ecosystem across npm, PyPI, GitHub and the official registry. It deduplicates servers, statically analyses their source, and renders releases, a dependency graph, capability and permission analytics, composite risk grades and a live event stream.

AstroTypeScriptSQLiteNode
Visit live →

A slim successor for an aging platform

As senior developer at Yielder Group, 2017 to present.

problem
The customer-facing B2C platform, internal CRM and order placement with providers ran on an aging codebase: Symfony and React, but stuck on old versions like Symfony 4.4. Upgrading everything in place meant touching years of accumulated code while the platform kept serving customers every day.
approach
Two tracks at once. Since early 2026 the old platform is maintenance-only: kept running and stable, because it has to keep serving customers until the successor is done. New development goes into what comes next: the slimmed-down system that sends orders to the different providers and implements every external endpoint the old system exposes, alongside an AI-powered customer insight tool.
result
The old platform keeps serving customers while its successor is built alongside it. When the new system takes over, integrations keep talking to the same API surface.
SymfonyReactPHPMySQL

An LMS for technician training, built from scratch

As senior developer at People-force, 2015 to 2017.

problem
The training organisation needed its own learning platform for technician courses, connected to the Podio administration the business already ran on.
approach
Designed the architecture and built the platform from the ground up with Laravel, NodeJS and Vue, with API integrations to Podio so the administration stayed in sync.
result
A purpose-built LMS in production, owned end to end: architecture, code and integrations.
LaravelNodeJSVue

MCP Observatory: watching an ecosystem nobody was watching

Self-directed product, live at mcpobservatory.com.

problem
Thousands of MCP servers get published across npm, PyPI and GitHub, and anyone can install them into an AI agent. There was no single place to see what exists, what changed, and which servers deserve scrutiny.
approach
Built ingestion across npm, PyPI, GitHub and the official registry, with deduplication and static analysis of each server's source. Releases, a dependency graph, capability and permission analytics and composite risk grades, streamed live.
result
A live, continuously updating dashboard of the MCP ecosystem. It is also the proof behind my writing on MCP security: the risk grades come from the same analysis.
AstroTypeScriptSQLiteNode
Visit live →