Module 8: Connect Your Tools with MCP
Lesson 1

What Is MCP? Connecting Claude to the Outside World


Claude Code Has a Wall Around It

Up to now, Claude Code has been brilliant inside one box: your project folder. It reads your files, writes code, runs commands. But that box has a wall around it.

Ask Claude to "check what issues are open on our GitHub repo" or "pull the latest rows from our Supabase database" or "update the launch checklist in Notion," and it can't. Those things live on other systems, behind logins and APIs. Claude has no hands reaching into them.

MCP is how you give Claude those hands.


What MCP Actually Stands For

MCP = Model Context Protocol. It's an open standard introduced by Anthropic for connecting AI assistants to external tools and data sources.

Two words matter here:

  • Protocol — a shared language. Just like every website speaks HTTP, every MCP tool speaks MCP. Because it's a standard, Claude doesn't need custom code to talk to GitHub vs. Notion vs. your database. They all speak the same protocol.
  • Open — anyone can build one. GitHub, Notion, Supabase, Sentry, and hundreds of others have already built MCP connections. So have thousands of independent developers.

You don't build these connections yourself. You plug them in.


The Analogy: A USB-C Port for AI

Think about USB-C. Before it, every device had its own weird cable — one for your phone, one for your camera, one for your printer. A drawer full of incompatible plugs.

Then USB-C arrived: one port, one shape, and suddenly anything could plug into anything.

MCP is USB-C for AI. Claude Code has the port. Every tool that supports MCP has the matching plug. Once you connect them:

  • Claude can read your GitHub issues
  • Claude can query your database
  • Claude can update your Notion pages
  • Claude can check your error logs in Sentry

...all without you copy-pasting anything between windows. You just ask, and Claude reaches through the port to do it.


What Is an "MCP Server"?

This is the one piece of jargon worth learning. When you connect a tool to Claude, you're connecting to its MCP server.

An MCP server is a small program (run by the tool's makers, or by you) that acts as a translator. It sits between Claude and the real tool:

   Claude Code  <-->  MCP Server  <-->  The Real Tool
                      (the translator)   (GitHub, Notion, your DB...)

When Claude wants to create a GitHub issue, it doesn't talk to GitHub directly. It tells the GitHub MCP server "create an issue with this title and body," and the server handles the actual GitHub API call. The server speaks Claude's language on one side and the tool's language on the other.

You'll hear "add an MCP server" a lot. It just means "connect a tool." The next lesson does exactly that.


What an MCP Server Gives Claude: Tools and Resources

Every MCP server exposes a set of capabilities. There are two main kinds, and the difference matters.

Tools — things Claude can do

A tool is an action. It's a verb. The server publishes a menu of them, and Claude can call any one (with your permission). Examples from real servers:

ServerExample tools
GitHubcreate an issue, open a pull request, list open issues, comment on a PR
Notionsearch pages, create a page, update a page's content
Supabaserun a SQL query, list tables, apply a migration

Tools are how Claude acts on the outside world.

Resources — things Claude can read

A resource is a piece of data the server makes available for Claude to reference — a file's contents, a database schema, an issue's text. Resources are read-only context. They're the nouns.

You won't think about resources much day to day; tools do most of the work. But it helps to know the distinction: tools are actions, resources are information.

(Some servers also offer prompts — pre-written command templates the server's makers ship for common jobs. A nice bonus, not something you need on day one.)


How Claude Names MCP Tools

When a server is connected, its tools show up to Claude with a long, structured name like:

mcp__github__create_issue
mcp__notion__update_page

The pattern is mcp__<server-name>__<tool-name>. You rarely type these yourself — you just ask Claude in plain English ("open a GitHub issue") and it picks the right tool. But you'll see these names in permission prompts, so it's good to recognize them. When you see mcp__, that's an external tool being used, not something happening inside your own project.


Real Examples of What This Unlocks

Once you've connected a few servers, your requests to Claude change shape. Instead of describing code, you describe outcomes that span tools:

"Look at the three newest customer signups in our Supabase database and draft a welcome message for each."

"Read the open issues labeled 'bug' on our GitHub repo and summarize the top three by how many people commented on them."

"Take the meeting notes from this file and create a new page in Notion under our 'Team Docs' section."

"Check Sentry for the most common error in the last 24 hours and explain what's causing it."

Notice the pattern: Claude is no longer just a coder. It's an operator that can reach into your real tools, pull live data, and take action — all from the same conversation where you build.


A Word of Caution Before You Get Excited

MCP gives Claude real reach into real systems. That's the power and the risk. A server that can create a GitHub issue can usually also close one. A server connected to your database can read it — and, if you let it, change it.

That's why Claude always asks permission before using a tool, and why you should think carefully about which tools you connect and what they're allowed to touch. We'll cover the safety mindset in depth in Lesson 4. For now, just hold this thought: connecting a tool is like handing over a key. Know what door it opens.


Summary

  • MCP (Model Context Protocol) is an open standard from Anthropic for connecting Claude to external tools and data.
  • Think of it as USB-C for AI — one universal port, and any compatible tool can plug in.
  • An MCP server is a translator program that sits between Claude and a real tool (GitHub, Notion, your database).
  • Servers expose tools (actions Claude can take) and resources (data Claude can read).
  • This turns Claude from a coder into an operator that works across your live tools — by asking in plain English.
  • More reach means more risk: Claude asks permission before acting, and you choose what each connection can touch.