Skip to main content
Glama
narajangteo-pro

narajangteo-pro

by kyj2294

naramarket-pro-MCP

This is an MCP server that integrates 6 types of KONEPS (Korea ON-line E-Procurement System) public procurement APIs. You can connect it to MCP clients like Claude Desktop to perform tasks such as searching for bid notices, analyzing the market, and evaluating bid suitability using natural language.


Key Features

Integration of 6 Public Procurement APIs

We have integrated major KONEPS public APIs to allow for the retrieval of various data.

  • Bid Notices: Search for notices by keyword, organization, and period.

  • Bid Results: Retrieve information on winning bidders and amounts.

  • Contract Information: Verify actual contract execution details.

  • Integrated Contract Process Disclosure: Track the entire process from pre-specifications to contracts.

  • Procurement Requests: Retrieve data from the pre-ordering stage.

  • Comprehensive Shopping Mall Items: Search for items registered under unit price contracts.

The common API client (api/client.py) handles the following functions:

  • Normalization of response formats

  • Automatic retries on request timeouts (up to 2 times)

  • Memory caching (default 5 minutes)


8 MCP Tools

Configured as functional tools for efficient use in LLM environments.

Tool Name

Description

search_procurement

Integrated search for bids / results / contracts / requests / shopping mall

get_procurement_detail

Retrieve detailed information

trace_procurement_lifecycle

Track procurement progress stages

analyze_market

Keyword-based market trend analysis

analyze_competitor

Analyze procurement activities of a specific company

score_bid_fit

Analyze bid suitability based on company information

manage_watchlist

Register keywords of interest and check for new notices

manage_company_profile

Save / load company profiles


Natural Language Processing

Implemented to automatically convert user input in everyday language into API parameters.

Period Expressions — last 7 days / past 3 months / this year

Amount Expressions — 500 million / 150 million / 30 million won

Work Category Synonyms — service → service / construction → construction work


State Storage

Stores user configuration data based on SQLite. Saved items include Watchlist and company profiles; the default storage location is as follows.

~/.narajangteo-pro/state.db

Related MCP server: narajangteo-searcher

Quick Start

1. API Key Issuance

After applying for the services below at the Public Data Portal, copy the Decoding value of the ServiceKey from My Page → Development Account.

  • Public Procurement Service_KONEPS Bid Notice Information Service

  • Public Procurement Service_KONEPS Bid Result Information Service

  • Public Procurement Service_KONEPS Contract Information Service

  • Public Procurement Service_KONEPS Integrated Contract Process Disclosure Service

2. Installation

# uvx (권장 — Python 설치 없이 실행)
uvx narajangteo-pro

# npx
npx narajangteo-pro

# pip
pip install narajangteo-pro
narajangteo-pro

3. Connect to Claude Desktop

Modify the configuration file at the following path:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "narajangteo-pro": {
      "command": "uvx",
      "args": ["narajangteo-pro@latest"],
      "env": {
        "NARA_API_KEY": "발급받은_디코딩_서비스키"
      }
    }
  }
}

You can use it immediately after restarting Claude Desktop.

"Analyze the market for AI chatbots over the last month"

"Show me the entire progress from pre-specification to contract for notice number 20260415123"

"Evaluate whether we should bid on this notice based on our company profile"


Architecture

┌─────────────────────────────────────┐
│  Claude Desktop / Cursor / VS Code  │
└──────────────────┬──────────────────┘
                   │ MCP (stdio | HTTP)
┌──────────────────▼──────────────────┐
│          narajangteo-pro            │
│  ┌────────┐  ┌──────────┐  ┌──────┐ │
│  │ Tools  │→ │Analytics │→ │ DB   │ │
│  └───┬────┘  └────┬─────┘  └──────┘ │
│      └────────────┘                 │
│         ┌──────────┐                │
│         │API Client│                │
│         └────┬─────┘                │
└──────────────┼──────────────────────┘
               │
      ┌─────────▼──────────┐
      │   공공데이터포털    │
      │  나라장터 API 6종   │
      └────────────────────┘

License

MIT

Available Tools

8 tools
analyze_competitorA

특정 기업의 조달시장 활동 분석.

낙찰 건수/금액, 주력 분야, 평균 낙찰가율, 거래 발주기관 패턴을 분석.

Args: company_name: 기업명 (정확하지 않아도 부분 일치) period_months: 분석 기간 business_type: 업무구분 또는 'all'

Inputs: company_name (required), period_months, business_type. Returns: object

analyze_marketA

특정 분야 시장 동향 분석.

낙찰 데이터를 집계하여 월별 추이, 평균 낙찰가율, 상위 발주기관/낙찰업체, 추정 시장 규모를 반환.

Args: keyword: 분석 대상 키워드 (예: 'AI 챗봇', '클라우드') period_months: 분석 기간 — 기본 12개월 business_type: 업무구분 또는 'all' (4개 합산)

Inputs: keyword (required), period_months, business_type. Returns: object

get_procurement_detailA

입찰공고/낙찰/계약/조달요청/쇼핑몰품목 상세 정보 조회.

