opinet-mcp
opinet-mcp
Это MCP-сервер, который позволяет использовать бесплатный API информации о ценах на топливо Opinet от Корейской нефтяной корпорации в MCP-клиентах, таких как Claude / Claude Code.
Язык: TypeScript (ESM)
SDK:
@modelcontextprotocol/sdkТранспорт: stdio
Лимит вызовов: 1500 вызовов/день (политика Opinet)
Предварительные требования
Получите API-ключ на сайте Opinet Free API
Node.js версии 18 или выше (используется глобальный
fetch)
Related MCP server: realestate-mcp
Установка и запуск — 3 способа
Способ 1. Мгновенный запуск через npx (рекомендуется, установка не требуется)
Доступно после публикации в реестре npm. Информацию о публикации см. в разделе "Развертывание" ниже.
OPINET_API_KEY=발급키 npx -y opinet-mcpСпособ 2. Глобальная установка
npm install -g opinet-mcp
OPINET_API_KEY=발급키 opinet-mcpСпособ 3. Клонирование исходного кода (для разработки / частного использования)
git clone https://github.com/KimJintak/opinet-mcp.git
cd opinet-mcp
npm install
npm run build
OPINET_API_KEY=발급키 node dist/index.jsРегистрация в MCP-клиенте
Claude Desktop / Claude Code
Расположение файла конфигурации:
ОС | Путь |
macOS |
|
Windows |
|
Linux |
|
A. Способ через npx (самый простой — после публикации)
{
"mcpServers": {
"opinet": {
"command": "npx",
"args": ["-y", "opinet-mcp"],
"env": {
"OPINET_API_KEY": "발급받은_키"
}
}
}
}B. Способ через глобальную установку
{
"mcpServers": {
"opinet": {
"command": "opinet-mcp",
"env": {
"OPINET_API_KEY": "발급받은_키"
}
}
}
}C. Способ локальной сборки (если клонировали исходный код)
{
"mcpServers": {
"opinet": {
"command": "node",
"args": ["/절대/경로/opinet-mcp/dist/index.js"],
"env": {
"OPINET_API_KEY": "발급받은_키"
}
}
}
}⚠️ Claude Desktop имеет ограниченное наследование PATH. Если при запуске через
command: "node"или"npx"возникают ошибки, укажите абсолютный путь (например,/opt/homebrew/bin/node,/usr/local/bin/npxи т.д.). Проверьте путь с помощьюwhich node/which npxв терминале.
После настройки полностью закройте Claude Desktop (Cmd+Q) → перезапустите, и вы увидите 6 инструментов в иконке инструментов.
Другие MCP-клиенты (Cursor, Cline, Continue и др.)
Вы можете добавить конфигурацию в файл настроек MCP-сервера вашего клиента, используя ту же структуру JSON.
Доступные инструменты (6 типов)
Имя инструмента | Эндпоинт Opinet | Описание |
|
| Средняя цена на АЗС по стране (текущая) |
|
| Средняя цена на АЗС по регионам (текущая) |
|
| Среднесуточная цена по стране за последние 7 дней (тренд) |
|
| ТОП-20 АЗС с самыми низкими ценами по стране/региону |
|
| Поиск АЗС в радиусе по координатам KATEC |
|
| Получение подробной информации по ID АЗС (UNI_ID) |
Общие коды
Код продукта (prodcd)
Код | Продукт |
| Обычный бензин |
| Дизельное топливо |
| Премиальный бензин |
| Керосин |
| Автомобильный бутан |
Код региона (sido / area, 2 цифры)
Код | Регион | Код | Регион |
01 | Сеул | 10 | Пусан |
02 | Кёнги | 11 | Чеджу |
03 | Канвон | 12 | Тэгу |
04 | Чхунбук | 13 | Инчхон |
05 | Чхуннам | 14 | Кванджу |
06 | Чонбук | 15 | Тэджон |
07 | Чоннам | 16 | Ульсан |
08 | Кёнбук | 17 | Седжон |
09 | Кённам |
Уровень городов/районов (сигунгу) использует 4-значный код (например,
0207= Кёнги, Кванмён). Можно запросить отдельно через эндпоинт OpinetareaCode.do.
Примечание по системе координат
Входные координаты (x, y) для search_stations_around и все значения GIS_X_COOR / GIS_Y_COOR в ответах используют систему координат KATEC. Она отличается от WGS84 (широта/долгота), поэтому, если вы принимаете широту/долготу на входе, преобразуйте их в KATEC перед вызовом.
Примеры использования (естественный язык)
"Покажи среднюю цену на бензин по стране сегодня" →
get_national_average_price"Средняя цена на дизель в Сеуле" →
get_sido_average_price(sido=01,prodcd=D047)"Тренд цен на бензин за последние 7 дней" →
get_recent_7days_price(prodcd=B027)"5 самых дешевых АЗС с бензином в Кванмёне" →
get_lowest_price_top20(prodcd=B027,area=0207,cnt=5)"Подробная информация об АЗС с ID A0008322" →
get_station_detail
Проверка работоспособности (Smoke Test)
Запуск без API-ключа → если выводится инструкция по переменным окружения и завершается, сборка OK:
node dist/index.jsПри наличии API-ключа, прямой вызов через stdio:
export OPINET_API_KEY=발급키
# 등록된 툴 목록 확인
echo '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | node dist/index.js
# 전국 평균가격 호출
echo '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"get_national_average_price","arguments":{}}}' | node dist/index.jsРазработка
npm install
npm run dev # tsc --watch
npm run build # 한 번 빌드
npm start # dist/index.js 실행
npm run clean # dist 삭제Структура проекта:
opinet-mcp/
├── src/
│ └── index.ts # MCP 서버 본체
├── dist/ # 빌드 결과물 (배포 대상)
├── package.json
├── tsconfig.json
├── README.md
└── LICENSEРазвертывание (npm publish)
При первой публикации:
# 1) npm 로그인
npm login
# 2) package.json의 author / repository / name 확인 (필요하면 scoped: @yourname/opinet-mcp)
# 3) 빌드 + publish (prepublishOnly에서 자동 빌드됨)
npm publish
# scoped 패키지면
npm publish --access publicПоследующие обновления версии:
npm version patch # 0.1.0 -> 0.1.1
npm publishПосле публикации любой желающий может сразу использовать команду npx -y opinet-mcp.
Благодаря скрипту
prepareсборка происходит автоматически приnpm install. Это означает, что установка напрямую из GitHub (npm i github:KimJintak/opinet-mcp) также будет работать.
Лицензия
MIT.
Источник данных — Opinet Корейской нефтяной корпорации. При использовании данных соблюдайте Условия использования Opinet.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
v0.1.0- First observed
get_lowest_price_top20 - First observed
get_national_average_price - First observed
get_recent_7days_price - First observed
get_sido_average_price - First observed
get_station_detail
TDQS
Scored across 5 tools
Each tool targets a distinct data view (cheapest stations, national average, historical trends, regional averages, single station details). While all relate to fuel prices, the scope filters (top20, 7-day history, sido codes) create clear boundaries.
All tools use consistent snake_case with a 'get_' verb prefix followed by descriptive noun phrases (lowest_price_top20, national_average_price, etc.). The pattern is predictable throughout.
Five tools cover the essential read-only queries for a fuel price information service without bloat. The scope is well-contained, though an additional search-by-radius or brand filter could round it out.
Core price discovery workflows are covered: finding cheap stations, checking averages at national/regional levels, viewing trends, and drilling into station details. Minor gaps include no brand-specific queries or historical data beyond 7 days.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Real-time fuel prices, alerts, and cheapest gas stations across 38+ countries.
Gas and fuel prices by station and area, as structured data via a hosted MCP server.
- mcpweaveOAuthcom.mcpweave
Korea-native MCP gateway: Korean commerce, payments, messaging, gov & finance APIs for AI agents.
Korean fact-verification tools for AI agents: business registration, address, DART, apt prices, laws
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables natural language querying of Korean statistical data from KOSIS, including population, employment, GDP, housing prices, and more, with support for regional and trend analysis.86116MIT
- AlicenseNot gradedqualityCmaintenanceEnables querying Korean apartment sales and rental transaction data from the public data portal through natural language, with tools for searching transactions and computing price statistics.4MIT
- FlicenseNot gradedqualityBmaintenanceFinds the cheapest gas stations along a travel route in Korea using Kakao Navigation and Opinet APIs.-
- AlicenseNot gradedqualityDmaintenanceEnables AI to query real-time Korean public data including weather, real estate prices, air quality, economic indicators, and business registration via natural language.1MIT