Skip to main content
Glama

@theyahia/chestnyznak-mcp

«Честный ЗНАК» / ЦРПТ API용 MCP 서버 — 제품 마킹 확인. 도구 5개. 인증 없이 공개 확인, 토큰을 사용한 True API 정보.

npm License: MIT

시리즈 Russian API MCP (50개 서버)의 일부, @theYahia 제작.

설치

Claude Desktop

{
  "mcpServers": {
    "chestnyznak": {
      "command": "npx",
      "args": ["-y", "@theyahia/chestnyznak-mcp"]
    }
  }
}

Claude Desktop (인증 포함)

{
  "mcpServers": {
    "chestnyznak": {
      "command": "npx",
      "args": ["-y", "@theyahia/chestnyznak-mcp"],
      "env": {
        "CHESTNYZNAK_TOKEN": "ваш-токен"
      }
    }
  }
}

Claude Code

claude mcp add chestnyznak -- npx -y @theyahia/chestnyznak-mcp

# С авторизацией
CHESTNYZNAK_TOKEN=ваш-токен claude mcp add chestnyznak -- npx -y @theyahia/chestnyznak-mcp

Streamable HTTP

npx @theyahia/chestnyznak-mcp --http --port=3000
# Endpoint: POST http://127.0.0.1:3000/mcp
# Health:   GET  http://127.0.0.1:3000/health

기본적으로 HTTP 서버는 127.0.0.1만 수신하며 Host 헤더를 확인합니다(DNS 리바인딩 방지). 외부에 열려면 --host=0.0.0.0(자체 위험 부담, /mcp에는 인증이 없음).

Related MCP server: nip-checker-mcp

환경 변수

변수

필수

설명

CHESTNYZNAK_TOKEN

아니요

search_products, get_cis_info 도구용 True API 토큰. «인증» 참조.

CHESTNYZNAK_BASE_URL

아니요

