Skip to main content
Glama

Samsung Checkout MCP Server

Samsung Smart TV 인앱결제(Samsung Checkout / DPI) 개발을 위한 MCP(Model Context Protocol) 서버입니다.

AI 코딩 도구(Claude, Cursor 등)에 연결하면 Samsung Checkout 개발에 필요한 API 레퍼런스, 코드 생성, 트러블슈팅을 실시간으로 지원받을 수 있습니다.

📘 고객용 사용 설명서: MANUAL.html — 한국어/영어 전환을 지원하는 설치·설정·도구 레퍼런스 통합 가이드입니다. 브라우저로 열어보세요.


설치 및 연결

방법 1: npx (npm 배포 후)

별도 설치 없이 바로 사용:

{
  "mcpServers": {
    "samsung-checkout": {
      "command": "npx",
      "args": ["-y", "samsung-checkout-mcp"]
    }
  }
}

방법 2: 로컬 직접 실행

git clone https://github.com/HoRockx2/samsung-checkout-mcp.git
cd samsung-checkout-mcp
npm install

Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "samsung-checkout": {
      "command": "node",
      "args": ["/절대경로/samsung-checkout-mcp/src/index.js"]
    }
  }
}

Claude Code (CLI)

claude mcp add samsung-checkout -- node /절대경로/samsung-checkout-mcp/src/index.js

# 모든 프로젝트에서 사용하려면 사용자 범위로 등록
claude mcp add -s user samsung-checkout -- node /절대경로/samsung-checkout-mcp/src/index.js

연결 확인: claude mcp listsamsung-checkout: ... ✔ Connected

Cursor

Settings > MCP에서 추가하거나, 프로젝트 루트에 .cursor/mcp.json 생성:

{
  "mcpServers": {
    "samsung-checkout": {
      "command": "node",
      "args": ["/절대경로/samsung-checkout-mcp/src/index.js"]
    }
  }
}

연결 성공 시 Settings > MCP에서 초록색 점이 표시됩니다.


Related MCP server: @mobilpay/mcp-server

제공 도구 (Tools)

도구명

설명

lookup_api

Billing API, DPI API 레퍼런스 조회 (파라미터, 코드 예제)

generate_checkvalue_guide

CheckValue(HMAC SHA256) 생성 가이드 (API별 공식, 다국어 코드)

get_implementation_guide

상품 타입별(Consumable/Subscription 등) 전체 구현 플로우

troubleshoot

에러코드/증상 기반 진단 및 해결 방법 안내

get_setup_checklist

환경 설정 단계별 체크리스트 (Seller Office → DPI → 테스트 → 출시)

get_code_snippet

클라이언트/서버 보일러플레이트 및 코드 스니펫

search_knowledge

전체 지식 베이스 키워드 검색


User Scenarios

Scenario 1: 처음 Samsung Checkout 개발을 시작하는 경우

"Samsung TV 앱에 인앱결제를 넣으려는데, 어디서부터 시작해야 해?"

AI가 get_setup_checklist 도구를 호출하여 Seller Office 가입부터 DPI 포털 설정, 상품 등록, config.xml 설정까지 단계별 가이드를 제공합니다.

추가 질문 예시:

  • "Seller Office 가입은 어떻게 해?"

  • "config.xml에 어떤 privilege를 추가해야 해?"

  • "Test Buyer는 어떻게 등록해?"


Scenario 2: 특정 API 사용법을 알고 싶을 때

"buyItem API 파라미터 알려줘"

AI가 lookup_api 도구를 호출하여 buyItem()의 전체 파라미터 스펙, 필수/선택 여부, 타입, 설명, 코드 예제를 제공합니다.

추가 질문 예시:

  • "getUserPurchaseList는 어떻게 호출해?"

  • "DPI 서버 API 중에 구매 검증 API 스펙 보여줘"

  • "cont/apply API의 요청/응답 형식이 뭐야?"

  • "서버 API 전체 목록 보여줘"


Scenario 3: 상품 타입별 구현 방법이 궁금할 때

"Consumable 상품 구현 플로우가 어떻게 돼?"

AI가 get_implementation_guide 도구를 호출하여 Consumable 상품의 구매 → 서버 검증 → Apply 처리까지 전체 플로우를 안내합니다.

