MCP Dev Quickstart guides

Try out MCPcat

Register your first WebMCP tool with navigator.modelContext

How to use navigator.modelContext to register tools that AI agents can call directly from your website.

Dynamically register and unregister WebMCP tools

Control which WebMCP tools are available based on user roles, routes, or feature flags using conditional rendering and lifecycle hooks.

Build declarative WebMCP tools with HTML form attributes

Turn existing HTML forms into MCP tools using declarative attributes — no JavaScript required.

Build WebMCP tools with Vue.js using navigator.modelContext

Create a Vue 3 composable that registers and unregisters WebMCP tools tied to component lifecycle.

Build a WebMCP confirmation flow with requestUserInteraction

Use the requestUserInteraction API to prompt users for confirmation before executing destructive WebMCP tool actions.

Add WebMCP tools to a WordPress site without JavaScript

Use WebMCP's declarative HTML form attributes to expose tools from a WordPress site — no JavaScript or build step required.

Add WebMCP tools to a React app with webmcp-react

How to use the webmcp-react library to register WebMCP tools in React with Zod schemas and connect them to desktop clients.

Add WebMCP tools to a Next.js App Router project

Set up webmcp-react in a Next.js 15 App Router project with proper client component boundaries and SSR handling.

OpenAI Apps SDK TypeScript Quickstart

Build your first ChatGPT app in TypeScript with this step-by-step guide covering MCP server setup and inline UI components.

OpenAI Apps SDK Python Quickstart

Build your first ChatGPT app in Python with this step-by-step guide covering MCP server setup and inline UI components.

Error handling in custom MCP servers

Implement robust error handling in MCP servers with proper error codes, logging, and recovery strategies.

Building a serverless MCP server

Deploy MCP servers on serverless platforms like AWS Lambda, Vercel, and Cloudflare Workers with StreamableHTTP.

Adding custom tools to an MCP server in TypeScript

Step-by-step guide to adding custom tools to your TypeScript MCP server with proper typing and error handling.

Adding custom tools to an MCP server in Python

Learn how to extend your Python MCP server with custom tools using FastMCP and the standard MCP SDK.

Set Up Multi-Platform Telemetry for MCP Servers

Send MCP telemetry data to multiple observability platforms simultaneously for comprehensive monitoring.

Installing MCP servers globally vs locally: which approach to choose

Choose between global and local MCP server installations based on your project needs and workflow.

How to fork and customize an open-source MCP server

Fork and customize existing MCP servers to add new tools, resources, and functionality for your needs.

Configuring MCP installations for production deployments

Configure MCP servers for production with security, monitoring, and deployment best practices.

Building a StreamableHTTP MCP server

Deploy scalable MCP servers using StreamableHTTP for cloud environments and remote access.

Building a stdio MCP server

Build MCP servers with stdio transport for local CLI tools and subprocess communication.

Building an MCP server in TypeScript

Build type-safe MCP servers using TypeScript with full SDK support and production best practices.

Building an MCP server in Rust

Create memory-safe MCP servers in Rust with exceptional performance and type safety guarantees.

Building an MCP server in Go

Learn how to build high-performance MCP servers using Go with concurrency and production-ready patterns.

Building an MCP server in Python using FastMCP

Build production-ready MCP servers in Python using the FastMCP framework with automatic tool handling.