Video Chapters
0:00 Why this ten minutes matters
0:41 If you are on Linux
1:02 Python
1:24 uv, or plain pip
1:46 Node, and why a Python course needs it
2:08 Claude Desktop and its settings file
2:31 Two rules and one warning
3:06 One folder for everything
3:17 The packages, and the version pin
3:44 If something goes wrong
4:05 Where the map stands

Get your machine ready

Lesson 3 of 30, Module 1: The Whole Idea. You understand what MCP is, why it exists, and you have FELT the problem it solves.

Table of Contents
Downloads

Lesson 3 of 30, Module 1: The Whole Idea. You understand what MCP is, why it exists, and you have FELT the problem it solves.

What you can do after this lesson

Do every piece of environment setup before you touch the real build, pin exact dependency versions instead of trusting 'latest', and build a named escape hatch for every constraint you introduce (a different host, a different installer, a downloadable checkpoint) so one blocked prerequisite never ends the session.

Code in this lesson

Every block the lesson shows on screen, in the order it appears.

python3 --version
curl -LsSf https://astral.sh/uv/install.sh | sh
node --version
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%\Claude\claude_desktop_config.json
mkdir ~/scribe
cd ~/scribe
uv init
uv add "mcp>=2.1,<3" google-api-python-client google-auth
python3 -m venv .venv && source .venv/bin/activate
pip install "mcp>=2.1,<3" google-api-python-client google-auth

Downloads

Prefer to read?

The written version of this part of the course is on Substack: https://genaiunplugged.substack.com/p/why-mcp-was-created-full-course-lesson.

Lesson transcript

Why this ten minutes matters

The next 7 lessons all rest on a few minutes of setup. Well, this is that setup.

Hello, and welcome to lesson 3 of the MCP Masterclass. Last lesson we took the name MCP apart. Today we get your computer ready, so that nothing after this breaks. And we start with our map, as always.

Same diagram, same 6 lit boxes. Nothing changes on the map today, because today we are only getting your workbench in order.

Well, this lesson is a short one and builds nothing at all. And I am putting it here on purpose, because it is the setup that stops the next 7 lessons from breaking.

Work through it in order, and check each thing off as it passes.

If you are on Linux

One thing before you start, and I would rather you hear it from me now than find it in 20 minutes.

Claude Desktop runs on Mac and on Windows. There is no Linux build of it.

If you are on Linux, you can still do this whole course. Use one of the other AI apps from lesson 6 as your main app instead. Your MCP server is plain Python, and it does not care which app is calling it.

Python

So, first thing. Python.

You need Python version three point ten or newer. Open a terminal and ask it which version you have.

python3 --version

On Windows the command is usually python rather than python3. Try both, and use whichever one answers.

If you get back three point ten or higher, you are done. If not, get Python from python.org and run the installer.

uv, or plain pip

Second thing. A tool called uv.

uv installs Python packages and keeps each project separate. It is one line to install.

curl -LsSf https://astral.sh/uv/install.sh | sh

Windows users run the PowerShell line on the same page instead.

And if you would rather not use it, plain pip with a virtual environment works fine everywhere in this course. I show you both, side by side, every time we install something.

Node, and why a Python course needs it

Third thing, and here is one that surprises people. This course is written in Python, and you still need Node.

The reason is lesson 6. There we install 2 servers that other people wrote, and those servers run under a Node command. Get Node now, and lesson 6 will simply work.

node --version

No answer means no Node. Get the LTS build from nodejs.org.

Claude Desktop and its settings file

Fourth thing. Claude Desktop itself.

Download Claude Desktop from claude.ai and install it. The free plan is enough for everything in this course.

Open it once and sign in. Then find its settings file, because you are going to edit that file by hand later.

On a Mac it lives here.

~/Library/Application Support/Claude/claude_desktop_config.json

And on Windows, here.

%APPDATA%\Claude\claude_desktop_config.json

That file may not exist yet, and that is fine. It gets made the first time you add a server.

Two rules and one warning

Now, 2 rules about that file, and I have watched both of them bite people.

The first rule. Every path inside it must be a full path, starting from the very top of your disk. Short paths behave badly when the app starts up.

The second rule. Claude Desktop must be fully quit and opened again after you edit it. Closing the window is not enough. Quit it properly.

And one warning about that file while we are here. Anything that needs a password or a token keeps it in there, in plain text. So never open that file in a screen share, and never paste it anywhere to ask for help.

One folder for everything

Fifth thing. One folder for the whole course.

Make it, and keep everything in it. Mine looks like this.

mkdir ~/scribe
cd ~/scribe

Every later lesson uses this folder. Nothing else on your machine gets touched.

The packages, and the version pin

And the last thing. The packages. Run uv init once inside the folder, so it becomes a project. Then add the three packages.

uv init
uv add "mcp>=2.1,<3" google-api-python-client google-auth

Or with pip.

python3 -m venv .venv && source .venv/bin/activate
pip install "mcp>=2.1,<3" google-api-python-client google-auth

Notice the version on that first package. It says two point one or higher, and below 3.

That small detail matters more than it looks. The first version of this course just said the package name and a low number, with no upper limit. A newer release came out, the name of the main class changed, and every code sample broke.

And nobody saw it happen, because a loose version number gives you no warning at all. So pin your versions.

If something goes wrong

So what happens if any of this fails?

Every module in this course ships a checkpoint. It is a zip file with working code, a pinned package list, a sample draft, and a small script that checks your setup.

Grab the module 1 checkpoint now, before you need it. One bad afternoon should never end a course for anybody, and that is a rule I hold myself to.

Where the map stands

So where does our map stand at the end of this lesson?

Still 6 boxes, and still a hole in the middle. You built nothing today, and that was the point.

Next lesson is all about giving your AI a key to your Google Drive.

Bye now, and I will see you in the next lesson.

Frequently Asked Questions

The written version of this part of the course is on Substack: https://genaiunplugged.substack.com/p/why-mcp-was-created-full-course-lesson.

Dheeraj Sharma

Dheeraj Sharma

AI Systems Builder
Creator of the n8n Zero to Hero course (42 lessons, 31+ hours). I help solopreneurs build AI systems that grow revenue without growing workload.

Get the Scribe checkpoints and code

Every module ships a checkpoint zip with the server exactly as the module leaves it, so you can start any lesson from working code.

Open the GitHub repo