UNPKG

@himorishige/noren-core

Version:

Core PII detection, masking, and tokenization library built on Web Standards

65 lines 2.25 kB
import type { Registry } from './index.js'; import type { Policy } from './types.js'; /** * JSON-RPC message structure for MCP */ export interface JsonRpcMessage { jsonrpc: '2.0'; id?: string | number | null; method?: string; params?: unknown; result?: unknown; error?: { code: number; message: string; data?: unknown; }; } /** * Options for MCP redaction processing */ export interface MCPRedactionOptions { /** Registry for PII detection */ registry: Registry; /** Policy overrides for redaction */ policy?: Policy; /** Whether to preserve JSON-RPC structure integrity */ preserveStructure?: boolean; /** Whether to redact only specific JSON paths */ targetPaths?: string[]; /** Buffer size for line-based processing */ lineBufferSize?: number; } /** * Parse line-delimited JSON messages commonly used in MCP */ export declare function parseJsonLines(text: string): JsonRpcMessage[]; /** * Validate JSON-RPC message structure */ export declare function isValidJsonRpcMessage(obj: unknown): obj is JsonRpcMessage; /** * Extract potentially sensitive content from JSON-RPC message */ export declare function extractSensitiveContent(message: JsonRpcMessage): string[]; /** * Redact PII from JSON-RPC message while preserving structure */ export declare function redactJsonRpcMessage(message: JsonRpcMessage, options: Pick<MCPRedactionOptions, 'registry' | 'policy'>): Promise<JsonRpcMessage>; /** * Create a transform stream for MCP line-delimited JSON processing */ export declare function createMCPRedactionTransform(options: MCPRedactionOptions): TransformStream<Uint8Array<ArrayBufferLike>, Uint8Array<ArrayBufferLike>>; /** * Utility to check if text contains JSON-RPC patterns */ export declare function containsJsonRpcPattern(text: string): boolean; /** * Extract method names from JSON-RPC requests for logging/monitoring */ export declare function extractMethodName(message: JsonRpcMessage): string | null; /** * Check if message is a request, response, or notification */ export declare function getMessageType(message: JsonRpcMessage): 'request' | 'response' | 'notification' | 'error'; //# sourceMappingURL=mcp-utils.d.ts.map