Skip to main content
Glama

procureport

procureport opens up Korean public-procurement data — the Nara Market / data.go.kr API family — through one binary that serves a command-line interface and a stdio MCP server. It covers bid notices, successful bids (awards) and contracts, procurement statistics, the registered product catalogue, and the public shopping mall.

Configuration

API-calling tools need a service key:

export NARAMARKET_SERVICE_KEY=<your data.go.kr service key>

Calls go to data.go.kr-style endpoints under a base URL you can override with NARAMARKET_API_URL (default https://apis.data.go.kr). Requests are shaped as {base}/{service}/{operation}?serviceKey={key}&{params}.

Four tools are purely local — they answer from a built-in catalogue of the four API services and their operations, and work with nothing configured: server_info, get_all_api_services_info, get_api_operations, and get_data_exploration_guide. Every other tool checks for the service key first and fails with a clean error before any request is attempted when it is missing.

Related MCP server: narajangteo-pro

Install

npx @reneturcios/procureport server-info

Or run the container image:

docker run -i -e NARAMARKET_SERVICE_KEY=... ghcr.io/cloudcorprecords/procureport

The container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead.

CLI

procureport server-info
procureport services
procureport operations shopping_mall
procureport guide
procureport crawl chair --page 1 --page-size 20
procureport attributes PRD-42
procureport recent-bids --days 7 --business-type 물품
procureport successful-bids 공사
procureport statistics-year 2025
procureport search-mall monitor --company Acme

procureport --version

Exit codes: 0 on success, 1 when a call fails (including a missing service key or an upstream API error), 2 for usage errors.

MCP server

npx -y @reneturcios/procureport mcp

MCP client configuration:

{
  "mcpServers": {
    "procureport": {
      "command": "npx",
      "args": ["-y", "@reneturcios/procureport", "mcp"],
      "env": { "NARAMARKET_SERVICE_KEY": "<your data.go.kr service key>" }
    }
  }
}

Tools

Basic:

Tool

Input

What it returns

crawl_list

query (optional), page, page_size (optional)

A page of the product list.

get_detailed_attributes

product_id (required)

The detailed attributes of one product.

server_info

(none)

Server identity, tool list, and service summary. Local.

Generic API access (each takes operation (required) and an optional params object):

Tool

Service

call_public_data_standard_api

Bid notices, awards, and contracts.

call_procurement_statistics_api

Procurement statistics — 14 operations.

call_product_list_api

Product catalogue — 12 operations.

call_shopping_mall_api

Shopping mall — 9 operations.

Convenience:

Tool

Input

What it returns

get_recent_bid_announcements

days, business_type (both optional)

Bid notices over an automatically computed recent period.

get_successful_bids_by_business_type

business_type (required)

Awards for a business type; a Korean name such as 물품, 용역, 공사 or 외자 is converted to its code automatically.

get_procurement_statistics_by_year

year (required)

Procurement statistics for one year.

search_shopping_mall_products

query (required), company (optional)

Shopping-mall products matching a name, optionally narrowed to one company.

Exploration:

Tool

Input

What it returns

get_all_api_services_info

(none)

All four services with their operations. Local.

get_api_operations

service (required)

The operations of one service. Local.

call_api_with_pagination_support

service, operation (required), params, max_pages, page_size (optional)

Items aggregated across pages until a short page or the page cap.

get_data_exploration_guide

(none)

A strategy guide for exploring the data. Local.

Argument schemas in this rebuild are documented reconstructions from the public README of the original server (tool names and descriptions are documented; the README does not publish full schemas). The built-in catalogue's service operation counts follow the public spec (statistics 14, product list 12, shopping mall 9); individual operation names within the catalogue are documented reconstructions too.

Development

npm install
npm run build   # tsc -> dist/
npm test        # node test runner over test/*.test.ts, no network (fake fetch fixtures)
npm run dev     # run the CLI from source via tsx

License

MIT — see LICENSE.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    F
    maintenance
    Provides access to South Korean government procurement (G2B) and Nara Market shopping mall data, enabling users to search bid announcements, procurement statistics, product catalogs, and contract information through 15 specialized tools.
    4
    Apache 2.0
  • A
    license
    A
    quality
    D
    maintenance
    Integrates 6 Korean public procurement APIs to search, analyze, and manage procurement data using natural language.
    8
    3
    MIT
  • 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
    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