Get the project running
Time to stop reading about MCP and start running it. The rest of the course is built around a single project: a CLI chatbot that implements both an MCP client and an MCP server in one codebase. Once the project is running locally, every subsequent lesson will have you edit it.
One note before you download anything. In real projects, you almost always implement either a client or a server — rarely both in the same application. This project bundles both so you can see the full round-trip with nothing hidden. Treat it as a learning harness, not a template for production architecture.
What the project contains
A Python CLI chatbot that:
- Implements an MCP server exposing two tools: read document contents and edit document contents.
- Implements an MCP client that connects to that server over stdin/stdout.
- Stores a handful of fake documents in memory. Nothing is persisted between runs.
- Wires the whole thing into a Claude-powered chat loop you can type into from the terminal.
Setup steps
-
Download the project. Grab
cli_project.zipfrom the course downloads. A second file,cli_project_COMPLETE.zip, contains the finished version — keep that one aside as a reference if you get stuck, but do your work incli_project.zip. -
Extract the archive. Unzip it somewhere convenient and open the folder in your editor of choice.
-
Configure your
.envfile. Copy.env.exampleto.envand add your Anthropic API key:ANTHROPIC_API_KEY=sk-ant-... -
Install dependencies. With UV installed:
uv syncIf you are not using UV, install the listed dependencies with pip in a virtualenv instead.
-
Run the chatbot. From the project root:
uv run main.pyOr, without UV:
python main.py
Verify your setup
You should see a chat prompt appear in the terminal. Type something basic — what's one plus one is a fine smoke test — and wait for Claude to respond. If you get a coherent answer back, your API key is wired up and both Python and your package manager are working.
If the prompt never appears, check the .env file first. If you see an authentication error, regenerate your API key and try again. Do not move on until this basic query works — the rest of the module assumes a running chatbot you can keep editing.
Key Takeaways
- 1The course project is a CLI chatbot that implements both an MCP client and server in one codebase for learning purposes.
- 2Real-world projects almost always implement either a client or a server, not both.
- 3Setup is five steps: download, extract, configure .env with your API key, install dependencies, and run with uv run main.py.
- 4Verify the project works by sending a basic query before moving on — the rest of the module assumes a working chatbot.