import type { Readable, Writable } from "node:stream"; import type { CallToolResult, ListPromptsResult, ListResourcesResult, ListResourceTemplatesResult, ListToolsResult, McpServer, ReadResourceResult, ServerCapabilities } from "@modelcontextprotocol/server"; import { CATALOG_ONLY_ERROR_CODE } from "./catalog-contract.js"; import { type McpPolicyCompletionBinding } from "./mcp-completions.js"; import { MCP_APP_EXTENSION_ID, MCP_PLAN_REVIEW_APP_MIME_TYPE, MCP_PLAN_REVIEW_APP_URI } from "./mcp-plan-review-app.js"; import { type McpToolAccessManifest, type McpToolAccessStage } from "./mcp-tool-catalog.js"; import { type DiscordRestMethod, type McpToolRiskClass } from "./observability-catalog.js"; export declare const CATALOG_EVIDENCE_FORMAT = "guildcontrol.catalog-evidence.v3"; export interface DiscordCatalogCheckReport { accessStageCounts: Record; activityRecordsCreated: false; completionBindingCount: number; completionBindings: McpPolicyCompletionBinding[]; policyCompletionValuesExposed: false; contractDigest: string; credentialsRequired: false; discordExecution: "disabled"; evidenceFormat: typeof CATALOG_EVIDENCE_FORMAT; executionGuard: typeof CATALOG_ONLY_ERROR_CODE; gateway: "disabled"; observabilityExport: "disabled"; planReviewApp: { externalNetworkDomains: []; extensionId: typeof MCP_APP_EXTENSION_ID; htmlDigest: string; linkedToolCount: number; linkedToolNames: string[]; mimeType: typeof MCP_PLAN_REVIEW_APP_MIME_TYPE; permissions: []; resourceDigest: string; resourceUri: typeof MCP_PLAN_REVIEW_APP_URI; serverToolAuthority: false; toolVisibility: ["model"]; }; promptCount: number; promptNames: string[]; resourceCount: number; resourceTemplateCount: number; resourceTemplateUris: string[]; resourceUris: string[]; restMethodCounts: Record; restOperationCount: number; riskClassCounts: Record; safetyResourceDigest: string; schemaVersion: number; serverName: string; serverVersion: string; status: "ok"; toolCount: number; toolAccessManifest: McpToolAccessManifest; toolAccessResourceDigest: string; toolNames: string[]; toolsetNames: string[]; } export interface DiscordCatalogSnapshot { executionGuard: CallToolResult; instructions: string; prompts: ListPromptsResult["prompts"]; planReviewAppResource: ReadResourceResult; report: DiscordCatalogCheckReport; resourceTemplates: ListResourceTemplatesResult["resourceTemplates"]; resources: ListResourcesResult["resources"]; safetyResource: ReadResourceResult; serverCapabilities: ServerCapabilities; tools: ListToolsResult["tools"]; toolAccessResource: ReadResourceResult; } export interface DiscordCatalogRunOptions { stderr?: Pick; stdin?: Readable; stdout?: Writable; } export { CATALOG_ONLY_ERROR_CODE } from "./catalog-contract.js"; export declare function createDiscordCatalogServer(): McpServer; export declare function inspectDiscordCatalog(): Promise; export declare function checkDiscordCatalog(): Promise; export declare function runGuildControlCatalog(options?: DiscordCatalogRunOptions): import("@modelcontextprotocol/server/stdio").StdioServerHandle; //# sourceMappingURL=catalog.d.ts.map