나라장터 입찰정보를 Claude에서 조회하기 — 조달청 API MCP 연동
조달청 나라장터 입찰 공고를 Claude에서 자연어로 조회하는 MCP 연동법. 공공데이터포털 키 발급부터 uvx 실행, claude_desktop_config.json 설정, 인증·트래픽 오류 해결까지 입찰 담당자 관점으로 정리합니다.
조달청 나라장터 입찰 공고를 매일 사이트에서 손으로 검색하는 대신, Claude에게 “이번 주 마감되는 IT 용역 공고만 표로 정리해줘”라고 물어보면 어떨까요. 나라장터 API를 MCP로 연결하면 가능합니다. 이 가이드는 공공데이터포털에서 인증키를 발급받아 Claude Desktop에 나라장터 API를 연결하고, 실제 입찰 공고를 조회하기까지의 전 과정을 입찰 담당자 관점에서 단계별로 정리합니다. 별도 서버를 구축할 필요 없이 uvx 명령 하나로 시작합니다.
이 가이드로 할 수 있는 일
설정을 마치면 Claude 채팅창에서 다음을 자연어로 요청할 수 있습니다.
- 특정 키워드(예: “클라우드”, “AI”, “보안”)가 포함된 입찰 공고만 추려 표로 정리
- 발주 기관·업종 코드 기준으로 최근 공고·낙찰 현황 비교
- 마감일 기준 D-7 이내 긴급 공고 필터링
- 예산 규모 이상의 공고만 요약
연간 200조 원 규모의 공고가 오가는 나라장터에서, 조건에 맞는 건을 빠르게 추리는 반복 업무를 Claude가 대신 처리합니다.
동작 원리
MCP(Model Context Protocol)는 Claude 같은 AI 클라이언트가 외부 API와 표준 방식으로 통신하도록 Anthropic이 정의한 개방형 프로토콜입니다. 나라장터 API를 MCP 서버로 감싸면, Claude가 직접 API를 호출하고 받은 JSON을 자연어·표로 가공해 돌려줍니다.
사용자(Claude Desktop)
│ "이번 달 IT 용역 입찰 공고 요약해줘"
▼
Claude (LLM)
│ 도구 호출 요청
▼
data-go-mcp-servers (MCP 서버)
│ HTTP 요청 (API 키 포함)
▼
조달청 나라장터 API (data.go.kr)
│ JSON 응답
▼
Claude (결과 가공)
│ 표·요약으로 답변
▼
사용자(Claude Desktop)
핵심은 사용자가 API 파라미터나 응답 구조를 몰라도, 조건을 자연어로 말하면 MCP 서버가 나라장터 API로 변환해 호출한다는 점입니다.
준비물
| 항목 | 설명 | 필수 여부 |
|---|---|---|
| Claude Desktop | Anthropic 공식 데스크톱 앱 | 필수 |
| Python 3.10 이상 + uv | uvx 실행 환경 | 필수 |
| 공공데이터포털 계정 | data.go.kr 가입 | 필수 |
| 나라장터 API 인증키 | 포털에서 활용 신청 후 발급 | 필수 |
Claude Code 사용자도 동일한 MCP 등록 방식을 씁니다. 터미널 환경 설정은 Claude Code MCP 설정 가이드를 함께 참고하세요.
단계별 연동 방법
1단계 — 공공데이터포털에서 나라장터 API 활용 신청
- 공공데이터포털(data.go.kr)에 접속해 회원가입 또는 로그인합니다.
- 상단 검색창에 “나라장터” 또는 **“조달청”**을 입력합니다.
- 원하는 데이터셋(예: 조달청 나라장터 입찰공고정보 서비스)을 선택하고 활용 신청 버튼을 클릭합니다.
- 신청 완료 후 마이페이지 → 개발계정 메뉴에서 발급된 **일반 인증키(Decoding)**를 복사해 둡니다.
승인은 대부분 즉시~1 영업일 내 자동으로 완료됩니다. 승인 메일이 도착하면 키를 사용할 수 있습니다.
나라장터 데이터는 입찰공고·개찰결과·계약현황 등 서비스별로 나뉘어 있습니다. 필요한 업무에 맞는 데이터셋을 골라 신청하세요. 여러 서비스가 필요하면 각각 활용 신청해야 합니다.
2단계 — uv 설치 확인
uvx 명령을 쓰려면 uv가 설치되어 있어야 합니다.
# uv 설치 여부 확인
uv --version
# 미설치 시 설치 (macOS/Linux)
curl -LsSf https://astral.sh/uv/install.sh | sh
3단계 — MCP 서버 동작 확인 (선택)
설정 전에 서버가 정상 실행되는지 먼저 확인하려면 아래 명령을 터미널에서 실행합니다. 나라장터를 포함한 한국 공공 API를 모아 제공하는 저장소는 GitHub(Koomook/data-go-mcp-servers)에서 확인할 수 있습니다.
uvx data-go-mcp.nps-business-enrollment@latest --help
위 명령은 서버 모음이 정상적으로 받아져 실행되는지 확인하기 위한 동작 점검 예시입니다. 실제로 어떤 서비스 모듈로 나라장터 데이터를 연결할지는 저장소 README의 지원 API 목록을 확인하세요. 이 모음은 나라장터 외에도 국민연금·국세청·금융감독원 등 여러 공공 API를 함께 지원합니다.
4단계 — Claude Desktop 설정 파일에 MCP 서버 등록
Claude Desktop의 MCP 설정 파일을 엽니다.
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
파일이 없으면 새로 만들고, 아래와 같이 작성합니다. YOUR_API_KEY_HERE를 1단계에서 복사한 인증키로 교체하세요.
{
"mcpServers": {
"data-go-mcp": {
"command": "uvx",
"args": ["data-go-mcp.nps-business-enrollment@latest"],
"env": {
"DATA_GO_KR_API_KEY": "YOUR_API_KEY_HERE"
}
}
}
}
이미 다른 MCP 서버를 등록해 두었다면 mcpServers 객체 안에 "data-go-mcp" 항목만 추가하면 됩니다. args의 서비스 모듈명은 README에서 확인한 실제 나라장터 모듈로 맞춰 사용하세요.
5단계 — 재시작 및 연동 확인
- Claude Desktop을 완전히 종료한 뒤 다시 실행합니다.
- 채팅창 하단 도구 아이콘(망치 모양)에 MCP 서버 목록이 표시되는지 확인합니다.
- 아래 테스트 질문을 입력해 봅니다.
나라장터에서 이번 달 소프트웨어 개발 관련 입찰 공고를 조회해줘.
Claude가 MCP 서버를 통해 API를 호출하고 결과를 표로 정리해 주면 연동이 완료된 것입니다.
자주 발생하는 오류와 해결 방법
| 증상 | 원인 | 해결 방법 |
|---|---|---|
| ”MCP 서버를 찾을 수 없음” | uvx 미설치 또는 PATH 미등록 | uv --version으로 설치 확인 후 터미널 재시작 |
SERVICE_KEY_IS_NOT_REGISTERED_ERROR | API 키 오류 또는 승인 전 사용 | 마이페이지에서 키 재확인, 승인 완료 후 재시도 |
| 응답이 인코딩 깨짐 | Encoding/Decoding 키 혼용 | Decoding 인증키 사용 여부 확인 |
| JSON 파싱 오류 | 설정 파일 문법 오류 | JSON 유효성 검사 도구로 claude_desktop_config.json 확인(쉼표·따옴표 주의) |
| 일 트래픽 초과 | 무료 한도 소진 | 포털에서 한도 상향 신청 또는 다음 날 재시도 |
| 공고가 조회되지 않음 | 해당 서비스 미신청 또는 모듈 불일치 | 1단계에서 신청한 데이터셋과 args 모듈명이 맞는지 확인 |
연동 점검 체크리스트
설정이 막히면 아래 순서로 점검하면 원인을 빠르게 좁힐 수 있습니다.
uv --version이 정상 출력되는가- 공공데이터포털 마이페이지에서 활용 신청이 승인 완료 상태인가
claude_desktop_config.json이 유효한 JSON인가env의 키 이름이DATA_GO_KR_API_KEY이고 값이 Decoding 인증키인가- Claude Desktop을 완전히 종료 후 재시작했는가
- 도구 아이콘에 등록한 서버가 보이는가
함께 쓰면 좋은 공공데이터 MCP 서버
나라장터와 함께 다음 서버를 쓰면 조달 업무에 필요한 정보를 더 폭넓게 다룰 수 있습니다.
- 공공데이터포털 MCP 서버 모음: 나라장터 외 국민연금·국세청·금융감독원 등 여러 공공 API를 한곳에서 연결합니다. 입찰 참여 업체의 사업자 정보·재무 정보를 함께 확인할 때 유용합니다.
- 한국 부동산 MCP: 국토교통부 실거래가·청약 정보를 분석합니다. 부동산·시설 관련 조달 업무와 결합해 활용할 수 있습니다.
- 표준국어대사전 MCP 서버: 조달 문서·공문 작성 시 표준 표현을 Claude에서 바로 검색합니다.
전체 목록은 공공데이터 카테고리에서 확인하세요.
자주 묻는 질문
나라장터 API 키는 어떻게 발급받나요?
공공데이터포털(data.go.kr)에 회원가입한 뒤 “조달청 나라장터”로 검색해 원하는 데이터셋의 활용 신청을 클릭합니다. 심사 없이 즉시 또는 1~2 영업일 내 자동 승인되며, 마이페이지에서 발급된 일반 인증키(Encoding/Decoding)를 확인할 수 있습니다.
무료로 사용할 수 있나요?
공공데이터포털 API는 기본 무료입니다. 다만 일 트래픽 한도(일반적으로 1,000~10,000건)가 설정되어 있으며, 대량 조회가 필요하면 포털에서 한도 상향을 신청할 수 있습니다.
Encoding 키와 Decoding 키 중 무엇을 써야 하나요?
조달청 API는 URL 인코딩된 키(Encoding 인증키)와 디코딩된 키(Decoding 인증키)를 구분해 발급합니다. HTTP 요청을 직접 구성하는 경우 Decoding 인증키를, SDK·라이브러리를 쓰는 경우 Encoding 인증키를 사용하세요. MCP 서버 내부에서 처리하는 경우 서버 README의 안내를 따릅니다. 응답이 깨져 보인다면 대개 두 키를 혼용한 경우입니다.
Claude Code와 Claude Desktop 중 어디에 연결해야 하나요?
반복 자동화·스크립트 작업에는 Claude Code(터미널 환경)가, 대화형으로 입찰 공고를 탐색·요약·분석할 때는 Claude Desktop이 편리합니다. 두 클라이언트 모두 동일한 MCP 서버 등록 방식을 사용하므로 설정을 한 번 익히면 양쪽에 그대로 적용됩니다.
data-go-mcp-servers는 나라장터만 지원하나요?
아닙니다. 조달청 나라장터 외에도 국민연금공단 사업장 가입 API, 국세청 사업자등록 진위 확인 API, 금융감독원 기업재무정보 API 등 여러 공공 API를 모아 놓은 서버 모음입니다. 어떤 서비스 모듈을 등록할지는 저장소 README에서 확인하세요.
나라장터 외 다른 공공데이터 MCP 서버는 어디서 찾나요?
MCP모아의 공공데이터 카테고리에서 국내 공공 API와 연결되는 MCP 서버 목록을 볼 수 있습니다. 전체 서버는 /servers에서 검색·필터링할 수 있습니다.
다음 단계
연동을 완료했다면 Claude에게 입찰 공고 분석을 맡기고 업무 자동화를 시작해 보세요. 더 많은 한국 공공데이터 MCP 서버를 찾고 싶다면 공공데이터 카테고리를 둘러보고, 아직 등록되지 않은 서버가 있다면 서버 제출 페이지로 MCP모아에 기여해 주세요.