Args: domain: 'bid'(입찰공고), 'award'(낙찰), 'contract'(계약), 'request'(조달요청), 'shopping'(종합쇼핑몰 품목) notice_no: 식별 번호 - bid/award: 입찰공고번호 - contract: 확정계약번호 - request: 조달요청번호 - shopping: 품목식별번호 business_type: 업무구분 (shopping은 무시) notice_ord: 공고차수 (보통 '00')

Inputs: domain (required), notice_no (required), business_type, notice_ord. Returns: object

manage_company_profileA

회사 프로필 관리 — 적합도 평가에 재사용.

actions: - 'save': 저장 (profile_id, name 필수). 같은 ID면 업데이트. - 'load': 조회 (profile_id 필수) - 'list': 모든 프로필 목록 - 'delete': 삭제 (profile_id 필수)

revenue는 자연어 표현 가능: '50억', '100억원' 등.

Inputs: action (required), profile_id, name, licenses, +4 more. Returns: object

manage_watchlistB

관심 키워드 모니터링.

actions: - 'add': 새 키워드 등록 (keyword 필수) - 'remove': 등록 해제 (watch_id 필수) - 'list': 등록된 키워드 목록 - 'check_new': 등록한 키워드의 신규 공고 (마지막 확인 이후)

Inputs: action (required), keyword, business_type, institution, +1 more. Returns: object

score_bid_fitA

입찰 적합도 평가 — 0-100 점수 + 권고.

회사 프로필(보유 면허, 매출, 실적)과 공고 요구사항을 매칭해 적합도를 산출.

Args: bid_notice_no: 입찰공고번호 business_type: 업무구분 profile_id: 저장된 회사 프로필 ID (manage_company_profile로 미리 저장) inline_profile: 즉석 프로필 dict (저장 없이 일회성 평가) {"licenses": [...], "certifications": [...], "revenue": int, "prior_contracts": [...]} notice_ord: 공고차수

Inputs: bid_notice_no (required), business_type, profile_id, inline_profile, +1 more. Returns: object

search_procurementA

나라장터 통합 검색 도구.

하나의 도구로 5개 영역을 모두 검색한다.

Args: domain: 검색 영역 - 'bid': 입찰공고 - 'award': 낙찰결과 - 'contract': 체결된 계약 - 'request': 조달요청 (발주의 가장 이른 단계 — 영업 선행지표) - 'shopping': 종합쇼핑몰 품목 (단가계약 등록 품목) business_type: 업무구분 — '물품', '용역', '공사', '외자' (자연어 표현 자동 매핑) 'shopping' 도메인은 이 파라미터를 무시. keyword: 공고명/품목명 키워드 institution: 발주기관/계약기관명 (shopping에선 공급업체명으로 사용) period: 자연어 기간 — '최근 7일', '지난 3개월', '올해' 등 (date_from/to보다 우선) date_from: 시작일 YYYYMMDD date_to: 종료일 YYYYMMDD limit: 최대 결과 수 (1-100)

Returns: {"items": [...], "total_count": int, "page_no": int}

Inputs: domain, business_type, keyword, institution, +4 more. Returns: object

trace_procurement_lifecycleA

⭐ 조달 전 과정 추적 — 사전규격 → 공고 → 낙찰 → 계약을 한 번에.

이 도구가 narajangteo-pro의 시그니처 기능. 식별자 하나만 알면 조달 라이프사이클 전체를 추적해 타임라인으로 반환한다.

Args: id_value: 식별 번호 business_type: 업무구분 id_type: 식별자 종류 - 'bid_notice': 입찰공고번호 (가장 흔함) - 'spec': 사전규격등록번호 - 'plan': 발주계획번호 - 'request': 조달요청번호

Inputs: id_value (required), business_type, id_type. Returns: object

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4/5.0

    Scored across 8 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose: analysis per company or market, detail retrieval, profile/watchlist management, fit scoring, search, and lifecycle tracing. No two tools overlap significantly.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern in snake_case, e.g., analyze_competitor, manage_watchlist. No mixing of camelCase or other conventions.

    Tool Count5/5

    8 tools is ideal for this domain, covering search, detail, analysis, management, scoring, and tracing without being too few or too many.

    Completeness4/5

    Covers core procurement activities well, but lacks a direct tool for comparing bids or exporting reports. The analysis tools provide aggregated data, mitigating minor gaps.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      A
      quality
      D
      maintenance
      Enables AI assistants to query and analyze Korean public procurement data from the Korea Public Procurement Service (G2B/Nuri) via 14 services and 156 operations, including bid announcements, contracts, prices, and statistics.
      17
      1
      -
    • A
      license
      A
      quality
      C
      maintenance
      Enables users to search and analyze Korean public procurement IT bid announcements, including full bid opening results, through natural language conversation with Claude.
      8
      1
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables searching Korean procurement notices from the public data portal, with support for integrated search across categories, flexible date ranges, and attachment extraction.
      MIT
    • A
      license
      A
      quality
      C
      maintenance
      Enables querying Korean procurement corporate profiles and qualifications using business registration numbers through natural language, leveraging the public data API from data.go.kr.
      2
      51 npm
      MIT