USB-C 케이블이 등장하기 전까지, 노트북마다 충전 포트가 다 달랐다. 어댑터 가방을 챙겨 다녀야 했고 새 기기를 살 때마다 케이블도 같이 사야 했다. 어느 시점부터 그게 사라졌다. 표준 하나가 자리를 잡으면 산업 전체의 비용이 한 번에 떨어지는 일이 일어난다. AI 에이전트 영역에서 지금 그 일이 진행 중이다. 이름은 MCP — Model Context Protocol.
숫자로 보면 더 분명해진다. SDK 누적 다운로드 9,700만 건. React가 npm 1억 건에 도달하는 데 3년이 걸렸는데 MCP는 16개월이었다. OpenAI, Google, Microsoft, AWS가 모두 채택했고 운영은 Linux Foundation으로 넘어갔다. “AI 인프라의 HTTP”라는 말이 더 이상 마케팅 멘트가 아닌 단계다.
그래서 정확히 뭘 하는 표준인가
MCP는 Anthropic이 2024년 말 오픈소스로 푼 인터페이스 규약이다. AI 모델이 외부 툴이나 데이터(파일시스템, DB, API, SaaS 서비스)에 접근하는 방법을 통일했다. 핵심 아이디어가 USB-C와 같다. 한 번 표준에 맞춰 만든 어댑터(MCP 서버)는 어떤 AI(MCP 클라이언트)에서도 그대로 동작한다.
구조 자체는 단순하다. 한쪽은 MCP 서버 — 특정 데이터나 툴을 AI가 쓸 수 있게 노출하는 작은 프로그램(GitHub 서버, Slack 서버, PostgreSQL 서버 같은 식). 다른 한쪽은 MCP 클라이언트 — 그 서버를 호출해 쓰는 AI 애플리케이션(Claude Code, Cursor, Claude Desktop). GitHub 위에 공개돼 있는 MCP 서버가 이미 1만 3천 개를 넘었다. Slack, Figma, Linear, Notion, Postgres, Google Drive — 자주 쓰는 거의 모든 서비스에 누군가가 이미 만들어 놨다.
Claude Code에서 5분 만에 붙여 보기
가장 쉬운 진입은 Claude Code다. 프로젝트 루트의 .claude/settings.json에 MCP 서버 정의를 추가한다.
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxx"
}
},
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres",
"postgresql://localhost/mydb"]
}
}
}
저장하고 Claude Code를 재시작하면 끝이다. 이제 자연어로 “내 GitHub 이슈 중 라벨이 bug인 것만 보여 줘”나 “users 테이블에서 최근 가입자 10명 뽑아줘”라고 시킬 수 있다. 코드 한 줄 안 써도 된다.
사내 시스템을 직접 노출하고 싶다면
유명 서비스는 이미 다 있지만, 진짜 효과가 큰 건 사내 전용 시스템을 MCP로 만드는 쪽이다. TypeScript SDK가 가장 손쉽다.
npm install @modelcontextprotocol/sdk
// my-mcp-server.ts
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
const server = new Server({ name: "my-server", version: "1.0.0" });
server.setRequestHandler("tools/list", async () => ({
tools: [{
name: "get_user_info",
description: "사용자 정보 조회",
inputSchema: {
type: "object",
properties: { userId: { type: "string" } }
}
}]
}));
server.setRequestHandler("tools/call", async (req) => {
if (req.params.name === "get_user_info") {
// 내부 API 호출 로직
return { content: [{ type: "text", text: JSON.stringify(userData) }] };
}
});
const transport = new StdioServerTransport();
await server.connect(transport);
이렇게 만든 서버를 settings.json에 등록하면 Claude Code가 즉시 그 도구를 인식한다. 사내 API에 추가 코드를 넣을 필요도 없다. MCP 서버가 wrapper 역할만 해 준다.
진짜 의미 — 한 번 만들면 모든 AI에서 동작
가장 큰 변화는 재활용성이다. 사내 시스템 위에 MCP 서버 하나를 올려 두면 그게 Claude뿐 아니라 ChatGPT, Cursor, 그리고 1년 뒤에 나올 새 에이전트에서도 그대로 동작한다. 특정 벤더에 종속되는 코드를 짤 필요가 사라진다는 뜻이다. 반대로 외부 서비스 쪽도 마찬가지다. Jira나 Confluence를 AI에게 읽히고 싶다면 직접 통합 코드를 짤 게 아니라 이미 공개된 MCP 서버를 그냥 가져다 꽂으면 된다.
지금 할 일
가장 빠른 진입은 github.com/modelcontextprotocol/servers에 들어가 공식 서버 목록을 한 번 훑는 것이다. 이미 본인이 자주 쓰는 서비스(GitHub, Notion, Slack 등)가 있을 가능성이 높다. 그중 하나를 골라 위 settings.json 예시처럼 Claude Code에 붙여 보고, 가장 자주 묻고 싶었던 질문을 한 번 던져 보자. 그 다음 단계는 사내 시스템 차례다. 회사 동료가 AI에게 가장 자주 묻는 정보가 무엇인지 떠올려 보고, 그걸 노출하는 작은 MCP 서버를 만들어 보면 사내 도입의 첫 사례가 된다.
관련 글
- Claude Code 처음 시작하는 법: 설치부터 실전까지 2026 완전 가이드
- Google Scion: 여러 AI 에이전트를 동시에 돌리는 멀티 에이전트 오케스트레이션
- 코딩 에이전트 샌드박스란 무엇인가: Freestyle로 보는 AI 개발 환경의 진화
