Claude Code는 로컬 파일과 터미널만 다룰 수 있어요. 외부 API, 데이터베이스, 사내 시스템에 접근하려면 MCP 서버가 필요해요. 이 글에서는 MCP 서버의 개념부터 설정, 실시간 조회, 백그라운드 전환까지 실전 흐름을 정리했어요.
📌 3줄 요약
- MCP 서버는 Claude Code와 외부 서비스를 연결하는 플러그인이에요.
.claude/settings.json에 서버 정보를 추가하면 바로 사용할 수 있어요.- 2분 초과 호출은 자동으로 백그라운드 전환되어 다른 작업을 병행할 수 있어요.
📑 목차
MCP 서버가 필요한 이유
Claude Code는 기본적으로 로컬 파일과 터미널 명령만 다룰 수 있어요. 날씨 API, 데이터베이스, 사내 시스템처럼 외부 데이터가 필요한 순간에는 별도 연결이 필요해요. 코딩을 하다 보면 로컬 환경만으로 해결되지 않는 작업이 생각보다 많아요. 특히 실시간 데이터를 확인하면서 코드를 수정해야 할 때, 브라우저와 터미널을 번갈아 쓰는 것은 집중력을 크게 떨어뜨려요.
🔍 MCP란?
이 문제를 해결하는 것이 MCP(Model Context Protocol) 서버예요. MCP 서버는 Claude Code와 외부 서비스 사이에서 통역사 역할을 해요. 쉽게 비유하면, Claude Code가 혼자서는 읽을 수 없는 외국어 메뉴판을 MCP 서버가 번역해 주는 구조예요. MCP라는 이름이 어렵게 느껴질 수 있지만, 실제로는 "외부 서비스와 대화할 수 있게 해주는 플러그인" 정도로 이해하면 충분해요. MCP 서버 하나를 연결하면 그 서버가 제공하는 도구(tool)들을 Claude Code 안에서 바로 호출할 수 있어요.
예를 들어 GitHub MCP 서버를 연결하면 이슈 목록 조회, PR 생성 같은 작업을 대화만으로 처리할 수 있어요. 데이터베이스 MCP 서버를 연결하면 SQL 쿼리 결과를 터미널에서 바로 확인할 수 있어요. Slack MCP 서버를 연결하면 특정 채널의 메시지를 조회하거나 알림을 보내는 것도 가능해요. 이처럼 MCP 서버의 종류에 따라 Claude Code가 접근할 수 있는 외부 서비스의 범위가 넓어져요.
💬 제가 직접 써보니, MCP 서버 없이 외부 데이터를 다루려면 매번 브라우저와 터미널을 오가야 했어요. MCP 연결 후에는 "최근 이슈 보여줘"처럼 말만 하면 되니 작업 흐름이 끊기지 않는 점이 가장 큰 장점이었어요. 한번 설정해 두면 프로젝트를 열 때마다 자동으로 연결되기 때문에 반복 설정 부담도 없었어요.
Claude Code에 MCP 서버 연결하는 설정법
MCP 서버 설정은 .claude/settings.json 파일 하나로 끝나요. 프로젝트 루트에 .claude 폴더가 없으면 먼저 만들어 주세요. 이 폴더는 Claude Code의 프로젝트별 설정을 저장하는 공간이에요.
설정 파일 안에 mcpServers 항목을 추가해요. 각 서버마다 command, args, env 세 가지 필드를 지정하면 돼요. command는 MCP 서버를 실행할 명령어, args는 실행에 필요한 인자, env는 API 키 같은 환경 변수예요.
설정 파일에 서버 정보 추가하기
| 필드 | 설명 | 예시 |
|---|---|---|
command |
MCP 서버 실행 명령어 | npx |
args |
실행 인자 배열 | ["-y", "@modelcontextprotocol/server-github"] |
env |
환경 변수 (API 키 등) | {"GITHUB_TOKEN": "ghp_xxx"} |
설정 파일 예시
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "ghp_xxxxxxxxxxxx"
}
}
}
}
위 예시는 GitHub MCP 서버를 연결하는 설정이에요. npx를 사용하기 때문에 별도로 패키지를 설치하지 않아도 바로 실행할 수 있어요. -y 플래그는 설치 확인 프롬프트를 자동으로 승인하는 옵션이에요. 처음 실행할 때 패키지 다운로드가 진행되므로 인터넷 연결이 필요하다는 점도 기억해 주세요.

