MCP — 외부 도구를 꽂는 콘센트
MCP(Model Context Protocol)는 검색·시세·문서 같은 외부 도구와 자료를 클로드에 이어 주는 표준 연결 규격입니다. 이름은 “모델에 맥락을 이어 주는 규격”이라는 뜻입니다. 어느 나라 가전이든 규격만 맞으면 콘센트에 꽂아 쓰듯, 규격에 맞는 도구는 무엇이든 연결할 수 있습니다. 연결하고 나면 클로드가 그 도구를 스스로 씁니다. 우리가 도구 사용법을 배울 필요는 없습니다.
연결이 필요한 신호는 단순합니다. 다른 프로그램의 내용을 입력창으로 자꾸 복사해 붙여 넣고 있다면, 그 도구를 MCP로 연결할 때입니다. 그러면 클로드는 내가 붙여 넣은 조각이 아니라 실제 시스템을 직접 보고 일합니다. 실제 연결은 MCP 서버라는 작은 프로그램이 맡습니다. 특정 도구로 통하는 창구라고 생각하면 됩니다. 우리 회사도 주식 시세 조회·기업 공시 확인·브라우저 조작 같은 일을 전부 MCP 서버를 연결해 처리합니다. 왜 이 기능이 필요한지, 모르는 것을 지어내지 않게 하려면 왜 실제 자료에 이어 줘야 하는지는 「AI는 왜 태연히 틀린 답을 할까요」 페이지에서 설명합니다.
연결 — 두 가지 방법
- 클로드 앱 — 설정 → 커넥터 메뉴에서 연결합니다(따라 하기 0편의 Context7을 이 방법으로 연결했습니다).
- 클로드 코드 — 말로 합니다.
# 클로드 코드 입력창에 이 일에 쓸 만한 MCP를 찾아 줘 # 후보를 보고 나서 이걸로 연결해 줘
연결 상태는 /mcp로 확인합니다. 무엇이 연결되어 있고 연결이 제대로 됐는지 한눈에 보여 줍니다.
/mcp 화면(실제 화면·우리 회사 연결 상태) — 연결된 도구마다 ✔ 연결 여부와 도구 수가 보입니다.서버의 두 종류 — 원격과 로컬
MCP 서버는 크게 두 종류입니다. 어느 쪽인지에 따라 연결하는 방식이 조금 달라집니다.
| 종류 | 어떤 서버인가 | 언제 쓰나 |
|---|---|---|
| 원격 서버 | 어떤 서버인가인터넷 주소(URL)만 있으면 접속되는, 업체가 운영하는 서버 | 언제 쓰나깃허브·노션 같은 클라우드 서비스 |
| 로컬 서버 | 어떤 서버인가내 컴퓨터에서 프로그램으로 직접 실행되는 서버 | 언제 쓰나내 컴퓨터의 브라우저·파일·데이터베이스를 다룰 때 |
원격 서버는 인터넷 주소로 주고받는 방식(HTTP)이 표준이라 내 컴퓨터에 설치할 것이 없고, 주소만 알면 바로 연결됩니다. 로컬 서버는 클로드 코드가 내 컴퓨터에서 그 프로그램을 대신 켜 주는 방식입니다.
연결 관리 — 추가하고, 확인하고, 정리하기
가장 쉬운 방법은 역시 말로 시키는 것입니다. “이 서버를 연결해 줘”라고 하면 클로드가 아래 명령을 대신 실행합니다. 직접 하고 싶다면 입력창 안이 아니라 터미널에서 입력합니다.
# 터미널에서 — 원격(HTTP) 서버 등록
claude mcp add --transport http claude-code-docs https://code.claude.com/docs/mcp명령을 풀어 보면 이렇습니다. claude mcp add가 “서버를 등록하라”는 뜻이고, --transport http는 인터넷 주소로 접속하는 원격 서버라는 표시입니다. claude-code-docs는 내가 붙이는 이름입니다. 아무 이름이나 써도 되고, 나중에 이 이름으로 서버를 가리킵니다. 마지막이 서버가 있는 주소입니다.
브라우저 조작처럼 내 컴퓨터 자원이 필요한 로컬 서버는 등록 명령의 모양이 조금 다릅니다.
# 터미널에서 — 로컬 서버 등록 (브라우저 조작 도구 예)
claude mcp add playwright -- npx -y @playwright/mcp@latest다른 점은 두 가지입니다. 첫째, --transport가 없습니다. 로컬 서버가 쓰는 방식이 기본값(stdio)이라 적지 않아도 됩니다. 둘째, --(대시 두 개) 뒤는 클로드 코드가 서버를 켜기 위해 실행하는 명령입니다. 이 대시 두 개는 클로드 코드 자신의 옵션과 서버를 켜는 명령을 갈라 주는 구분선입니다. 빠뜨리면 안 됩니다.
추가했으면 상태를 확인합니다.
# 터미널에서 — 등록된 서버 전체 목록과 상태
claude mcp list- ✓ Connected — 준비 완료입니다.
- ! Needs authentication — 로그인이 더 필요합니다. 아래 「로그인 확인 단계」 항목에서 다룹니다.
- ✗ Failed to connect — 연결에 실패했습니다.
서버의 도구를 처음 쓸 때 클로드 코드는 써도 되는지 한 번 묻습니다. 허용하면 그다음부터 그 도구를 씁니다. 그리고 더 쓰지 않을 서버는 지웁니다.
# 특정 서버의 자세한 설정 보기 claude mcp get github # 서버 지우기 claude mcp remove github
/mcp 목록을 열어 보고 쓰지 않는 것은 정리하는 편이 좋습니다.
어디에 저장될까요 — 범위 세 가지
서버를 추가하면 그 설정이 어딘가에 저장됩니다. 이 설정이 어디까지 미치는지를 범위(scope)라고 부릅니다. 범위에 따라 저장되는 파일도 달라집니다. 범위를 어떻게 정하느냐에 따라 어느 프로젝트에서 켜지는지, 팀과 공유되는지가 갈립니다.
| 범위 | 어디서 켜지나 | 공유 | 저장 위치 |
|---|---|---|---|
local(기본값) | 어디서 켜지나지금 이 프로젝트에서만 | 공유나만 | 저장 위치~/.claude.json |
project | 어디서 켜지나지금 이 프로젝트에서만 | 공유팀과 공유 | 저장 위치프로젝트 폴더의 .mcp.json |
user | 어디서 켜지나내 모든 프로젝트에서 | 공유나만 | 저장 위치~/.claude.json |
따로 정하지 않으면 local입니다. 어느 폴더에서 열어도 늘 쓰고 싶은 서버는 user 범위로 추가합니다.
# 터미널에서 — 모든 프로젝트에서 쓰도록 user 범위로 등록
claude mcp add --scope user --transport http claude-code-docs https://code.claude.com/docs/mcpproject 범위(--scope project)로 추가하면 프로젝트 폴더에 .mcp.json 파일이 만들어집니다. 이 폴더를 함께 쓰는 사람은 승인만 하면 같은 서버가 똑같이 연결됩니다. 안전을 위해 project 범위 서버는 처음 쓸 때 승인 여부를 한 번 묻습니다. 내려받은 폴더가 내 컴퓨터에서 함부로 프로그램을 켜지 못하게 막는 장치입니다.
로그인 확인 단계 — 여기서 막히는 것이 정상입니다
연결하면 브라우저가 열려 로그인·승인(인증)을 요구하는 경우가 많습니다. 그 도구의 계정으로 로그인해 승인하면 끝입니다. 처음이면 당황하기 쉬운 지점인데, 여기서 한 번 멈추는 것이 정상 절차입니다.
센트리·노션처럼 계정이 있는 클라우드 서비스는 추가한 직후 claude mcp list에 ! Needs authentication이 뜹니다. 이때는 클로드 코드 안에서 /mcp를 실행하고, 목록에서 그 서버를 골라 로그인을 선택하면 브라우저가 열립니다. 승인하면 상태가 연결됨으로 바뀝니다. 한 번 로그인해 두면 그 로그인 정보가 안전하게 저장되고 자동으로 갱신되니, 매번 다시 로그인할 필요는 없습니다. 한편 깃허브처럼 브라우저 로그인 대신 토큰을 직접 건네는 서버도 있습니다. 여기서 토큰은 로그인을 대신하는 긴 비밀 문자열입니다. AI가 글을 세는 단위인 토큰과는 다른 말입니다. 이때는 서버를 추가할 때 --header "Authorization: Bearer <토큰>" 형식으로 토큰을 함께 넣습니다.
# 터미널에서 바로 로그인할 때 (sentry 자리에 서버 이름)
claude mcp login sentry로그인은 연결하는 순간에만 하는 것이 아닙니다. 클로드가 도구를 쓰는 도중에 그 서비스가 로그인처럼 브라우저에서 해야 할 일을 요청하면, 클로드 코드가 그 일을 할 주소를 브라우저로 열지 묻습니다. 일을 마쳤는지 서비스가 스스로 알려 주지 못하는 경우에는 클로드 코드가 기다리니, 브라우저에서 할 일을 끝낸 뒤 화면에서 I'm done, continue를 고르면 이어서 진행합니다. 도구를 쓰다가 서비스가 권한을 더 달라고 하면 다시 로그인할지 묻는 안내가 뜹니다. 그때 다시 로그인해 승인하면 되고, 그냥 넘겼다면 /mcp에서 그 서버를 골라 다시 로그인합니다.
npx), 등록할 때 주소나 이름을 한 글자 잘못 적었거나, 원격 서버의 로그인이 만료된 것입니다. 인증만 남았다면 ! Needs authentication으로 뜨니, ✗는 그보다 앞 단계에서 막혔다는 뜻입니다. 쓰던 도중에 원격 서버의 연결이 끊긴 경우도 있습니다. 그러면 클로드 코드가 몇 차례 저절로 다시 이어 보고, 끝내 안 되면 “… disconnected · open /mcp to reconnect(연결이 끊김 · /mcp를 열어 다시 연결)”라는 알림을 띄웁니다.지금 해 볼 것 — 터미널에서
claude mcp list를 실행해 실패한 줄을 통째로 복사하고, 클로드 입력창에 붙여 넣으며 “이 서버가 왜 연결에 실패하는지 확인하고 고쳐 줘”라고 시키십시오. 지웠다가 다시 추가하기 전에 claude mcp get 서버이름으로 등록된 내용을 먼저 보는 편이 빠릅니다. 연결이 끊겼다는 이 알림을 봤다면 /mcp에서 그 서버를 다시 연결합니다. 여러 서버를 손본 뒤라면 클로드 코드 입력창에 /mcp reconnect all을 치십시오. 연결에 실패했거나 로그인을 기다리는 서버를 한꺼번에 다시 연결해 봅니다.그래도 안 되면 — 당장 그 도구가 없어도 되는 일이라면
claude mcp remove 서버이름으로 지우고 하던 일을 이어 가십시오. 하나에 붙들려 멈추는 것이 더 손해입니다. 연결 문제가 아닌 것 같으면 「이럴 때는?」 페이지에서 같은 증상을 찾아보십시오.
자료를 대화로 끌어오기 — @ 참조와 서버가 더해 주는 명령어
서버 중에는 도구뿐 아니라 문서나 데이터 같은 자료(리소스)를 내주는 것도 있습니다. 파일을 @로 불러오듯 이런 자료도 @로 대화에 끌어옵니다. 입력창에서 @를 치면 연결된 서버들이 내주는 자료가 자동완성 목록에 함께 뜹니다.
# 클로드 코드 입력창에 — 깃허브 이슈 123번을 불러와 분석
@github:issue://123 을 분석하고 고칠 방법을 제안해 줘자주 쓰는 작업을 미리 만든 명령으로 내주는 서버도 있습니다. 입력창에서 /를 치면 /mcp__서버이름__프롬프트이름 형식으로 목록에 나타나고, 값이 필요하면 명령 뒤에 한 칸 띄우고 적습니다.
# 인자 없이 실행 /mcp__github__list_prs # PR 번호를 넘겨 실행 /mcp__github__pr_review 456
이렇게 더해진 명령어는 /를 입력했을 때 나오는 같은 목록에 기본 명령어·직접 만든 명령어와 나란히 표시됩니다. 도구를 연결할수록 쓸 수 있는 슬래시 명령어도 함께 늘어납니다. 슬래시 명령어 자체가 낯설다면 슬래시 명령어 페이지를 먼저 보시면 됩니다.
이런 형식을 외울 필요는 없습니다. 서버가 연결되어 있으면 평소처럼 말로 시키기만 해도 클로드가 알맞은 도구를 스스로 골라 씁니다. 답변에는 어떤 서버의 어떤 도구를 썼는지 이름표가 붙어, 그 답이 클로드의 기억이 아니라 실제 도구에서 나왔음을 확인할 수 있습니다.
안전 — 연결은 권한을 주는 일입니다
MCP의 편리함에는 대가가 있습니다. 특히 외부 내용을 가져오는 서버는 프롬프트 인젝션(prompt injection) 위험이 있습니다. 겉보기엔 평범한 문서나 웹 페이지 안에 “이렇게 행동하라”는 숨은 지시를 섞어 두는 수법입니다. 클로드가 원래 받은 지시 대신 그쪽 뜻대로 움직이도록 속이는 것입니다. 손님인 척 들어와 집주인 행세를 하려는 시도라고 보면 됩니다.
앤트로픽은 개별 MCP 서버를 보안 감사하거나 직접 관리하지 않습니다. 공개 목록(디렉터리)에 올리기 전에 등재 기준에 맞는지 살펴보기는 합니다. 그러나 어떤 서버를 골라 믿을지는 결국 사용자가 판단할 몫입니다. 그래서 믿을 수 있는 제공자의 서버만 연결하고, 출처가 불확실한 서버는 연결하지 않는 것이 안전합니다.
클로드 코드 쪽에도 안전장치가 있습니다. 새로 연결하는 MCP 서버는 “이곳을 믿습니까”라는 신뢰 확인을 한 번 거치고, 서버의 도구를 처음 쓸 때도 허락을 구합니다. 이 물음이 나올 때 무엇을 허용하는지 한 번 읽어 보는 습관이 마지막 안전벨트입니다.