@juspay/neurolink
Version:
Universal AI Development Platform with working MCP integration, multi-provider support, voice (TTS/STT/realtime), and professional CLI. 58+ external MCP servers discoverable, multimodal file processing, RAG pipelines. Build, test, and deploy AI applicatio
41 lines (40 loc) • 1.52 kB
TypeScript
/**
* MCP Output Normalizer Types (canonical location)
*
* Types for the large MCP response handling system.
*
* @module types/mcpOutputTypes
*/
/**
* Two honest strategies for oversized MCP tool outputs:
* - "inline" Full payload always sent to the model (warning logged above warnBytes).
* - "externalize" Full payload stored as an artifact; model receives a compact
* surrogate with head/tail preview and an artifact ID it can
* resolve via retrieve_context with offset/limit pagination.
*/
export type McpOutputStrategy = "inline" | "externalize";
/** Configuration for McpOutputNormalizer. */
export type McpOutputNormalizerConfig = {
strategy: McpOutputStrategy;
/** Byte ceiling above which the strategy fires. */
maxBytes: number;
/** Bytes at which a warning is emitted while still inline. */
warnBytes: number;
};
/** Contextual info passed alongside the raw MCP callResult. */
export type McpOutputContext = {
toolName: string;
serverId: string;
sessionId?: string;
};
/** Value returned by McpOutputNormalizer.normalize(). */
export type NormalizedMcpOutput = {
/** The result to substitute for the raw callResult. May be a surrogate. */
result: unknown;
/** Whether the full payload was written to the artifact store. */
isExternalized: boolean;
/** Artifact ID when isExternalized === true. */
artifactId?: string;
/** Serialized byte size of the original payload. */
originalBytes: number;
};