추가 질문 예시:

  • "구독(Subscription) 상품은 어떻게 구현해?"

  • "Non-Consumable과 Limited Period의 차이가 뭐야?"

  • "구독 해지 플로우를 알려줘"

  • "각 상품 타입별 차이점을 비교해줘"


Scenario 4: CheckValue 생성이 필요할 때

"cont/verify API의 CheckValue를 Python으로 어떻게 만들어?"

AI가 generate_checkvalue_guide 도구를 호출하여 해당 API의 파라미터 연결 순서, HMAC SHA256 해싱 방법, Python 코드 예제를 제공합니다.

추가 질문 예시:

  • "CheckValue가 뭐야? 왜 필요해?"

  • "invoice/list API의 CheckValue 공식 알려줘"

  • "Java로 CheckValue 생성하는 코드 보여줘"

  • "CheckValue에서 자주 하는 실수가 뭐야?"


Scenario 5: 에러가 발생했을 때

"0410424 에러가 뭐야?"

AI가 troubleshoot 도구를 호출하여 해당 에러 코드의 원인과 해결 방법을 안내합니다.

추가 질문 예시:

  • "CheckValue Invalid 에러가 나는데 어떻게 해?"

  • "Staging에서는 되는데 Production에서 안 돼"

  • "buyItem 호출했는데 'Billing not available'이 나와"

  • "구매는 됐는데 apply가 안 돼"

  • "Samsung Account 로그인 안 됨 에러"


Scenario 6: 코드 보일러플레이트가 필요할 때

"서버 전체 코드 보일러플레이트 줘"

AI가 get_code_snippet 도구를 호출하여 Node.js 기반 DPI 서버 전체 코드를 제공합니다.

추가 질문 예시:

  • "클라이언트 측 전체 코드 예제 보여줘"

  • "config.xml 템플릿 줘"

  • "buyItem 호출하는 코드만 보여줘"

  • "구매 검증(verify) 코드 스니펫 줘"


Scenario 7: 특정 키워드로 정보를 찾고 싶을 때

"OrderCustomID가 뭐야?"

AI가 search_knowledge 도구를 호출하여 전체 문서에서 해당 키워드가 포함된 섹션을 찾아 반환합니다.

추가 질문 예시:

  • "Free Trial 관련 내용 찾아줘"

  • "CountryCode는 어디에 쓰여?"

  • "SecurityKey는 어디서 발급받아?"

  • "invoice에 대해 전체적으로 알려줘"


Scenario 8: 실제 개발 중 복합 질문

실제 개발 중에는 여러 도구가 조합되어 사용됩니다:

"Subscription 상품을 만들려고 해. 구현 플로우, 서버 API 스펙, CheckValue 생성법, 그리고 서버 보일러플레이트까지 한번에 알려줘"

AI가 get_implementation_guide, lookup_api, generate_checkvalue_guide, get_code_snippet을 순차적으로 호출하여 종합적인 가이드를 제공합니다.

복합 질문 예시:

  • "지금 Consumable 상품 개발 중인데, buyItem 호출 후 서버에서 검증하는 전체 과정을 코드와 함께 알려줘"

  • "Production 배포 전에 확인해야 할 체크리스트와 Staging/PRD 환경 차이점 알려줘"

  • "결제 연동 테스트하다가 에러가 났어. 에러 코드는 0410424이고 CheckValue 관련인 것 같아"


테스트

npm test

71개 테스트가 10개 카테고리로 구성되어 있습니다:

  1. MD 파일 존재 여부 (9개 문서)

  2. Markdown 파서 기본 동작

  3. 문서 로드 검증

  4. 지식 베이스 내용 품질 (필수 데이터 누락 여부)

  5. 검색 기능

  6. 섹션 검색

  7. 코드 블록 추출

  8. 콘텐츠 렌더링

  9. 엣지 케이스 & 견고성

  10. 데이터 일관성 (문서 간 교차 검증)

docs/의 MD 파일을 수정한 후 npm test로 품질을 검증하세요.


데이터 유지보수

지식 베이스는 docs/ 디렉토리의 Markdown 파일로 관리됩니다. 코드 수정 없이 MD 파일만 편집하면 됩니다.

