Skip to content
LinkedInX

Level 2: Integrator — Connect Tools with MCP

5 min read + 30 min hands-on

Target audience: Readers who have created a CLAUDE.md file and want to connect Claude Code to tools such as GitHub, Slack, or Notion
Prerequisites: Read Level 1

The next step after getting Claude to understand your project with CLAUDE.md is to let Claude actually use external tools. By configuring MCP (Model Context Protocol), Claude can read GitHub Issues directly, send Slack messages, and more.


MCP (Model Context Protocol) is a standard protocol that allows Claude to communicate with external tools and services. Think of it like USB-C — once the standard is established, you can connect a wide variety of tools using the same interface.

Claude Code
    ↕ MCP (common protocol)
┌──────────────────────────────────────┐
│  GitHub  │  Slack  │  Notion  │  DB  │
└──────────────────────────────────────┘

Without MCP, Claude can only interact with the filesystem and execute code. By configuring MCP, it can retrieve information from and operate on external services.

MCP ServerWhat it can do
GitHubRead Issues/PRs, add comments, manage repositories
SlackSend messages, read channels and threads
NotionSearch, create, and update pages and databases
Google DriveSearch, read, and create files
PostgreSQLRun SQL queries, inspect schemas
PuppeteerBrowser automation, screenshots, scraping

MCP servers are configured in your project’s .claude/settings.json.

your-project/
├── .claude/
│   └── settings.json   ← MCP configuration file
└── CLAUDE.md
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token_here"
      }
    }
  }
}

Get your GitHub Personal Access Token at github.com/settings/tokens. The repo scope is required.

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token_here"
      }
    },
    "slack": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-slack"],
      "env": {
        "SLACK_BOT_TOKEN": "xoxb-your-token-here",
        "SLACK_TEAM_ID": "T0XXXXXXXXX"
      }
    }
  }
}

After creating or updating settings.json, restart Claude Code to enable the tools.

Here are examples of what you can do once MCP is configured.

> Please read GitHub Issue #12 and organize the requirements.

Claude reads the issue body, comments, and labels and organizes the content.

> Based on the requirements in Issue #12, please add a GET /users/{id} endpoint to src/routes/users.py.

It then implements directly based on the issue content.

> Please check the last 10 messages in the #dev-general channel.
> Please search Notion for pages related to "API design."

MCP integration is powerful, but at this stage you still need to manually instruct Claude every time.

  • Each time a new Issue appears, you type “read Issue #X and implement it”
  • You enter the same type of request over and over

Eliminating this repetition is what Level 3 custom commands are for.


If you want to learn by doing, check out the tutorial.

Hands-on tutorial for this level →

Level 3: Builder — Automate Repetition with Custom Skills

See the references for the external specifications and background sources used on this page.[1][2]

  1. Anthropic, Claude Code documentation
  2. Anthropic, Claude API documentation