Korea Business Verify (KBV)

Korea Business Verify (KBV)

Enables real-time verification of Korean business registration status and KYB identity checks using official Korea National Tax Service data.

Category
访问服务器

README

Korea Business Verify (KBV) — MCP Server

KBV is a hosted MCP server that verifies Korean businesses in real time — free during its pilot phase. Give it a 10-digit Korean business registration number (사업자등록번호) and it returns the registration status (active / suspended / closed), tax type, and — optionally — whether the number matches a representative name and opening date. Data comes live from the Korea National Tax Service (NTS) and is returned as clean, English-normalized JSON.

No account, no API key, no installation — connect any MCP-capable agent to one URL:

https://kbv-server-f7vfitmlkq-du.a.run.app/mcp

Built for AI agents and developers doing KYB / due-diligence on Korean companies: procurement, contracting, payments, marketplace onboarding.

Quick facts

MCP endpoint https://kbv-server-f7vfitmlkq-du.a.run.app/mcp
Transport MCP Streamable HTTP (POST)
Health check GET https://kbv-server-f7vfitmlkq-du.a.run.app/health → {"ok":true}
Authentication None required
Price Free (pilot) — pay-per-call planned, see Pricing
Tools check_korean_business_status, verify_korean_business
Data source Korea National Tax Service (국세청), official open-data API — queried live per request
Data license Korean government open data, no usage restrictions (이용허락범위 제한 없음)
Privacy Query contents are never logged — see Privacy
Region Google Cloud Run, Seoul (asia-northeast3)

Connect your agent

Claude (claude.ai)

  1. Settings → Connectors → Add custom connector
  2. URL: https://kbv-server-f7vfitmlkq-du.a.run.app/mcp
  3. Enable the connector in a chat and ask: "Check the status of Korean business 124-81-00998."

Claude Code (CLI)

claude mcp add --transport http kbv https://kbv-server-f7vfitmlkq-du.a.run.app/mcp

ChatGPT

  1. Settings → Connectors (requires a plan with connector / developer-mode support)
  2. Add a custom MCP connector with URL https://kbv-server-f7vfitmlkq-du.a.run.app/mcp
  3. Enable it in a conversation and ask about a Korean business number.

Cursor

Add to .cursor/mcp.json (project) or ~/.cursor/mcp.json (global):

{
  "mcpServers": {
    "korea-business-verify": {
      "url": "https://kbv-server-f7vfitmlkq-du.a.run.app/mcp"
    }
  }
}

Any other MCP client

Use transport Streamable HTTP with the endpoint above. Clients must send Accept: application/json, text/event-stream (standard MCP clients do this automatically). Opening /mcp in a browser returns Method not allowed by design — browsers send GET, MCP uses POST. Use /health for a visual liveness check.

Tools

check_korean_business_status

Check the registration status of a Korean business by its 10-digit business registration number.

Input — hyphens/spaces allowed; normalized internally:

{ "business_number": "124-81-00998" }

Output (real example — Samsung Electronics):

{
  "business_number": "1248100998",
  "status": "active",
  "status_code_raw": "01",
  "tax_type": "general",
  "closed_date": null,
  "checked_at": "2026-08-24T10:08:20.082Z",
  "source": "Korea National Tax Service (NTS)",
  "cache": false
}

Field reference:

  • status: active | suspended | closed | not_registered
  • tax_type: general | simplified | exempt | non_profit | unknown
  • closed_date: ISO date ("2023-01-31"), only for closed businesses, otherwise null
  • checked_at: ISO 8601 UTC timestamp of the NTS query
  • cache: true only when the NTS API was temporarily unavailable and a cached result (max 24 h old) was served; checked_at then reflects the original fetch time

A number that is well-formed but not registered with the NTS returns "status": "not_registered" (not an error).

verify_korean_business

Verify that a business registration number matches the provided representative name and opening date (KYB identity check), and get the current status in the same call.

Input:

{
  "business_number": "124-81-00998",
  "representative_name": "홍길동",
  "opening_date": "1969-01-13",
  "address": "경기도 수원시"
}
  • representative_name and opening_date (YYYY-MM-DD) are required.
  • address is optional and improves match precision.
  • Names and addresses should be given as registered with the NTS (Korean script).

Output — same schema as above plus identity_match:

{
  "business_number": "1248100998",
  "status": "active",
  "status_code_raw": "01",
  "tax_type": "general",
  "closed_date": null,
  "checked_at": "2026-08-24T10:08:23.483Z",
  "source": "Korea National Tax Service (NTS)",
  "cache": false,
  "identity_match": false
}

identity_match is true only when the NTS confirms that the number, representative name, and opening date all match its records.

Errors

Errors are returned as MCP tool errors with a machine-readable JSON body:

error Meaning
invalid_business_number Input is not a 10-digit number, or the date is not YYYY-MM-DD. Nothing was queried.
upstream_unavailable The NTS API is down or over quota and no cached result exists. Retry later.

Data source and license

  • All data comes from the Korea National Tax Service (국세청) via the official Korean government open-data API (data.go.kr: 사업자등록정보 진위확인 및 상태조회 서비스), queried live on every request — KBV stores no business database.
  • The underlying dataset is published under the Korean government open-data policy with no usage restrictions (이용허락범위: 제한 없음), so responses may be used commercially and cited freely.
  • KBV normalizes the Korean-language, code-based NTS responses into the stable English JSON schema documented above; raw NTS payloads are never passed through.
  • Freshness: queries hit the NTS registry directly. Newly registered businesses may take 1–2 business days to appear in the NTS system itself.

Privacy

  • Query contents are never logged. Business numbers, representative names, and addresses appear in no server logs and are sent nowhere except the official NTS API that answers the query.
  • Server logs contain only request counts, outcomes, and latency metrics.
  • A short-lived in-memory cache (24 h max, hashed keys) exists solely so the service can answer during NTS outages; it is never shared or exported.

Pricing

  • Currently free while KBV is in its pilot phase. No account or key is needed.
  • Pay-per-call pricing (in the ~$0.02–$0.05 per call range, agent-payable via x402) is planned for a later phase; the free tier for light usage is expected to remain.
  • Fair use: the upstream NTS quota is shared. Heavy automated traffic may be rate-limited before paid tiers launch.

FAQ

What is a Korean business registration number? A 10-digit identifier (사업자등록번호, often written 123-45-67890) issued by the Korea National Tax Service to every registered business in South Korea.

Can I check whether a Korean company is still operating? Yes — call check_korean_business_status; "status": "active" means the business is currently registered and operating, "closed" includes the closure date.

Can I verify a Korean company's identity before a transaction (KYB)? Yes — call verify_korean_business with the number, representative name, and opening date; identity_match: true means the NTS confirms all three match.

Do I need an API key? No. Connect to the MCP URL and call the tools.

Self-hosting / development

The server is open for local development (Node.js ≥ 22, TypeScript, Express + official MCP SDK):

cp .env.example .env       # put your own data.go.kr DECODING key in NTS_SERVICE_KEY
npm install
npm run dev                # → http://localhost:8080  (MCP at /mcp)
npm test                   # vitest, upstream fully mocked — no network

Deployment guide (Google Cloud Run): see DEPLOY.md. Architecture and design spec: DESIGN.md.

推荐服务器

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 模型以安全和受控的方式获取实时的网络信息。

官方
精选