claudecode.to
문서 목록
MCP와 확장

MCP — 외부 도구 연결하기

Model Context Protocol이 무엇이고, Slack·GitHub·데이터베이스 같은 외부 시스템을 어떻게 붙이는지.

8분2026-07-10 갱신

MCP(Model Context Protocol)는 AI 도구가 외부 시스템에 연결되는 표준 규격입니다. USB-C가 기기마다 다른 충전 단자를 하나로 통일한 것과 같은 역할을 합니다.

왜 표준이 필요했나

MCP 이전에는 도구마다 연동을 따로 만들어야 했습니다. Slack 연동을 만들었어도 다른 AI 도구에서는 쓸 수 없었습니다.

MCP는 이 구조를 바꿉니다. 서버를 한 번 만들면 규격을 지키는 모든 클라이언트에서 쓸 수 있습니다.

구성 요소

이름역할
호스트사용자가 쓰는 애플리케이션 (Claude Code, 데스크톱 앱)
클라이언트호스트 안에서 서버 하나와 1:1로 연결되는 부분
서버실제 기능을 제공하는 프로그램 (GitHub, DB, 사내 API)

서버가 제공하는 것은 세 종류입니다.

  • 도구(Tools) — 실행할 수 있는 동작. "이슈 만들기", "쿼리 실행"
  • 리소스(Resources) — 읽을 수 있는 데이터. 문서, 로그, 스키마
  • 프롬프트(Prompts) — 재사용 가능한 지시 템플릿

연결하기

CLI로 추가하는 것이 가장 간단합니다.

claude mcp add github -- npx -y @modelcontextprotocol/server-github

연결 상태는 세션 안에서 확인합니다.

/mcp

스코프 선택

# 나만 (기본값)
claude mcp add my-server -- ...

# 이 프로젝트의 팀 전원 (.mcp.json에 기록, 커밋 대상)
claude mcp add --scope project my-server -- ...

팀 공용 서버는 project 스코프로 넣어 커밋하세요. 개인 계정이 필요한 서버는 각자 추가하는 편이 낫습니다.

인증

원격 서버는 대개 OAuth를 씁니다. 최초 연결 시 브라우저가 열리고, 인증이 끝나면 토큰이 로컬에 저장됩니다.

토큰을 설정 파일에 직접 적지 마세요. 특히 커밋되는 .mcp.json에 넣으면 그대로 유출됩니다. 환경 변수 참조를 쓰세요.

{
  "mcpServers": {
    "internal-api": {
      "command": "node",
      "args": ["./mcp/server.js"],
      "env": { "API_TOKEN": "${INTERNAL_API_TOKEN}" }
    }
  }
}

도구를 너무 많이 붙이지 마세요

서버를 연결하면 그 도구 정의가 컨텍스트를 차지합니다. 서버 10개를 붙이면 작업과 무관한 도구 설명이 수천 토큰씩 쌓입니다.

실제로 쓰는 것만 남기고, 특정 프로젝트에서만 필요한 서버는 그 프로젝트 스코프에 두세요.

직접 만들 때

사내 시스템을 붙이려면 서버를 직접 만들면 됩니다. 설계 시 지킬 것:

  • 도구 이름과 설명을 명확히 — 모델이 이걸 보고 선택합니다
  • 반환값을 작게 — 전체 덤프 대신 요약과 필요한 필드만
  • 파괴적 동작은 분리 — 읽기 도구와 쓰기 도구를 섞지 마세요
  • 오류 메시지를 친절하게 — 모델이 읽고 다음 시도를 결정합니다
MCP연동확장

팀에 Claude Code를 도입하려면 실제 코드베이스에 맞춘 설계가 필요합니다.

기업교육 · 도입 상담하기