CPN 한국어 자습서 · 외부 문서 한국어 미러
MCP 문서 · Specification
Schema Reference · 원문: modelcontextprotocol.io/specification/2025-11-25/schema
아래는 원문을 한국어로 옮긴 미러입니다. 코드·명령은 원문 그대로이며, 가장 최신 정보는 하단 원문 링크에서 확인하세요.
JSONRPCErrorResponse오류가 발생했음을 나타내는 요청에 대한 응답입니다.
interface JSONRPCErrorResponse {
jsonrpc: "2.0";
id?: RequestId;
error: Error;
}
JSONRPCMessage와이어에서 디코딩하거나 전송을 위해 인코딩할 수 있는 유효한 JSON-RPC 객체를 나타냅니다.
type JSONRPCMessage = JSONRPCRequest | JSONRPCNotification | JSONRPCResponse
JSONRPCNotification응답을 기대하지 않는 알림입니다.
interface JSONRPCNotification {
method: string;
params?: { [key: string]: any };
jsonrpc: "2.0";
}
JSONRPCRequest응답을 기대하는 요청입니다.
interface JSONRPCRequest {
method: string;
params?: { [key: string]: any };
jsonrpc: "2.0";
id: RequestId;
}
JSONRPCResponse결과 또는 오류를 포함하는 요청에 대한 응답입니다.
type JSONRPCResponse = JSONRPCResultResponse | JSONRPCErrorResponse
JSONRPCResultResponse요청에 대한 성공적인(오류 없는) 응답입니다.
interface JSONRPCResultResponse {
jsonrpc: "2.0";
id: RequestId;
result: Result;
}
Annotations클라이언트를 위한 선택적 어노테이션입니다. 클라이언트는 어노테이션을 사용하여 객체가 어떻게 사용되거나 표시되는지 알 수 있습니다.
interface Annotations {
audience?: Role[];
priority?: number;
lastModified?: string;
}
Cursor페이지네이션을 위한 커서(cursor)를 나타내는 불투명 토큰입니다.
type Cursor = string
EmptyResult성공을 나타내지만 데이터를 포함하지 않는 응답입니다.
type EmptyResult = Result
Errorinterface Error {
code: number;
message: string;
data?: unknown;
}
Icon사용자 인터페이스에 표시할 수 있는 선택적 크기의 아이콘입니다.
interface Icon {
src: string;
mimeType?: string;
sizes?: string[];
theme?: "light" | "dark";
}
LoggingLevel로그 메시지의 심각도입니다 (syslog RFC-5424에 매핑).
type LoggingLevel = | "debug" | "info" | "notice" | "warning" | "error" | "critical" | "alert" | "emergency"
ProgressToken진행 알림을 원래 요청과 연결하는 데 사용되는 진행 토큰입니다.
type ProgressToken = string | number
RequestIdJSON-RPC에서 요청을 고유하게 식별하는 ID입니다.
type RequestId = string | number
Resultinterface Result {
_meta?: { [key: string]: unknown };
[key: string]: unknown;
}
Role대화에서 메시지와 데이터의 발신자 또는 수신자입니다.
type Role = "user" | "assistant"
AudioContentLLM에서 제공되거나 LLM으로 전달되는 오디오입니다.
interface AudioContent {
type: "audio";
data: string;
mimeType: string;
annotations?: Annotations;
_meta?: { [key: string]: unknown };
}
BlobResourceContentsinterface BlobResourceContents {
uri: string;
mimeType?: string;
_meta?: { [key: string]: unknown };
blob: string;
}
ContentBlocktype ContentBlock = | TextContent | ImageContent | AudioContent | ResourceLink | EmbeddedResource
EmbeddedResource프롬프트(prompt) 또는 도구 호출 결과에 포함된 리소스(resource)의 내용입니다.
interface EmbeddedResource {
type: "resource";
resource: TextResourceContents | BlobResourceContents;
annotations?: Annotations;
_meta?: { [key: string]: unknown };
}
ImageContentLLM에서 제공되거나 LLM으로 전달되는 이미지입니다.
interface ImageContent {
type: "image";
data: string;
mimeType: string;
annotations?: Annotations;
_meta?: { [key: string]: unknown };
}
ResourceLink프롬프트(prompt) 또는 도구 호출 결과에 포함된, 서버가 읽을 수 있는 리소스(resource)입니다.
interface ResourceLink {
icons?: Icon[];
name: string;
title?: string;
uri: string;
description?: string;
mimeType?: string;
annotations?: Annotations;
size?: number;
_meta?: { [key: string]: unknown };
type: "resource_link";
}
TextContentLLM에서 제공되거나 LLM으로 전달되는 텍스트입니다.
interface TextContent {
type: "text";
text: string;
annotations?: Annotations;
_meta?: { [key: string]: unknown };
}
TextResourceContentsinterface TextResourceContents {
uri: string;
mimeType?: string;
_meta?: { [key: string]: unknown };
text: string;
}
completion/completeCompleteRequest완성 옵션을 요청하기 위한 클라이언트에서 서버로의 요청입니다.
interface CompleteRequest {
jsonrpc: "2.0";
id: RequestId;
method: "completion/complete";
params: CompleteRequestParams;
}
CompleteRequestParamsinterface CompleteRequestParams {
_meta?: { progressToken?: ProgressToken; [key: string]: unknown };
ref: PromptReference | ResourceTemplateReference;
argument: { name: string; value: string };
context?: { arguments?: { [key: string]: string } };
}
CompleteResultcompletion/complete 요청에 대한 서버의 응답입니다.
interface CompleteResult {
_meta?: { [key: string]: unknown };
completion: {
values: string[];
total?: number;
hasMore?: boolean;
};
[key: string]: unknown;
}
PromptReference프롬프트(prompt)를 식별합니다.
interface PromptReference {
name: string;
title?: string;
type: "ref/prompt";
}
ResourceTemplateReference리소스(resource) 또는 리소스 템플릿 정의에 대한 참조입니다.
interface ResourceTemplateReference {
type: "ref/resource";
uri: string;
}
elicitation/createElicitRequest클라이언트를 통해 사용자로부터 추가 정보를 요청하기 위한 서버의 요청입니다.
interface ElicitRequest {
jsonrpc: "2.0";
id: RequestId;
method: "elicitation/create";
params: ElicitRequestParams;
}
ElicitRequestParamstype ElicitRequestParams = ElicitRequestFormParams | ElicitRequestURLParams
ElicitResult정보 요청에 대한 클라이언트의 응답입니다.
interface ElicitResult {
_meta?: { [key: string]: unknown };
action: "accept" | "decline" | "cancel";
content?: { [key: string]: string | number | boolean | string[] };
[key: string]: unknown;
}
"accept", "decline", "cancel")"accept"이고 mode가 "form"인 경우에만 존재합니다.ElicitRequestFormParams클라이언트의 폼을 통해 비민감 정보를 요청하기 위한 파라미터입니다.
interface ElicitRequestFormParams {
task?: TaskMetadata;
_meta?: { progressToken?: ProgressToken; [key: string]: unknown };
mode?: "form";
message: string;
requestedSchema: {
$schema?: string;
type: "object";
properties: { [key: string]: PrimitiveSchemaDefinition };
required?: string[];
};
}
ElicitRequestURLParams클라이언트의 URL을 통해 정보를 요청하기 위한 파라미터입니다.
interface ElicitRequestURLParams {
task?: TaskMetadata;
_meta?: { progressToken?: ProgressToken; [key: string]: unknown };
mode: "url";
message: string;
elicitationId: string;
url: string;
}
참고: 이 스키마 레퍼런스 페이지는 일부 내용만 포함하고 있습니다. 완전한 스키마는 공식 MCP 명세 https://modelcontextprotocol.io/specification/2025-11-25/schema 를 참고하세요.
원문(영어): https://modelcontextprotocol.io/specification/2025-11-25/schema · 본 문서는 학습용 한국어 번역이며 원본의 권리는 원저작자(Model Context Protocol)에게 있습니다.
원문(영어): https://modelcontextprotocol.io/specification/2025-11-25/schema