인증된 API의 Origin(기본값 https://markirovka.crpt.ru). https 호스트 *.crpt.ru / *.crptech.ru만 허용됩니다.

CHESTNYZNAK_PUBLIC_BASE_URL

아니요

공개 API의 기본 URL(기본값 https://mobile.api.crpt.ru/mobile). 테스트에서 목(mock)으로 사용하기 편리합니다.

도구 (5)

공개 (인증 없음)

도구

인수

설명

check_marking_code

code, codeType?

마킹 코드로 진위 확인

get_product_info

code, codeType?

상세 정보: 이름, 그룹, 제조업체, 소유자

check_batch

codes[], codeType?

최대 50개 코드 일괄 확인(병렬 처리는 제한됨)

codeTypedatamatrix(기본값), qr 또는 ean13.

인증됨 (CHESTNYZNAK_TOKEN)

도구

인수

설명

search_products

query (GTIN)

True API에서 GTIN으로 제품 정보

get_cis_info

cis

True API에서 CIS(식별 코드) 정보

이름/브랜드 검색은 별도 API인 국가 카탈로그(nk.crpt.ru)이며 여기서는 지원되지 않습니다. search_products는 GTIN으로 작동합니다.

응답 형식

check_marking_code:

{ "code": "0104600702028445", "found": true, "valid": true, "status": "INTRODUCED" }

get_product_info(producer/owner/status 필드는 제품 그룹의 중첩 객체에서 가져오며, 없으면 null입니다):

{
  "code": "0104600702028445",
  "found": true,
  "valid": true,
  "status": "INTRODUCED",
  "productName": "Молоко 3.2%",
  "category": "milk",
  "producerName": "АО \"Данон Россия\"",
  "ownerName": "ООО Магнит",
  "ownerInn": "2309085638"
}

status — 문자열 enum: EMITTED / APPLIED / INTRODUCED / RETIRED / WRITTEN_OFF / DISAGGREGATION 등.

각 도구는 텍스트 JSON 외에도 structuredContent(outputSchema에 따른 타입 객체)를 추가로 반환합니다.

예시

Проверь код маркировки 0104600702028445
Расскажи подробнее о товаре с кодом 010460070202844521
Проверь пачку кодов: 0104600702028445, 0104600702028446
Информация о товаре с GTIN 04600702028445
Информация о CIS 0104600702028445

인증 (True API)

⚠️ 중요: True API(ГИС МТ)에는 정적 '영구' 토큰이 없습니다. 토큰은 УКЭП(ГОСТ) 인증서로 '요청-서명' 방식으로 얻습니다:

  1. GET /api/v3/true-api/auth/key{ uuid, data }

  2. data를 УКЭП(CAdES-BES, base64) 인증서로 서명합니다.

  3. POST /api/v3/true-api/auth/simpleSignIn { uuid, data: <подпись> } → 토큰.

  4. 토큰 수명은 ~10시간을 넘지 않으며, 이후 다시 인증해야 합니다.

이 서버는 CHESTNYZNAK_TOKEN을 이렇게 이미 획득한 토큰으로 사용합니다(Authorization: Bearer로 전송됨). УКЭП 서명은 서버 외부(예: КриптоПро)에서 수행되며, 내장된 GOST 서명 기능은 없습니다. 등록은 markirovka.crpt.ru에서 법인/개인사업자에게 가능합니다.

인증 부분의 엔드포인트/메서드(경로, 요청 본문)는 공식 문서와 공개 클라이언트를 기준으로 검증했지만, УКЭП 요구 사항으로 인해 실제 토큰으로는 테스트되지 않았습니다. ЦРПТ가 계약을 변경하면 CHESTNYZNAK_BASE_URL로 수정하세요.

스킬

Skill

트리거

skill-check-product

«코드로 제품 마킹을 확인해 줘»

skill-search

«GTIN으로 제품을 찾아 줘»

문제 해결

증상

원인 / 해결 방법

CHESTNYZNAK_TOKEN не задан

search_products/get_cis_info 도구에는 토큰이 필요합니다(«인증» 참조).

таймаут запроса / все попытки исчерпаны

네트워크/API를 사용할 수 없음; 서버는 백오프(backoff)를 적용해 최대 3회 재시도합니다. 공개 API는 러시아 외 IP에서는 응답하지 않을 수 있습니다.

HTTP 401 / HTTP 403

토큰이 유효하지 않거나 만료됨(~10시간) — 다시 받으세요.

HTTP 429

요청 속도 제한; 서버가 자동으로 재시도합니다. batch에서는 묶음 크기를 줄이세요.

CHESTNYZNAK_BASE_URL отклонён

Override는 https여야 하며 호스트가 *.crpt.ru/*.crptech.ru여야 합니다.

API

  • 공개(인증 없음): GET https://mobile.api.crpt.ru/mobile/check?code=<код>&codeType=<тип> — 모바일 앱의 비공식 엔드포인트.

  • 인증됨(Bearer): https://markirovka.crpt.ru/api/v3/true-api/... — True API(ГИС МТ).

개발

npm ci
npm run typecheck   # tsc --noEmit (src + tests)
npm test            # vitest
npm run build       # tsc -> dist/
npm run dev         # tsx watch (stdio)
npm run dev:http    # tsx watch (HTTP)

라이선스

MIT

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to search and retrieve data about Russian companies, entrepreneurs, and individuals via the Checko.ru API, including financial reports, legal cases, and bankruptcy information.
    12
    12
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables real-time verification of Polish NIP (Tax Identification Numbers) using the official Ministry of Finance API. Also supports checking if a bank account belongs to a specific NIP.
    2
    13
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    MCP server for Russia's Chestnyi Znak product labelling system, allowing AI assistants to query marking codes, documents, warehouse balances, and participant data via natural language.
    10
    26
    2
    Inno Setup

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/theYahia/chestnyznak-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server