docs/
├── 01-overview.md           # 전체 개요, 아키텍처, 상품 타입
├── 02-client-billing-api.md # buyItem, getUserPurchaseList 상세 스펙
├── 03-dpi-server-api.md     # DPI 서버 API 5종
├── 04-security-checkvalue.md# CheckValue 생성 가이드 (4개 언어)
├── 05-setup-and-testing.md  # 환경 설정 8단계, 테스트, 출시 체크리스트
├── 06-troubleshooting.md    # 에러코드, FAQ, 디버깅 팁
├── 07-implementation-flows.md# 상품 타입별 구현 플로우
├── 08-code-snippets.md      # 클라이언트/서버 보일러플레이트
└── 09-references.md         # 공식 문서, 포털, GitHub 링크

테스트

npm test        # 단위 테스트 (파서, 지식 베이스 정합성) — 80개
npm run test:sim # 시뮬레이션 (실제 MCP 프로토콜로 고객 시나리오 재현) — 71개
npm run test:all # 전체

sim/scenarios.js 에 "고객 질문 → 도구 호출 → 응답에 반드시 있어야 할 내용"이 정의되어 있습니다. 지식 베이스나 핸들러를 수정한 뒤에는 npm run test:all 로 회귀를 확인하세요.

License

MIT

Available Tools

7 tools
generate_checkvalue_guideA

Samsung Checkout DPI API의 CheckValue(HMAC SHA256 해시) 생성 방법을 안내합니다. API별 파라미터 연결 순서, 코드 예제(JavaScript/Node.js/Python/Java), 주의사항을 제공합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
api_nameYesCheckValue를 생성할 API 이름. 예: 'cont/list', 'invoice/list', 'cont/verify', 'getUserPurchaseList', 'all'
languageNo코드 예제 언어. 'javascript', 'nodejs', 'python', 'java', 'all'

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does well: it explicitly says the tool provides a guide, including parameter concatenation order, code examples in multiple languages, and precautions. This clearly communicates the informational nature without side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two tight sentences: the first states the core purpose, the second enumerates the guide's contents. No wasted words, and the most important information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with only two parameters and no output schema, the description adequately covers what it does and what it provides. It could mention the exact output format, but the informational nature is clear and sufficient for an agent to use it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds value by connecting api_name to the per-API parameter concatenation order and language to the code example languages, enriching the meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: guiding CheckValue (HMAC SHA256) generation for the Samsung Checkout DPI API. It specifies the resource and differentiates from sibling tools by focusing on this specific hash-generation guide.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context: use this tool when you need to generate a CheckValue for the Samsung Checkout DPI API. It does not explicitly exclude alternatives, but the intended use case is evident.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_code_snippetA

Samsung Checkout 구현에 필요한 코드 스니펫과 보일러플레이트를 제공합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
snippet_typeYes'client_full'(TV앱 전체), 'server_full'(Node.js 서버 전체), 'config_xml'(권한 템플릿), 'buyItem', 'getUserPurchaseList', 'verify', 'apply', 'cancel', 'checkvalue'(HMAC 생성), 'all'

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of behavioral transparency. It merely states that the tool provides snippets, without disclosing the output format, whether it is a static read operation, or any side effects. This is insufficient for an agent to fully understand the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that immediately communicates the tool's purpose. It is front-loaded and contains no unnecessary words, making it highly efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool (one well-documented parameter, no output schema), the description is adequate for understanding the core functionality. However, it could benefit from noting that it returns static code examples or how the snippet is delivered, but this is not a major gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers 100% of parameter semantics, including detailed descriptions for each enum value in the parameter description. The tool description adds minimal meaning beyond the schema, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: providing code snippets and boilerplate for Samsung Checkout implementation. It uses a specific verb ('provide') and resource ('code snippets and boilerplate'), which distinguishes it from sibling tools like lookup_api or get_implementation_guide.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The usage is implied rather than explicitly stated. The description does not mention when to choose this tool over alternatives, nor does it provide exclusions. The parameter enum suggests different snippet types, but the description lacks direct guidance on when to use it versus sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_implementation_guideA

