Zum Inhalt springen

MCP Server / crash course

crash course

Hands-on crash course for the Model Context Protocol (MCP) with project-based branches on Streamable-HTTP, LangChain adapters, and Docker.

152von @emarco177Apache-2.0GitHub →

Transport

sse

Dokumentation

MCP Crash Course 🚀

Welcome to the MCP Crash Course! This repository is designed to teach you the fundamentals and advanced concepts of the Model Context Protocol (MCP) in a hands-on way.

What is MCP? 💡

The Model Context Protocol (MCP) helps connect AI-agentic applications powered by Large Language Models (LLMs) to external tools and data sources, enabling more capable and context-aware AI systems.

How it Works 🤔

This repository uses a unique branch-based structure for learning:

  1. Each project/* branch covers a specific MCP feature or concept.
  2. Within each branch, commits are ordered chronologically. Follow the commits one by one to learn the topic step-by-step.

Simply check out the branch for the topic you want to learn and walk through the commits!

Available Topics (Branches) 📚

Here are the topics currently available:

  • project/sse: Learn how to implement Server-Sent Events (SSE) with MCP.
  • project/langchain-mcp-adapters: Explore integrating MCP with LangChain adapters.
  • project/docker-mcp: Understand how to containerize your MCP applications using Docker.
  • project/prompts: Learn how to implement and work with MCP Prompts, featuring FastMCP 2.0.

More topics might be added, so keep an eye out!

Prerequisites 🛠️

Before you start, make sure you have the following installed:

  • 🐍 Python (version 3.10 or higher)
  • 📦 uv (the fast Python package installer and resolver)
  • ✨ Cursor IDE
  • ☁️ Claude Desktop

Getting Started ▶️

  1. Clone the repository:
    git clone https://github.com/emarco177/mcp-crash-course.git
    cd mcp-crash-course
    
  2. Choose a topic and check out the branch:
    # Example for the SSE topic
    git checkout project/sse
    
  3. Follow the commits: Use git log --oneline --reverse to see the chronological list of commits for the branch. Then, use git checkout <commit_hash> or your Git client to step through the history and learn.

Contributing 🤝

Contributions are welcome! If you'd like to add a new topic or improve an existing one:

  1. Fork the repository.
  2. Create a new branch for your feature following the naming convention: project/your-mcp-feature-name.
  3. Make your changes, ensuring each commit represents a logical step in the learning process.
  4. Open a Pull Request against the main branch.

License 📄

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Happy learning! 🎉