Pranav Srivastava
Learning tracks
publishedBeginner to Intermediate10 modules2h 27m

MCP for Practical Builders

Learn Model Context Protocol from scratch — how it works, how to build servers in Python, and how to give AI assistants safe access to your files, databases, and APIs. Ends with a complete hands-on project.

MCPPythonClaudeAI ToolsFastMCPSecurityAgents

Course modules

01

The Problem MCP Solves

Start here, even if you've never written code. What 'Model Context Protocol' actually means, in plain English — and the simple problem it was built to solve.

8m
02

How MCP Works

The three-part architecture, three primitives, and the JSON-RPC communication model that makes MCP tick.

10m
03

Setting Up Your Environment

Install the Python MCP SDK, get Claude Desktop ready, and verify your setup with a minimal working server.

5m
04

Your First MCP Server

Build a real multi-tool server, connect it to Claude Desktop, and understand the complete request-to-response flow.

15m
05

File System Tools

Build a safe file server with read, write, list, and delete tools — and learn why safe_path() is the most important function you will write.

20m
06

Database Tools

Build a SQLite MCP server with safe query and insert tools — and learn why parameterized queries are non-negotiable.

20m
07

Web and API Tools

Build async tools that fetch webpage content and call REST APIs — with URL validation, timeouts, and content size limits built in.

15m
08

Resources and Prompts

Expose structured data as MCP resources with URI patterns, and define reusable prompt templates that give Claude consistent starting points.

12m
09

Security Patterns

Six rules every MCP server must follow — from path validation and command injection prevention to rate limiting, input sanitization, and audit logging.

12m
10

Hands-on Project: Personal Content Assistant

Build a complete MCP server that combines file, web, and database tools into a single personal content assistant — and see the whole system working together.

30m
All tracksQuestions? Get in touch →