재시작 후 연결 확인
설정을 저장한 뒤 Claude Code를 재시작하면 자동으로 MCP 서버에 연결돼요. 연결이 성공하면 Claude Code가 사용할 수 있는 도구 목록에 MCP 서버의 도구들이 추가돼요. 시작 시 터미널에 "MCP server connected" 같은 메시지가 표시되면 정상적으로 연결된 거예요.
여러 서버 동시 연결
여러 MCP 서버를 동시에 연결하는 것도 가능해요. mcpServers 안에 서버 이름을 키로 하여 여러 항목을 나란히 추가하면 돼요. 예를 들어 GitHub, 데이터베이스, Slack 서버를 동시에 연결해서 하나의 대화 안에서 세 가지 서비스를 모두 활용할 수 있어요.
⚠️ 주의: API 토큰 보안
API 토큰을 settings.json에 직접 넣으면 Git에 커밋될 위험이 있어요. 민감한 값은 시스템 환경 변수로 설정하고 "GITHUB_TOKEN": "$GITHUB_TOKEN" 형태로 참조하는 것이 안전해요. Windows에서는 시스템 환경 변수 설정 후 터미널을 재시작해야 반영된다는 점도 확인해 주세요.
💬 제가 처음 설정할 때 토큰을 그대로 넣었다가 커밋 직전에 발견한 적이 있어요. 환경 변수 방식이 한 단계 더 번거롭지만, 보안 사고를 예방하려면 처음부터 이 방식을 쓰는 것을 권장해요. .gitignore에 .claude/settings.local.json을 추가하는 방법도 있으니 본인에게 편한 방식을 선택하면 돼요.
MCP 도구로 실시간 데이터 조회하기
MCP 서버가 연결되면 Claude Code 대화창에서 바로 외부 데이터를 요청할 수 있어요. 별도의 명령어를 외울 필요 없이 자연어로 질문하면 돼요. 이 점이 기존 CLI 도구와 가장 다른 부분이에요. API 엔드포인트나 파라미터를 직접 입력하지 않아도 Claude Code가 적절한 MCP 도구를 골라서 호출해 줘요.
예를 들어 GitHub MCP 서버가 연결된 상태에서 "이 저장소의 열린 이슈 목록을 보여줘"라고 입력해요. Claude Code가 MCP 서버의 list_issues 도구를 자동으로 호출하여 결과를 보여줘요. "최근 일주일간 머지된 PR을 알려줘"처럼 조건을 붙여도 알아서 필터링해서 결과를 정리해 줘요. 결과는 터미널에 읽기 쉬운 형태로 정리되어 출력되기 때문에 별도의 후처리가 필요 없어요.

🔍 MCP 도구 승인 시스템
처음 MCP 도구가 호출될 때는 사용자 승인 프롬프트가 나타나요. 이는 Claude Code의 권한 관리 시스템으로, 의도하지 않은 외부 호출을 막아 줘요. 승인 없이 외부 서비스에 접근하는 것을 원천 차단하기 때문에 보안 측면에서 안심할 수 있어요.
승인 옵션은 세 가지예요. "이번만 허용", "이 세션 동안 허용", "항상 허용" 중에서 선택할 수 있어요.
💡 승인 설정 팁
자주 쓰는 읽기 전용 도구는 "항상 허용"으로 설정하면 매번 승인할 필요가 없어서 편리해요. 반면 데이터를 변경하는 도구는 신중하게 "이번만 허용"을 선택하는 것이 안전해요.
현재 연결된 MCP 서버와 사용 가능한 도구 목록은 /mcp 명령어로 확인해요. 서버 연결 상태가 connected로 표시되면 정상이에요. 만약 disconnected로 나온다면 설정 파일의 오타를 확인하거나 Claude Code를 재시작해 보세요.

