public-data-portal-mcp

public-data-portal-mcp

Enables querying and scanning Korean public procurement and bidding data from multiple agencies (e.g., 나라장터, 방위사업청) through MCP tools, with deduplication and filtering handled externally.

Category
访问服务器

README

public-data-portal-mcp

나라장터·방위사업청·수자원공사·한국마사회·한국지역정보개발원·한국남부발전·한국지역난방공사· NIA 등 공공데이터포털/D2B 계열 입찰·조달 정보를 감싸는 MCP 서버입니다.

it-bid-daily-scan 예정작업이 매일 curl로 직접 처리하던 14개 소스의 인증 헤더 quirk, JSON/XML 혼재, resultCode 불일치, 나라장터 4종 교차 중복제거 로직을 서버 쪽으로 옮겨서 제공합니다. 오탐 필터링과 "검토가치 있음" 판단처럼 주관적 판단이 필요한 부분은 서버가 하지 않고 원문 매칭 결과만 반환합니다 — 그 판단과 체크포인트/seen 파일 관리(상태 저장)는 호출하는 쪽(에이전트)의 몫입니다. 이 서버 자체는 상태를 갖지 않는 순수 조회 서버입니다.

배포

Endpoint: https://public-data-portal-mcp.vercel.app/api/mcp
연결 방식: Settings > Connectors > "+" > Add custom connector, URL 위와 동일, 인증 불필요
          (클라이언트는 별도 키를 넘길 필요 없음 — 서버가 환경변수로 자체 보유)

Vercel에 이 저장소를 Import한 뒤, 프로젝트 환경변수에 아래를 반드시 설정해야 합니다:

PUBLIC_DATA_PORTAL_KEY = dFOHKPhz0ybhuOwgHz4/RpblYq45XwKHbhmfZ7DcFdm9RPIcJVp/TBftLD2GM/21VsO6cvxfYmBq0WqNZSHNTg==

(공공데이터포털 일반 인증키 디코딩 값. URL 인코딩은 서버 코드(qs())가 자동으로 처리하므로 디코딩된 값 그대로 넣으면 됩니다.)

제공 도구 6개

  1. scan_narajangteo_procurement(since, until?, keywords?) — 나라장터 4종(조달요청→ 발주계획→사전규격→입찰공고) 조회 + 4종 교차 중복제거(가장 진전된 단계만 유지).
  2. scan_agency_bids(agency, since, until?, keywords?) — 나라장터 외 8개 기관 (kwater_bid, kwater_prespec, kra, dapa_overseas, dapa_bid, klid, kospo, kdhc) 중 하나를 조회.
  3. scan_dapa_plan(keywords?) — 방위사업청 D2B 조달계획(ID 기반, 날짜 필터 없음).
  4. scan_nia_board(pages?, keywords?) — NIA 알림마당 게시판 HTML 파싱(ID 기반).
  5. get_holiday_info(year, month) — 한국천문연구원 특일정보.
  6. list_agencies() — 사용 가능한 agency 코드/기본 키워드/현재 KST 시각 확인.

이 서버가 하지 않는 것 (호출하는 쪽의 책임)

  • 나라장터(1~4번) vs 다른 8개 기관 간 교차 중복제거: scan_narajangteo_procurementscan_agency_bids 결과의 title을 비교해서 같은 사업이면 나라장터 쪽만 남기는 판단은 호출하는 쪽에서 수행해야 합니다.
  • 오탐(false positive) 필터링: "AIRPORT"의 "AI"처럼 키워드가 단어 일부로 우연히 매칭된 경우를 걸러내는 판단.
  • 검토가치 판단: 예산 규모·사업 성격 기준으로 강조 여부를 정하는 판단.
  • 체크포인트/seen 파일 관리: scan_dapa_plan/scan_nia_board는 매번 전체 매칭분을 반환하므로, "신규" 여부 판정과 seen 목록 갱신은 호출하는 쪽이 파일(또는 다른 저장소)에 직접 저장해서 비교해야 합니다.
  • HTML 보고서 생성: 표 형식·정렬·강조 스타일 등 출력 형식은 호출하는 쪽에서 구성합니다.

참고

  • 원본 quirk 문서: it-bid-daily-scan 예정작업(SKILL.md)에 소스별 상세 이력이 남아있습니다.
  • 코드 패턴은 krx-regulation-mcp와 동일(Node.js ESM + @modelcontextprotocol/sdk + Vercel StreamableHTTPServerTransport).
  • NIA 게시판 HTML 파싱은 정규식 기반이라 사이트 마크업이 바뀌면 깨질 수 있습니다 — 매칭 건수가 갑자기 0으로 떨어지면 가장 먼저 의심할 부분입니다.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选