UNPKG

xmcp

Version:

The TypeScript MCP framework

104 lines (103 loc) • 2.63 kB
export type McpUiDisplayMode = "inline" | "fullscreen" | "pip"; export interface McpHostCallToolParams { name: string; arguments?: Record<string, unknown>; } export interface McpHostOpenLinkParams { url: string; } export interface McpHostRequestDisplayModeParams { mode: McpUiDisplayMode; } export interface McpHostRequestDisplayModeResult { mode: McpUiDisplayMode | string; } export interface McpHostSendMessageParams { role?: string; content: unknown; [key: string]: unknown; } export interface McpHostUpdateModelContextParams { content?: unknown; role?: string; [key: string]: unknown; } export interface McpHostToolContentItem { type: string; text?: string; [key: string]: unknown; } export interface McpHostToolResult { content?: McpHostToolContentItem[]; structuredContent?: unknown; isError?: boolean; [key: string]: unknown; } export interface McpHostResourceContentItem { uri?: string; mimeType?: string; text?: string; blob?: string; [key: string]: unknown; } export interface McpHostReadResourceResult { contents?: McpHostResourceContentItem[]; [key: string]: unknown; } export interface McpHostMessageResult { role?: string; content?: unknown; [key: string]: unknown; } export interface McpHostModelContextResult { ok?: boolean; [key: string]: unknown; } export interface McpHostContainerDimensions { width?: number; height?: number; } export interface McpHostStyleContext { variables?: Record<string, string>; css?: { fonts?: string[]; [key: string]: unknown; }; [key: string]: unknown; } export interface McpHostContext { theme?: string; displayMode?: McpUiDisplayMode | string; locale?: string; timeZone?: string; platform?: string; availableDisplayModes?: McpUiDisplayMode[]; containerDimensions?: McpHostContainerDimensions; safeAreaInsets?: { top?: number; right?: number; bottom?: number; left?: number; }; toolInfo?: Record<string, unknown>; deviceCapabilities?: Record<string, unknown>; styles?: McpHostStyleContext; [key: string]: unknown; } export interface McpHostCapabilities { serverTools?: { listChanged?: boolean; call?: boolean; }; serverResources?: { listChanged?: boolean; read?: boolean; }; openLinks?: boolean; updateModelContext?: boolean | string[]; message?: boolean; logging?: boolean; downloadFile?: boolean; sandbox?: Record<string, unknown>; [key: string]: unknown; }