데이터를 단순 조회하는 것뿐 아니라, MCP 서버가 쓰기 도구를 제공한다면 데이터 수정도 가능해요. 다만 쓰기 작업은 되돌리기 어려우므로 승인 설정을 "이번만 허용"으로 유지하는 것을 추천해요.
💬 제가 직접 테스트해 보니, 읽기 전용 도구는 "항상 허용"으로 설정해도 문제가 없었어요. 반면 PR 생성이나 이슈 닫기 같은 쓰기 도구는 매번 확인하는 쪽이 실수를 줄여 주었어요. 한 번은 의도하지 않은 이슈를 닫을 뻔한 적이 있어서, 쓰기 도구의 승인 단계는 꼭 유지하는 것이 좋아요.
2분 초과 호출과 백그라운드 전환 활용법
MCP 서버 호출이 2분을 넘기면 Claude Code가 자동으로 백그라운드 실행으로 전환해요. 대용량 데이터 조회나 느린 외부 API를 호출할 때 터미널이 멈추지 않도록 하는 안전장치예요. 이 기능 덕분에 오래 걸리는 작업을 실행해도 Claude Code를 계속 사용할 수 있어요. 2분이라는 기준은 Claude Code가 내부적으로 정해둔 값이므로 사용자가 변경할 수는 없어요.
백그라운드로 전환되면 화면에 안내 메시지가 표시돼요. 이 상태에서 다른 질문을 하거나 파일 편집 같은 작업을 이어서 할 수 있어요. 마치 브라우저에서 탭을 여러 개 띄워놓고 작업하는 것과 비슷한 개념이에요. 백그라운드 작업이 진행 중이라는 표시가 남아 있으므로 잊어버릴 걱정도 없어요.


백그라운드 작업이 완료되면 Claude Code가 알림을 보내줘요. 결과를 확인하고 싶을 때 별도로 폴링하거나 기다릴 필요가 없어요. 완료 알림과 함께 결과가 자동으로 대화에 표시되기 때문에 자연스럽게 이어서 작업할 수 있어요.
이 기능이 유용한 대표적인 상황은 세 가지예요.
| 상황 | 설명 |
|---|---|
| 대규모 데이터베이스 쿼리 | 수만 건의 로그 데이터를 조회할 때 3~5분 소요 가능 |
| 느린 서드파티 API 응답 | 외부 서비스 응답 속도에 따라 지연 발생 |
| 여러 페이지 순회 크롤링 | 페이지네이션 데이터 수집 시 대기 시간 발생 |
이런 상황에서 터미널이 멈춰버리면 아무것도 할 수 없지만, 백그라운드 전환 덕분에 다른 코드 작업을 병행할 수 있어요.
⚠️ 알아두세요
의도적으로 긴 작업을 실행하려면 처음부터 run_in_background 옵션을 사용할 수도 있어요. 다만 MCP 도구 자체에는 이 옵션이 없으므로, 2분 자동 전환에 의존하는 구조라는 점을 기억해야 해요. 향후 MCP 프로토콜이 업데이트되면 도구 단위로 백그라운드 실행을 지정하는 기능이 추가될 수도 있어요.
💬 제가 느린 API를 호출하는 MCP 서버를 테스트했을 때, 약 2분 10초 지점에서 자동 전환이 발생했어요. 전환 후에도 결과는 정상적으로 돌아왔고, 대기 시간 동안 다른 작업을 병행할 수 있어서 효율적이었어요. 처음에는 백그라운드로 넘어가면 결과가 유실될까 걱정했지만, 실제로는 한 번도 그런 문제가 발생하지 않았어요. 오래 걸리는 외부 조회가 예상된다면 오히려 자동 전환을 믿고 편하게 작업을 시작하는 것이 좋아요.
✍️ 마치며
MCP 서버는 Claude Code의 활용 범위를 로컬 환경 너머로 확장하는 핵심 기능이에요. .claude/settings.json에 서버 정보만 추가하면 외부 API, 데이터베이스, 협업 도구까지 자연어 한 줄로 접근할 수 있어요. 보안을 위해 API 토큰은 환경 변수로 관리하고, 쓰기 도구의 승인 단계는 반드시 유지하세요. 오래 걸리는 호출은 2분 자동 백그라운드 전환을 믿고 편하게 활용하면 돼요.
'Claude Code 시작하기' 카테고리의 다른 글
| Claude Code 플랜 모드로 작업 설계 후 안전하게 실행하기 (0) | 2026.07.25 |
|---|---|
| Claude Code 서브에이전트로 병렬 작업 시작하기 (0) | 2026.07.23 |
| 서브에이전트 병렬 실행으로 조사 시간 절반 줄이기 (0) | 2026.07.22 |
| Claude Code MCP로 노션·구글 시트 연결하는 가장 쉬운 방법 (0) | 2026.07.21 |
| Claude Code 메모리 기능, AI가 내 프로젝트를 기억하게 만드는 법 (0) | 2026.07.21 |