Introduction To Model Context Protocol
← All lessons
Lesson 04Introduction To Model Context Protocol

Project setup

Summary audio

No audio recap for this lesson.

Study notes

Project Goal

  • Building a CLI-based chatbot to understand how MCP clients and servers work together
  • This is a learning project combining both client and server in one codebase (normally you'd build only one or the other)

Project Architecture

  • Client: MCP client that connects to a custom MCP server
  • Server: Custom MCP server with two tools implemented
  • Tool to read document contents
  • Tool to update document contents
  • Data: Fake documents stored in memory (not persisted to disk)

Important Context

  • In real projects, developers typically build either:
  • An MCP server to distribute for others to use, OR
  • An MCP client that connects to existing third-party MCP servers
  • This project builds both to demonstrate how they interact

Setup Instructions

  • Download the CLI_project. zip starter code
  • Open project in code editor
  • Follow setup directions in README. md file:
  • Add API key to . env file
  • Install dependencies (using UV or pip)
  • Run the project:
  • With UV: uv run main. py
  • Without UV: python main. py
  • A chat prompt will appear; test with a simple query like "what's one plus one"

Takeaways

  • This is a learning project that combines both MCP client and server in one codebase to demonstrate how they work together
  • The server implements two tools: reading document contents and updating document contents, with fake in-memory data
  • In real projects, developers typically build either a server for others to use OR a client connecting to existing servers, but not both
  • Setup requires adding an API key to . env, installing dependencies, and running with uv run main. py or python main. py
  • Test the chatbot with simple queries after setup to verify the client-server interaction is working
Flashcards 10 cards
Question
click to reveal · ←/→
Answer
click to flip back
Export to Anki (.tsv) ↓
Knowledge check 6 questions