kfda-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@kfda-mcp check DUR interaction between ibuprofen and aspirin"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
π°π· KFDA MCP Server
MCP (Model Context Protocol) server for Korean Ministry of Food and Drug Safety (μμ½μ²) public OpenAPI.
LLM agents (Claude, ChatGPT, etc.) can autonomously query Korean drug master, DUR (Drug Utilization Review) safety rules, and health supplement databases through the standard MCP protocol.
π― Why this exists
The Korean healthcare AI ecosystem lacks an open MCP server for MFDS (μμ½μ²) public APIs. Global MCP servers like BioMCP focus on US data (FDA, PubMed). For Korean healthcare AI applications β pharmacy systems, telemedicine, drug interaction checkers β direct access to KFDA/MFDS APIs is essential but each team has to write their own wrapper.
This project provides a standard MCP server so any LLM agent can query Korean drug safety data without bespoke integration code.
Related MCP server: pykrx-mcp
β¨ Features
Tool | Description | KFDA OpenAPI |
| μμ½ν λ§μ€ν° κ²μ (μ νλͺ Β·μ±λΆΒ·μ μ‘°μ¬Β·ATC μ½λ) | μμ½ν μ ν νκ°μ 보 |
| λ μ½λ¬Όμ λ³μ©κΈκΈ°Β·μ°λ ΉκΈκΈ°Β·μλΆκΈκΈ° νμΈ | μμ½ν μμ μ¬μ©μλΉμ€ (DUR) |
| 건κ°κΈ°λ₯μν μΈνκ° μ 보 κ²μ | μνμμ λλΌ κ±΄κΈ°μ OpenAPI |
| eμ½μμ (νμμ© μ¬μ΄ μ½λ¬Ό μ 보) μ‘°ν | eμ½μμ |
| ATC μ½λ β μ½λ¬Όκ΅° λΆλ₯ μ 보 | λ΄μ₯ λ§€ν |
π Quick Start
1. Install
pip install kfda-mcp
# or from source
git clone https://github.com/pianovirus/kfda-mcp
cd kfda-mcp
pip install -e .2. Get your MFDS API key
Apply for a free API key at data.go.kr (곡곡λ°μ΄ν°ν¬νΈ) β select μμ½μ² OpenAPI services.
3. Configure
Create .env:
MFDS_API_KEY=your_api_key_here4. Run as MCP server
kfda-mcp5. Connect from Claude Desktop
Add to ~/.config/claude/claude_desktop_config.json (or %APPDATA%\Claude\claude_desktop_config.json on Windows):
{
"mcpServers": {
"kfda": {
"command": "kfda-mcp",
"env": {
"MFDS_API_KEY": "your_api_key_here"
}
}
}
}Restart Claude Desktop. Now Claude can call Korean drug safety tools autonomously.
π‘ Example Usage
Ask Claude (or any MCP-compatible LLM):
"νμκ° μνλ¦°μ λ³΅μ© μ€μΈλ° μλͺ½ μΆμΆ μμμ λ₯Ό κ°μ΄ λ¨Ήμ΄λ λλμ§ νμΈν΄μ€"
Claude will autonomously:
Call
search_drug("μνλ¦°")β get warfarin info + ATC codeCall
check_dur_interaction("warfarin", "grapefruit_extract")β DUR checkSynthesize a safety recommendation grounded in MFDS data
π Architecture
LLM Agent (Claude / GPT / etc.)
β
β MCP Protocol (stdio / SSE)
β
βΌ
KFDA MCP Server (this project)
β
β HTTP requests
β
βΌ
MFDS Public APIs
- μμ½ν μ ν νκ°μ 보 OpenAPI
- μμ½ν μμ μ¬μ©μλΉμ€ (DUR)
- μνμμ λλΌ κ±΄κΈ°μ OpenAPI
- eμ½μμπ Tool Reference
search_drug(name: str, limit: int = 10)
Search Korean drug master by product name, generic name, or manufacturer.
Returns: List of drugs with product_name, generic_name, manufacturer, atc_code, kor_indication, dosage_form.
check_dur_interaction(drug_a: str, drug_b: str)
Check DUR safety rules between two drugs (λ³μ©κΈκΈ°Β·μ°λ ΉκΈκΈ°Β·μλΆκΈκΈ° λ±).
Returns: List of warnings with rule_type, severity, description_kor.
search_supplement(ingredient: str | None = None, product: str | None = None)
Search μμ½μ² 건κ°κΈ°λ₯μν (functional health food) registrations.
Returns: List of supplements with product_name, manufacturer, main_ingredient, approved_function.
get_drug_easy_info(drug_name: str)
Get patient-friendly drug information from eμ½μμ (consumer-facing drug guide).
Returns: purpose, dosage, side_effects, warnings in Korean.
lookup_atc_code(atc_code: str)
Look up ATC (Anatomical Therapeutic Chemical) classification by code.
Returns: level1 ~ level5 Korean & English names, drug examples.
π£ Roadmap
Project scaffold + MCP SDK setup
search_drugβ μμ½ν λ§μ€ν° β live verified (νμ΄λ λ β ATC N02BE01)check_dur_interactionβ DUR λ³μ©κΈκΈ° β live verified (μμ€νΌλ¦°+μνλ¦° β 50건)search_supplementβ 건기μ β live verified (μνμμ λλΌ C003, λΉνλ―Ό κ²μ OK)get_drug_easy_infoβ eμ½μμ β live verified (νμ΄λ λ ν¨λ₯Β·μ©λ²Β·λΆμμ© λ°ν)lookup_atc_codeβ ATC λ§€ν (planned)Local cache layer (reduce API calls) β planned
Async batch query support β planned
Multilingual responses (ν/μ) β planned
νμ¬ μν: 4/4 ν΅μ¬ tool λͺ¨λ live κ²μ¦ μλ£, production-ready
Local cache layer (reduce API calls)
Async batch query support
Multilingual responses (ν/μ)
π€ Contributing
Korean healthcare AI engineers β contributions welcome! Please open an issue or PR.
This project aims to be the de facto MCP server for MFDS public APIs.
π License
MIT Β© 2026 Myunghee Kim Β· pianovirus@naver.com
π Acknowledgments
Anthropic MCP β Standard protocol for LLM-tool communication
μνμμ½νμμ μ² (MFDS) β Public health data API provider
곡곡λ°μ΄ν°ν¬νΈ β Korean government open data platform
νκ΅μ΄ μμ½
μμ½μ²(MFDS)μ 곡곡 OpenAPIλ₯Ό MCP νλ‘ν μ½λ‘ κ°μΌ μλ²μ λλ€. Claude, GPT κ°μ LLM μμ΄μ νΈκ° νκ΅ μμ½ν λ§μ€ν°Β·DUR μμ μ±Β·κ±΄κ°κΈ°λ₯μν μ 보λ₯Ό μμ¨μ μΌλ‘ μ‘°νν μ μμ΅λλ€.
νκ΅ ν¬μ€ AI κ°λ°μλ€μ΄ λ§€λ² μμ½μ² API wrapperλ₯Ό μ§μ λ§λ€ νμ μμ΄, μ΄ MCP μλ² νλλ‘ νμ€νλ λꡬ μ κ·Όμ μ 곡νλ κ²μ΄ λͺ©νμ λλ€.
κΈ°μ¬ νμν©λλ€. π±
Available Tools
4 toolscheck_dur_interactionB
μμ½μ² μμ½ν μμ μ¬μ©μλΉμ€(DUR)μμ λ μ½λ¬Όμ λ³μ©κΈκΈ°Β·μ°λ ΉκΈκΈ° λ± μμ μ± μ 보λ₯Ό νμΈν©λλ€. Check Korean Drug Utilization Review (DUR) safety rules between two drugs.
Inputs: drug_a (required), drug_b (required).
get_drug_easy_infoA
μμ½μ² eμ½μμ (νμμ© μ¬μ΄ μ½λ¬Ό μ 보)λ₯Ό μ‘°νν©λλ€. Get patient-friendly Korean drug information: purpose, dosage, side effects, warnings.
Inputs: drug_name (required).
search_drugA
μμ½μ² μμ½ν λ§μ€ν°μμ μ½νμ κ²μν©λλ€ (Korean drug master search). μ νλͺ , μ±λΆλͺ , μ μ‘°μ¬ λ±μΌλ‘ μ‘°ν κ°λ₯. Returns product_name, generic_name, manufacturer, ATC code, indication.
Inputs: name (required), limit.
search_supplementA
μμ½μ² μνμμ λλΌ κ±΄κ°κΈ°λ₯μν μΈνκ° μ 보λ₯Ό κ²μν©λλ€. Search Korean functional health food (건기μ) registrations by ingredient or product name.
Inputs: limit, product, ingredient.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogβ¦
TDQS
Scored across 4 tools
Each tool has a clearly distinct purpose: interaction checking, patient info retrieval, drug search, and supplement search. There is no overlap or ambiguity among them.
All tool names follow a consistent verb_noun pattern with underscores (e.g., check_dur_interaction, search_drug). The naming is predictable and uniform.
With 4 tools, the server is well-scoped for a focused domain of Korean drug and supplement information. Each tool serves a distinct function without redundancy.
The server covers drug search, patient information, interaction checking, and supplement searchβkey functionalities. Minor gaps exist (e.g., professional-level drug details), but the core workflows are supported.
Maintenance
Related MCP Connectors
Korea-native MCP gateway: Korean commerce, payments, messaging, gov & finance APIs for AI agents.
Pay-per-use tool marketplace for AI agents. Search, price-check, and call APIs via MCP.
Korean fact-verification tools for AI agents: business registration, address, DART, apt prices, laws
Korean company facts in English for AI agents: ~830 KOSPI-listed companies (DART profiles, KRW financials, recent filings) and ~110,000 corporate public procurement suppliers (12-month KONEPS contract awards), plus live National Tax Service business status checks. 4 tools, keyless, read-only.
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables users to search and retrieve detailed pharmaceutical drug information from the Korea Pharmaceutical Information Center (KPIC) API. Supports drug name searches and detailed lookups by drug code including ingredients, usage, precautions, and storage information.26MIT

pykrx-mcpofficial
AlicenseNot gradedqualityDmaintenanceProvides Korean stock market data (KOSPI, KOSDAQ, KONEX) including prices, fundamentals, investor trading, short selling, and indices via MCP protocol, enabling natural language queries from AI agents like ChatGPT and Claude.73 PyPI3MIT- AlicenseAqualityDmaintenanceEnables natural language querying of Korean public medical data (data.go.kr) through MCP clients like Claude, providing tools for searching hospitals, drugs, non-payment costs, disease statistics, and more.102MIT
- FlicenseAqualityDmaintenanceEnables querying Korean public datasets (apartment prices, weather, air quality) via natural language using an MCP server and local LLM agent.5-