Materials by Alfonz Bakarbessy

All materials

Tutorial

MCP Fundamentals: Observability

Production asks the same questions of an MCP server as of any distributed system: what ran, how long, did it fail. Extend the complete, audience-protected notes server with one deliberately slow tool, watch MCP-standardized log and progress messages stream beside its result, then export FastMCP's OpenTelemetry spans to Jaeger and propagate a client-chosen trace ID across the authenticated protocol boundary.

MCP Fundamentals: Observability (cover image)
Tutorial

MCP Fundamentals: OAuth 2.1 Auth and Security

Protect an HTTP MCP server with MCP's OAuth profile and a real Keycloak authorization server. Follow the 401 challenge and discovery chain with curl, mint an audience-bound token, and use it in a Bearer-protected MCP session. Then test a wrong-audience token and study token passthrough, confused-deputy, DNS-rebinding, and tool-poisoning attacks.

MCP Fundamentals: OAuth 2.1 Auth and Security (cover image)
Tutorial

MCP Fundamentals: Build a Real MCP Server

You drove an MCP server with curl; now write one. Start with the stdio transport where the client literally launches your server as a subprocess, then grow a notes server with tools, error handling that language models can actually read, static and templated resources, and prompts. Flip the same server to Streamable HTTP and curl it again, then exercise it with three clients: raw curl, a real SDK client you write yourself, and the fastmcp CLI.

MCP Fundamentals: Build a Real MCP Server (cover image)
Tutorial

MCP Fundamentals: MCP is Just HTTP POSTs

Everyone says MCP is the protocol for AI integrations, but nobody mentions it is just JSON-RPC over HTTP POSTs. Take a real Model Context Protocol server, drive it entirely with curl - the initialize handshake, the session header, tools, resources, prompts - and map every concept onto REST vocabulary you already know. Then trace how the protocol evolved from the 2024 HTTP+SSE design to the stateless 2026 rewrite, and what that means for the code you will write.

MCP Fundamentals: MCP is Just HTTP POSTs (cover image)
See all tutorials by Alfonz Bakarbessy →