Samsung Checkout 상품 타입별 전체 구현 플로우를 안내합니다. Consumable, Non-Consumable, Limited Period, Subscription 각각의 구매→검증→적용 플로우와 주의사항을 제공합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
product_typeYes'consumable', 'non_consumable', 'limited_period', 'subscription', 'all'

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It partially discloses content ('purchase→verification→application flow and precautions') but does not describe the output format, whether it returns a step-by-step guide, code examples, or other behavioral details. For a read-only documentation tool, this is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences. The first sentence clearly states the tool's purpose, and the second enumerates the content covered. No filler or redundant information; the structure front-loads the main action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has a single parameter, no output schema, and the description adequately covers the core purpose and content. It mentions the flow stages and precautions, but does not explain the 'all' enum option or clarify whether the guide includes code snippets, which would make it more complete. Still, for a simple documentation tool, this is sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers 100% of parameter semantics, including an enum with a description. The tool description merely repeats the enum values ('Consumable, Non-Consumable, Limited Period, Subscription') without adding new meaning or clarifying the 'all' option. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: guiding the overall implementation flow for each Samsung Checkout product type. It explicitly lists the product types (Consumable, Non-Consumable, Limited Period, Subscription) and the flow stages (purchase, verification, application), which differentiates it from sibling tools like get_code_snippet or lookup_api.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use this tool (for implementation flow guidance per product type) but does not explicitly mention alternatives or exclusions. It does not say 'use this instead of X' or provide any when-not-to-use guidance, leaving usage context slightly underdeveloped.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_setup_checklistB

Samsung Checkout 개발 환경 설정 단계별 가이드를 제공합니다. 초기 설정부터 테스트, 출시까지의 체크리스트를 안내합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
stageYes'initial_setup', 'dpi_portal', 'product_registration', 'test_buyer', 'config_xml', 'testing', 'launch', 'all'

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of disclosing behavior. It does not state that this is a read-only informational tool, mention any prerequisites, or describe what the returned checklist looks like. The description only restates the tool's purpose without revealing side effects or limitations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long, directly states the tool's function, and includes a brief scope of content (initial setup to launch). Every sentence contributes meaningful information with no superfluous detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple single-parameter tool with no output schema, the description gives enough context to understand its purpose and scope. It could be more complete by explaining the structure of the checklist or any prerequisites, but given the tool's simplicity, it is largely sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema fully describes the single parameter 'stage' with an enum of all possible values, achieving 100% schema coverage. The description adds no extra meaning about the parameter beyond what the schema already provides, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool provides a step-by-step guide and checklist for Samsung Checkout development environment setup, from initial setup to testing and launch. This distinguishes it from siblings like lookup_api or troubleshoot, though it does not explicitly contrast with get_implementation_guide.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for anyone setting up the Samsung Checkout development environment, but it provides no explicit guidance on when to choose this over the sibling get_implementation_guide or other tools. No exclusions or alternative recommendations are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lookup_apiA

Samsung Checkout API 레퍼런스를 조회합니다. 클라이언트 Billing API(buyItem, getUserPurchaseList)와 DPI 서버 API(cont/list, invoice/list, cont/verify, cont/apply, subscription/cancel)의 파라미터, 사용법, 코드 예제를 제공합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
api_nameYes조회할 API 이름. 클라이언트: 'buyItem', 'getUserPurchaseList'. 서버: 'cont/list'(상품 목록), 'invoice/list'(구매 내역), 'cont/verify'(구매 검증), 'cont/apply'(상품 적용), 'subscription/cancel'(구독 취소). 묶음 조회: 'all_client', 'all_server', 'all'

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully disclose behavior. It clearly states the tool retrieves and provides API reference content, but it does not explain edge cases, response format, or any limitations. For a read-only lookup, this is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the main verb, and includes only relevant details about scope and deliverables. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter lookup tool with no output schema, the description sufficiently covers what the tool does and what it returns. Slightly more detail on response format could enhance completeness, but it is not necessary.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the api_name parameter includes descriptive enum values. The description adds context by grouping APIs into client and server categories and explaining the purpose of each server API, but most of this is also present in the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('조회합니다') and resource ('Samsung Checkout API 레퍼런스'), enumerates the covered APIs, and outlines the deliverable (parameters, usage, code examples). This differentiates it from sibling tools like get_code_snippet or get_implementation_guide, which target specific guides rather than full reference lookup.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when an agent needs Samsung Checkout API reference material, but it does not explicitly state when to prefer this over siblings like get_code_snippet or search_knowledge. The overlap in 'code examples' with get_code_snippet creates ambiguity, so guidance is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_knowledgeA

