Skip to main content

CHANGELOG

Changelog

All notable changes to MCP Generator will be documented in this file.

[0.1.0] - 2026-01-29

Added

Core Features

  • OpenAPI Scanner: Recursive scanning for OpenAPI 3.1 specifications
  • MCP Tool Generator: Converts OpenAPI operations to MCP tool definitions
  • Registry Builder: Organizes tools by service with multiple export formats
  • CLI: Full command-line interface with interactive feedback

Scanner Features

  • Glob pattern matching for file discovery
  • YAML parsing with validation
  • Service name extraction from spec or path
  • Operation counting and statistics
  • Error collection with graceful degradation

Generator Features

  • Operation to MCP tool mapping
  • Input schema generation from parameters and requestBody
  • Handler function templates
  • Authentication extraction (apiKey, bearer, basic, oauth2)
  • Metadata generation with full operation context

Registry Features

  • Service-based tool organization
  • TypeScript export (registry.ts + service modules)
  • JSON export for runtime use
  • Statistics and querying APIs
  • Tool lookup by name

CLI Commands

  • scan - Scan directory for OpenAPI specifications
  • generate - Generate MCP tools from specs
  • list - List all generated tools
  • validate - Validate OpenAPI specifications

Documentation

  • Comprehensive README with examples
  • Quick Start guide
  • Architecture documentation
  • Usage examples
  • API documentation

Testing

  • Unit tests for Scanner, Generator, Registry
  • Integration tests for end-to-end flows
  • 80%+ code coverage target
  • Jest configuration with TypeScript support

Type Safety

  • Full TypeScript implementation
  • Strict mode enabled
  • Exported type definitions
  • Runtime type validation where needed

Technical Details

Dependencies

  • openapi-typescript@^7.4.3 - OpenAPI parsing
  • yaml@^2.7.0 - YAML parsing
  • zod@^3.24.1 - Schema validation
  • commander@^12.1.0 - CLI framework
  • chalk@^5.4.1 - Terminal colors
  • ora@^8.1.1 - Progress spinners
  • glob@^11.0.0 - File pattern matching
  • ts-morph@^24.0.0 - Code generation

Build System

  • TypeScript 5.7.3 with strict mode
  • ES2022 target
  • CommonJS modules
  • Source maps and declarations
  • Jest for testing

File Structure

mcp-generator/
├── src/
│   ├── types.ts        # Core type definitions
│   ├── scanner.ts      # OpenAPI scanner
│   ├── generator.ts    # MCP tool generator
│   ├── registry.ts     # Registry builder
│   ├── cli.ts          # CLI interface
│   └── index.ts        # Main exports
├── tests/
│   ├── scanner.test.ts
│   ├── generator.test.ts
│   └── registry.test.ts
├── examples/
│   ├── basic-usage.ts
│   ├── custom-handler.ts
│   └── service-specific.ts
└── docs/
    ├── README.md
    ├── QUICKSTART.md
    └── ARCHITECTURE.md

Known Issues

  • Handler functions are templates only (no HTTP client implemented)
  • OpenAPI 3.0.x support not tested
  • Swagger 2.0 not supported
  • Large specs (>1000 operations) may be slow

Breaking Changes

None (initial release)

[Unreleased]

Planned Features

  • HTTP client implementation in handlers
  • OpenAPI 3.0.x compatibility testing
  • Swagger 2.0 conversion
  • GraphQL schema support
  • Custom template system
  • Plugin architecture
  • Hot reload for development
  • Distributed registry support
  • Versioning and migration tools

Version Format

This project follows Semantic Versioning:

  • MAJOR version for incompatible API changes
  • MINOR version for new functionality (backwards compatible)
  • PATCH version for bug fixes (backwards compatible)

Release Process

  1. Update version in package.json
  2. Update CHANGELOG.md
  3. Commit changes
  4. Create git tag
  5. Push to registry
  6. Publish to npm