# Naramarketmcp

> 나라장터(G2B) MCP 서버 — 공공조달 데이터 조회를 위한 15개 AI 도구 (FastMCP 2.0, Smithery 배포 지원)

- **Type:** MCP server
- **Install:** `agentstack add mcp-alphago2580-naramarketmcp`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [alphago2580](https://agentstack.voostack.com/s/alphago2580)
- **Installs:** 0
- **Category:** [Integrations](https://agentstack.voostack.com/c/integrations)
- **Latest version:** 1.14.1
- **License:** Apache-2.0
- **Upstream author:** [alphago2580](https://github.com/alphago2580)
- **Source:** https://github.com/alphago2580/naramarketmcp

## Install

```sh
agentstack add mcp-alphago2580-naramarketmcp
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# 나라장터 MCP 서버

한국 공공조달(G2B) 데이터를 MCP(Model Context Protocol)로 제공하는 FastMCP 2.0 서버입니다.

입찰공고, 낙찰정보, 계약정보, 조달통계, 물품목록, 종합쇼핑몰 등 나라장터의 주요 API를 AI 에이전트가 바로 사용할 수 있도록 통합했습니다.

## 아키텍처

```
┌─────────────────┐     MCP Protocol      ┌──────────────────────┐
│   AI Agent      │ ◄──(stdio/http/sse)──► │  naramarket-mcp      │
│ (Claude, etc.)  │                        │                      │
└─────────────────┘                        │  ┌────────────────┐  │
                                           │  │ MCP Tools (16) │  │
                                           │  │ Resources (3)  │  │
                                           │  │ Prompts (3)    │  │
                                           │  └───────┬────────┘  │
                                           │          │           │
                                           │  ┌───────▼────────┐  │
                                           │  │  API Clients   │  │
                                           │  │  (sync/async)  │  │
                                           │  └───────┬────────┘  │
                                           └──────────┼───────────┘
                                                      │
                                           ┌──────────▼───────────┐
                                           │  data.go.kr APIs     │
                                           │  (공공데이터포털)      │
                                           └──────────────────────┘
```

## MCP 도구

### 기본 도구 (3개)

| 도구 | 설명 |
|------|------|
| `crawl_list` | 나라장터 상품 목록 조회 |
| `get_detailed_attributes` | 상품 상세 속성 조회 |
| `server_info` | 서버 정보 및 사용 가능한 도구 목록 |

### 정부조달 API (4개)

| 도구 | 설명 | 지원 API |
|------|------|---------|
| `call_public_data_standard_api` | 공공데이터개방표준 API | 입찰공고, 낙찰정보, 계약정보 |
| `call_procurement_statistics_api` | 조달통계 API | 전체/기관별/기업별 조달 통계 (14개 오퍼레이션) |
| `call_product_list_api` | 물품목록 API | 물품분류, 품목 조회 (12개 오퍼레이션) |
| `call_shopping_mall_api` | 종합쇼핑몰 API | MAS 계약, 납품요구, 벤처나라 (9개 오퍼레이션) |

### AI 친화 간편 도구 (4개)

| 도구 | 설명 |
|------|------|
| `get_recent_bid_announcements` | 최근 입찰공고 조회 (기간 자동 계산) |
| `get_successful_bids_by_business_type` | 업무구분별 낙찰정보 (한글 → 코드 자동 변환) |
| `get_procurement_statistics_by_year` | 연도별 조달통계 |
| `search_shopping_mall_products` | 쇼핑몰 제품 검색 (제품명/업체명) |

### 탐색 도구 (4개)

| 도구 | 설명 |
|------|------|
| `get_all_api_services_info` | 전체 서비스 및 오퍼레이션 목록 |
| `get_api_operations` | 서비스별 세부 오퍼레이션 조회 |
| `call_api_with_pagination_support` | 페이징 지원 대량 데이터 탐색 |
| `get_data_exploration_guide` | 데이터 탐색 전략 가이드 |

### MCP 리소스 & 프롬프트

- **리소스**: API 파라미터 가이드, 값 예시, 검색 패턴
- **프롬프트**: 워크플로우 가이드, 파라미터 선택 가이드, 실전 쿼리 예제

## 시작하기

### 필수 요구사항

- Python 3.10+
- [공공데이터포털](https://www.data.go.kr/) API 서비스 키

### 설치

```bash
git clone https://github.com/alphago2580/naramarketmcp.git
cd naramarketmcp

# 환경 설정
cp .env.example .env
# .env에서 NARAMARKET_SERVICE_KEY 설정

# 의존성 설치
pip install -r requirements.txt
```

### 실행

```bash
# STDIO 모드 (MCP 클라이언트 연동)
python -m src.main

# HTTP 모드 (웹 서비스)
FASTMCP_TRANSPORT=http FASTMCP_PORT=8000 python -m src.main

# 패키지 설치 후 실행
pip install .
naramarket-mcp
```

### Docker

```bash
docker build -t naramarket-mcp .
docker run --rm -e NARAMARKET_SERVICE_KEY=your-key -p 8000:8000 naramarket-mcp
```

## 환경 변수

| 변수 | 필수 | 기본값 | 설명 |
|------|:---:|--------|------|
| `NARAMARKET_SERVICE_KEY` | ✅ | - | 공공데이터포털 API 키 |
| `FASTMCP_TRANSPORT` | - | `stdio` | 전송 모드 (`stdio`, `http`, `sse`) |
| `FASTMCP_HOST` | - | `127.0.0.1` | HTTP/SSE 바인딩 호스트 |
| `FASTMCP_PORT` | - | `8081` | HTTP/SSE 포트 |
| `LOG_LEVEL` | - | `INFO` | 로깅 레벨 |

## 프로젝트 구조

```
naramarketmcp/
├── src/
│   ├── main.py              # FastMCP 서버 진입점 (도구/리소스/프롬프트 등록)
│   ├── core/                # 핵심 모듈
│   │   ├── config.py        # 설정 관리
│   │   ├── models.py        # 데이터 모델
│   │   ├── client.py        # API 클라이언트
│   │   ├── async_client.py  # 비동기 클라이언트
│   │   └── utils.py         # 유틸리티
│   ├── api/                 # HTTP/REST 인터페이스
│   ├── services/            # 비즈니스 로직 (크롤러, 인증)
│   └── tools/               # MCP 도구 구현
│       ├── naramarket.py    # 기본 나라장터 도구
│       ├── enhanced_tools.py # 확장 API 도구
│       └── openapi_tools.py # G2B OpenAPI 도구
├── tests/                   # 테스트
├── deployments/             # 배포 설정 (docker-compose, nginx)
├── Dockerfile
├── smithery.yaml            # Smithery.ai 배포 설정
├── pyproject.toml
└── requirements.txt
```

## 개발

```bash
# 개발 의존성 설치
pip install .[dev]

# 테스트 실행
pytest tests/

# 타입 체크
mypy src/
```

## 기술 스택

- **FastMCP 2.0** — MCP 서버 프레임워크
- **Requests / Pandas** — API 호출 및 데이터 처리
- **Uvicorn / Starlette** — HTTP/SSE 서빙
- **Docker** — 컨테이너 배포
- **Smithery.ai** — 클라우드 MCP 호스팅

## 라이선스

Apache License 2.0 — [LICENSE](LICENSE) 참조

## Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [alphago2580](https://github.com/alphago2580)
- **Source:** [alphago2580/naramarketmcp](https://github.com/alphago2580/naramarketmcp)
- **License:** Apache-2.0

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v1.14.1 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** yes
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **1.14.1** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/mcp-alphago2580-naramarketmcp
- Seller: https://agentstack.voostack.com/s/alphago2580
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