Samsung Checkout 전체 지식 베이스에서 키워드로 검색합니다. 모든 MD 문서를 대상으로 검색하여 관련 섹션의 원문을 반환합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes검색할 키워드 또는 질문. 예: 'OrderCustomID', 'Free Trial', '구독 해지'

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does disclose key behavior: keyword search, coverage of all MD documents, and return of original section text. It does not mention auth, rate limits, or result limits, but for a simple read-oriented search tool the core behavior is transparent and accurate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences: the first states the action and scope, the second states the return type. There is no waste, repetition, or irrelevant detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple search tool with one fully documented parameter and no output schema, the description adequately explains the search scope and return value (original text of relevant sections). It could add details like result ordering or count, but it is sufficiently complete for the tool's apparent complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter 'query' is fully documented in the schema with examples, giving 100% schema coverage. The description adds no additional parameter semantics, but because the schema handles the parameter description well, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb ('검색합니다' = searches) and names the exact resource (Samsung Checkout knowledge base, all MD documents). It also states what is returned (original text of relevant sections), clearly differentiating it from sibling tools like lookup_api or guide generators.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly defines the scope: searching the entire knowledge base across all MD documents, which implies a broad cross-document keyword search. However, it does not explicitly mention alternatives or when not to use this tool, so it does not fully meet the 5-level for explicit when/when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

troubleshootA

Samsung Checkout 개발 중 발생하는 에러를 진단하고 해결 방법을 안내합니다. 에러 코드, 메시지, 증상을 입력하면 원인과 해결책을 제공합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes에러 코드, 메시지, 또는 증상. 예: '0410424', 'CheckValue Invalid', 'Staging에서 되는데 PRD에서 안됨'

TDQS

A3.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It only states that it provides causes and solutions without revealing limitations, response format, or whether it relies on external services. It does not disclose any side effects, error handling, or data scope, leaving significant behavioral aspects unknown.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, containing only two sentences. The first sentence front-loads the main purpose, and the second explains input and output. No unnecessary information or repetition exists, making it well-structured and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with only one parameter and no output schema, the description adequately conveys the core functionality and expected input. It explains what happens (provides causes and solutions) and includes examples. While it lacks details on output structure or limitations, the simplicity of the tool keeps it mostly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides a 100% description coverage for the single 'query' parameter, including examples. The description adds no new parameter information but reinforces the expected input types (error code, message, symptom). Since schema coverage is high, a baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool diagnoses and resolves errors during Samsung Checkout development, with a specific verb ('진단하고 해결 방법을 안내합니다') and resource (Samsung Checkout errors). It distinguishes from sibling tools by focusing on troubleshooting rather than API lookup, guide generation, or code snippets, making its purpose immediately clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use by specifying inputs (error codes, messages, symptoms) and output (causes and solutions), giving clear context for the tool's use. However, it does not explicitly mention when not to use it or compare with alternatives like lookup_api or search_knowledge, so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 7 tool updatesv1.0.0
    • First observedgenerate_checkvalue_guide
    • First observedget_code_snippet
    • First observedget_implementation_guide
    • First observedget_setup_checklist
    • First observedlookup_api
    • First observedsearch_knowledge
    • First observedtroubleshoot

TDQS

A3.9/5.0

Scored across 7 tools

Disambiguation4/5

Each tool has a clearly defined purpose: API lookup, HMAC guide, implementation flow, troubleshooting, setup checklist, code snippets, and general search. However, lookup_api and get_code_snippet both provide code examples, and search_knowledge overlaps with all other tools by searching the entire knowledge base.

Naming Consistency4/5

Names follow a consistent snake_case action-first pattern (lookup_api, generate_checkvalue_guide, get_implementation_guide, etc.). 'troubleshoot' is a lone verb without an object, deviating slightly from the verb_noun pattern, but the overall style is predictable.

Tool Count5/5

Seven tools is well-scoped for a documentation/knowledge server dedicated to Samsung Checkout. Each tool covers a distinct aspect of the integration lifecycle without unnecessary bloat or gaps.

Completeness4/5

The tool set covers API reference, HMAC generation, implementation flows, troubleshooting, setup, and code snippets, which are the core needs for a Samsung Checkout integration. Missing a dedicated tool for testing/sandbox guidance, though setup checklist likely covers this, making it a minor gap.

Maintenance

ActivitySlowing
ResponsivenessNo issues

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

Related MCP Servers