응답 형식
MCP 도구 응답은 ok, tool, api_version, data, summary, meta를 포함합니다. summary는 IDE 채팅 표시용으로 항상 포함됩니다.
성공 응답
summary는 항상 포함되며, IDE 채팅에 바로 표시할 수 있는 한국어 한 줄입니다. data는 구조화 JSON, meta는 페이지네이션 등 부가 정보입니다.
json
{
"ok": true,
"tool": "qnector_product_search",
"api_version": "2026-06-26",
"data": {
"matches": [
{
"id": "product-uuid",
"prod_code": "SKU-001",
"prod_name": "사과 5kg",
"price": 15000,
"quantity": 120
}
]
},
"summary": "품목 1건: SKU-001 사과 5kg",
"meta": { "page": 1, "limit": 20, "total": 1 }
}오류 응답
실패 시 ok: false와 code, message를 반환합니다. 레이트 리밋 시 retry_after가 포함될 수 있습니다.
구분설명
oauth_expired
토큰 만료 — qnector_login 재실행
oauth_insufficient_scope
스코프 부족
api_access_denied
플랜·권한 없음
result_set_too_large
목록 결과가 너무 큼 — page/limit·필터 축소 (REST와 동일)
rate_limit_exceeded
분당 한도 초과 — retry_after 후 재시도
json
{
"ok": false,
"code": "oauth_insufficient_scope",
"message": "이 도구에 필요한 스코프가 없습니다. mcp:products:read 동의가 필요합니다."
}호출량·안전
- 레이트 리밋은 seller 버킷으로 OAuth·API 키가 동일합니다.
- _summary 계열은 내부 REST를 여러 번 호출해도 MCP 1회로 카운트합니다.
- 쓰기 도구는 confirm: true 없으면 dry-run만 수행합니다.
- 감사 로그에 source: mcp, oauth_client_id가 기록됩니다.
