mcpField
P
procureport

procureport

Local
github.com/CloudCorpRecordsLegal & Government0Updated 1w ago

About procureport

procureport provides Korean public-procurement data through a CLI and stdio MCP server, for users exploring bids, awards, contracts, statistics, products, and the public shopping mall. It combines convenience queries with generic API access and local API exploration tools.

Key features

  1. 01Search bid notices, awards, and contracts
  2. 02Query procurement statistics
  3. 03Browse product catalogue and mall
  4. 04Paginate and aggregate API results
  5. 05Explore services and operations
  6. 06CLI and stdio MCP server

Use cases

  1. 01Find recent bid announcements by business type
  2. 02Review yearly procurement statistics
  3. 03Search products by name or company
  4. 04Explore API operations before querying

MCP support

Its stdio MCP server exposes procurement search, statistics, catalogue, shopping-mall, generic API, pagination, and local API-exploration tools. API-calling tools require NARAMARKET_SERVICE_KEY.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"cloudcorprecords-procureport": {
"command": "npx",
"args": [
"-y",
"@reneturcios/procureport"
]
}
}
}
Run commandnpx -y @reneturcios/procureport

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@reneturcios/procureport0.1.0
ocighcr.io/cloudcorprecords/procureport:0.1.0

Tools

15

Saved tool list · updated 1w ago

ParameterTypeRequiredDescription
pagenumberNoPage number to return.
querystringNoSearch query text to filter the product list.
page_sizenumberNoNumber of items per page.

Details

From the project README

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.

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:

ToolInputWhat it returns
crawl_listquery (optional), page, page_size (optional)A page of the product list.
get_detailed_attributesproduct_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):

ToolService
call_public_data_standard_apiBid notices, awards, and contracts.
call_procurement_statistics_apiProcurement statistics — 14 operations.
call_product_list_apiProduct catalogue — 12 operations.
call_shopping_mall_apiShopping mall — 9 operations.

Convenience:

ToolInputWhat it returns
get_recent_bid_announcementsdays, business_type (both optional)Bid notices over an automatically computed recent period.
get_successful_bids_by_business_typebusiness_type (required)Awards for a business type; a Korean name such as 물품, 용역, 공사 or 외자 is converted to its code automatically.
get_procurement_statistics_by_yearyear (required)Procurement statistics for one year.
search_shopping_mall_productsquery (required), company (optional)Shopping-mall products matching a name, optionally narrowed to one company.

Exploration:

ToolInputWhat it returns
get_all_api_services_info(none)All four services with their operations. Local.
get_api_operationsservice (required)The operations of one service. Local.
call_api_with_pagination_supportservice, 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.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.