Dashboard/Phase 4: Integrations
📖 Concept7 min10 XP

Lesson 25: MCP: The Model Context Protocol

Day 25 of 50 · ~7 min read · Phase 4: Integrations


The Opening Question

So far, Claude Code lives in your terminal and works with your filesystem. It reads files, edits code, runs commands.

But your actual work isn't just confined to your computer. You use Slack to communicate. Jira to track issues. GitHub to manage code. Databases to store data. Deployment services to ship code.

Here's the question: What if Claude could talk to all of these services, not just your filesystem?

And more fundamentally: What if any service — Slack, Jira, your database, your email — could have a standardized way to talk to Claude?


Discovery

Let's explore what MCP is and why it matters.

Question 1: What is the Model Context Protocol (MCP)?

MCP is a standard. Think of it like HTTP — a common protocol that lets different services talk to each other.

But what problem does MCP solve?

Pause and think: Imagine Claude wants to check your Slack messages. How would that work? Would Slack have to write special code for Claude? Would Claude have to write special code for Slack?

Before MCP, the answer was yes — each integration had to be custom-built. If Claude wanted to talk to 100 different services, it would need 100 different custom integrations. That's not scalable.

MCP says: "Let's have a standard. Any service can implement MCP. Claude can talk to any service that implements it. No custom code needed."

Here's a concrete example:

Without MCP: Claude Code + Slack = special Slack integration built by Anthropic

With MCP:

  • Slack writes an MCP server (once)
  • Claude Code connects to any MCP server
  • Now Claude talks to Slack, Jira, GitHub, Notion, database, etc.

MCP is the bridge that makes this possible.

Question 2: How does MCP actually work?

MCP is built on a simple idea: a server and a client.

MCP Server — A program that implements the MCP standard and knows how to talk to a specific service. For example:

  • Slack MCP server knows how to read/send Slack messages
  • GitHub MCP server knows how to read/create GitHub issues
  • Database MCP server knows how to query your database
  • Calendar MCP server knows how to read/create calendar events

MCP Client — Claude Code. It can connect to any MCP server and say things like "list my Slack messages" or "create a GitHub issue."

When you connect Claude Code to an MCP server, Claude gains new capabilities. It becomes able to talk to that service.

Here's what the flow looks like:

Claude Code    →    [MCP Client]    →    [MCP Server]    →    Slack
(your terminal)     (builtin)          (you install)      (external service)

You ask Claude: "Post a message to #engineering saying the deploy is done"

Claude uses the MCP client to talk to the Slack MCP server, which talks to Slack's API.

Pause and think: What services do you use every day? What if Claude could interact with all of them?

Question 3: What's the MCP ecosystem like?

The ecosystem is large and growing. There are MCP servers for:

Communication: Slack, Email, Discord, Teams

Project Management: Jira, Linear, Asana, Trello

Code & CI/CD: GitHub, GitLab, Bitbucket, CloudBuild, CircleCI

Data: SQL databases, Postgres, MongoDB, Google Sheets

Services: AWS, Google Cloud, Vercel, Stripe, Twilio

Productivity: Notion, Obsidian, Airtable, Google Drive

And hundreds more. The ecosystem is growing because MCP is open and standardized.

You can also write your own MCP server if you have a custom service or internal tool.

Question 4: How do you connect Claude Code to an MCP server?

This is practical. Let's walk through it.

MCP servers are configured in your Claude Code settings (the .claude/ directory). When you enable an MCP server, Claude Code knows how to connect to it.

Here's what it looks like in practice:

  1. Find an MCP server. Let's say you want to use the GitHub MCP server.

  2. Install it. Some servers are installed via npm, others are just configured. Check the server's documentation.

  3. Configure it. Add it to your Claude Code settings or configuration file:

    {
      "mcpServers": {
        "github": {
          "command": "github-mcp",
          "args": ["--token", "your-github-token"]
        }
      }
    }
    
  4. Use it. Now in Claude Code conversations, you can do things like:

    claude "Create a GitHub issue for the bug we discussed"
    

    Claude uses the GitHub MCP server to actually create the issue.

Different servers have different configuration (some need API keys, some need credentials, etc.), but the pattern is the same.

Pause and think: Which MCP server would give you the most value? Slack? GitHub? Jira? Which one would save you the most manual work?


The Insight

Here's what's really happening with MCP:

MCP is a standard protocol that lets Claude Code integrate with any service — not just your filesystem. By connecting MCP servers, you give Claude the ability to read from and act on your email, your issue tracker, your deployment platform, your database, or any other tool you use. This turns Claude Code from a local agent into a tool that spans your entire digital workspace.

The mental model: MCP is like giving Claude superpowers through third-party extensions. Just as VS Code can talk to any language server or debugger, Claude Code can talk to any service that implements MCP. Your integration ecosystem expands infinitely.


Try It

Let's explore the MCP ecosystem.

  1. Check what MCP servers are available. Visit the Anthropic MCP documentation or your Claude Code plugin marketplace.

  2. Pick one that's relevant to your workflow. If you use GitHub, choose the GitHub server. If you use Slack, choose Slack. If you use Jira, choose Jira.

  3. Read the server's documentation. Each one has setup instructions. Some are npm packages, some are configured differently.

  4. If you're ready to connect it: Follow the installation steps and configure it in your Claude Code settings.

  5. Test it. Start a conversation and ask Claude to do something that requires the MCP server:

    claude
    

    Then: "List the open GitHub issues in my current project" (if using GitHub MCP) Or: "What's my next calendar event?" (if using Calendar MCP)

  6. Experiment with multiple servers. If you connect more than one, ask Claude to do something that uses both:

    "Create a GitHub issue for the bug we discussed, then post about it in #engineering"
    

Key Concepts Introduced

ConceptDefinition
MCP (Model Context Protocol)A standard protocol that lets Claude integrate with external services
MCP ServerA program that implements MCP and knows how to talk to a specific service (Slack, GitHub, etc.)
MCP ClientClaude Code's built-in ability to connect to MCP servers
IntegrationConnecting an MCP server so Claude can use that service
MCP ecosystemThe growing collection of MCP servers for different services
Custom MCP serverAn MCP server you write for a proprietary or internal service

Bridge to Lesson 26

You've now learned how to extend Claude Code's reach beyond your filesystem through MCP. Claude can now talk to your external services.

But here's another question: Claude Code lives in the terminal. That's powerful, but it's not the only place you work.

Tomorrow's question: When should Claude live in your editor versus your terminal versus a desktop app?

We'll explore IDE integrations — bringing Claude Code into VS Code, JetBrains, and other tools you use every day.


← Back to Curriculum · Lesson 26 →