본문 바로가기

AI관련

Claude MCP(Model Context Protocol)

반응형

MCP는 AI 애플리케이션을 외부 시스템에 연결하는 표준 프로토콜이다.
USB-C가 다양한 기기를 하나의 포트로 연결하듯, MCP는 Claude를 데이터베이스, API, 파일 시스템 등에 연결한다.

1. MCP란 무엇인가

핵심 개념

MCP(Model Context Protocol)는 Anthropic이 만든 오픈소스 표준이다.
AI가 외부 도구와 데이터에 접근하는 방식을 표준화한다.

MCP 이전 vs 이후

구분MCP 이전MCP 이후

연동 방식 각 서비스마다 개별 구현 표준화된 프로토콜로 통일
새 도구 추가 코드 수정 필요 서버만 추가하면 됨
재사용성 낮음 높음 (다른 AI 앱에서도 사용 가능)

MCP 아키텍처

┌─────────────────────────────────────────────┐
│               Host (Claude Code)            │
│  ┌─────────┐  ┌─────────┐  ┌─────────┐     │
│  │ Client  │  │ Client  │  │ Client  │     │
│  └────┬────┘  └────┬────┘  └────┬────┘     │
└───────┼────────────┼────────────┼──────────┘
        │            │            │
        ▼            ▼            ▼
   ┌─────────┐  ┌─────────┐  ┌─────────┐
   │ Server  │  │ Server  │  │ Server  │
   │ (GitHub)│  │(Notion) │  │(Postgres)│
   └─────────┘  └─────────┘  └─────────┘
  • Host: Claude Code, Claude Desktop 등 AI 애플리케이션
  • Client: 서버와 통신하는 커넥터
  • Server: 실제 외부 시스템 인터페이스

MCP의 3가지 핵심 요소

요소설명예시

Tools AI가 실행할 수 있는 함수 파일 생성, API 호출
Resources AI가 읽을 수 있는 데이터 파일 내용, DB 레코드
Prompts 미리 정의된 템플릿 특화 작업 지시

2. Claude Code에서 MCP 설정하기

사전 요구사항

node --version
claude --version

MCP 서버 추가

HTTP 서버

claude mcp add --transport http notion https://mcp.notion.com/mcp

로컬 서버

claude mcp add filesystem -- npx @anthropic/mcp-server-filesystem

서버 확인

claude mcp list

 

또는 Claude Code에서 /mcp

서버 제거

claude mcp remove <이름>

 

3. 실용적인 MCP 서버 예시

GitHub 연동

export GITHUB_TOKEN="your_token"
claude mcp add github -- npx @anthropic/mcp-server-github

활용 예시:

  • 최근 PR 조회
  • 이슈 생성
  • 브랜치 생성 및 PR

Notion 연동

claude mcp add --transport http notion https://mcp.notion.com/mcp
  • 문서 검색
  • 페이지 생성
  • 태스크 추가

PostgreSQL 연동

claude mcp add postgres -- npx @anthropic/mcp-server-postgres \
  --connection-string "postgresql://user:pass@localhost:5432/mydb"
  • 테이블 조회
  • 데이터 분석
  • 매출 계산

Brave Search 연동

export BRAVE_API_KEY="your_api_key"
claude mcp add brave-search -- npx @anthropic/mcp-server-brave-search

 

4. MCP 스코프 개념

스코프저장 위치용도

local ~/.claude 개인용
project .mcp.json 팀 공유
user ~/.claude 모든 프로젝트 공통

프로젝트 스코프 예시

claude mcp add github -s project -- npx @anthropic/mcp-server-github

.mcp.json

{
  "servers": {
    "github": {
      "command": "npx",
      "args": ["@anthropic/mcp-server-github"]
    }
  }
}

민감 정보는 반드시 환경 변수로 관리한다.

5. 커스텀 MCP 서버 만들기

기본 TypeScript 예시

import { Server } from "@modelcontextprotocol/sdk/server";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio";

const server = new Server({
  name: "custom-server",
  version: "1.0.0"
});

server.setRequestHandler("tools/list", () => ({
  tools: [{
    name: "get_weather",
    description: "날씨 조회",
    inputSchema: {
      type: "object",
      properties: {
        city: { type: "string" }
      },
      required: ["city"]
    }
  }]
}));

server.setRequestHandler("tools/call", async (request) => {
  if (request.params.name === "get_weather") {
    return {
      content: [{ type: "text", text: "맑음 15°C" }]
    };
  }
});

server.connect(new StdioServerTransport());

등록:

claude mcp add my-weather -- node weather-server.js

 

6. MCP 실전 워크플로우

개발 자동화

  1. GitHub 이슈 조회
  2. 코드 수정
  3. 커밋 및 PR 생성

문서 자동화

  • 코드 분석
  • 문서 생성
  • Notion 저장

데이터 분석

  • DB 조회
  • 통계 분석
  • 인사이트 도출

7. 보안 체크리스트

  • 신뢰할 수 있는 서버만 사용
  • API 키 환경 변수 관리
  • DB 읽기 전용 설정

잘못된 예시

claude mcp add db --password=secret

올바른 방식

export DB_PASSWORD="secret"

 

8. 자주 쓰는 MCP 서버

서버용도

GitHub 코드 관리
Notion 문서
PostgreSQL DB
Filesystem 파일
Brave Search 검색
Puppeteer 웹 자동화
Slack 메시지
Google Drive 파일

 

정리

  • MCP는 Claude를 외부 시스템과 연결하는 표준 프로토콜
  • 표준화된 연동으로 확장성과 재사용성이 높다
  • GitHub, Notion, DB 등 다양한 시스템과 통합 가능
  • 커스텀 서버로 사내 시스템도 연결 가능
  • 보안 관리가 매우 중요

참고 링크

반응형