mcp-swagger-parser
Version:
Enterprise-grade OpenAPI/Swagger specification parser for Model Context Protocol (MCP) projects
69 lines • 2.92 kB
TypeScript
/**
* @fileoverview MCP Swagger Parser - OpenAPI/Swagger specification parser for Model Context Protocol
* @version 1.0.0
* @author MCP Swagger Team
* @license MIT
*/
export * from './types/index';
export * from './core/parser';
export * from './core/validator';
export * from './core/normalizer';
export * from './core/version-detector';
export * from './core/swagger2openapi-converter';
export * from './parsers/base-parser';
export * from './parsers/url-parser';
export * from './parsers/file-parser';
export * from './parsers/text-parser';
export * from './extractors/index';
export * from './utils/index';
export * from './errors/index';
import { type TransformerOptions } from './transformer/index';
import type { ParserConfig } from './types/index';
export declare const parseFromFile: (filePath: string, config?: ParserConfig) => Promise<import("./types/output").ParseResult>;
export declare const parseFromUrl: (url: string, config?: ParserConfig) => Promise<import("./types/output").ParseResult>;
export declare const parseFromString: (content: string, config?: ParserConfig) => Promise<import("./types/output").ParseResult>;
export { transformToMCPTools, OpenAPIToMCPTransformer } from './transformer/index';
export type { MCPTool, MCPToolResponse, TransformerOptions, CustomHeaders, RequestContext } from './transformer/types';
export type { AuthConfig, AuthManager, BearerConfig, ApiKeyConfig, BasicConfig, OAuth2Config, CustomConfig } from './auth/types';
export { BearerAuthManager } from './auth/bearer-auth';
export { CustomHeadersManager, predefinedGenerators } from './headers/index';
/**
* High-level convenience function to parse and transform OpenAPI spec in one step
*
* @param source - File path, URL, or string content
* @param options - Parser and transformer options
* @returns Promise resolving to MCP tools array
*
* @example
* ```typescript
* // From file
* const tools = await parseAndTransform('/path/to/swagger.json');
*
* // From URL with options
* const tools = await parseAndTransform('https://api.example.com/swagger.json', {
* parserConfig: { strictMode: false },
* transformerOptions: { baseUrl: 'https://api.example.com' }
* });
*
* // From string
* const swaggerJson = '{"openapi": "3.0.0", ...}';
* const tools = await parseAndTransform(swaggerJson, { isString: true });
* ```
*/
export declare function parseAndTransform(source: string, options?: {
isString?: boolean;
isUrl?: boolean;
parserConfig?: ParserConfig;
transformerOptions?: TransformerOptions;
}): Promise<import("./transformer/types").MCPTool[]>;
/**
* Package metadata
*/
export declare const VERSION = "1.0.0";
export declare const PACKAGE_NAME = "mcp-swagger-parser";
/**
* Default configurations
*/
export declare const DEFAULT_PARSER_CONFIG: ParserConfig;
export declare const DEFAULT_TRANSFORMER_OPTIONS: TransformerOptions;
//# sourceMappingURL=index.d.ts.map