Track MCP LogoTrack MCP
Track MCP LogoTrack MCP

The world's largest repository of Model Context Protocol servers. Discover, explore, and submit MCP tools.

Product

  • Categories
  • Top MCP
  • New & Updated
  • Submit MCP

Company

  • About

Legal

  • Privacy Policy
  • Terms of Service
  • Cookie Policy

© 2026 TrackMCP. All rights reserved.

Built with ❤️ by Krishna Goyal

    Openapi2mcptools

    OpenAPI specifications => MCP (Model Context Protocol) tools

    19 stars
    TypeScript
    Updated Oct 23, 2025
    mcp
    mcp-server
    mcp-tools
    modelcontextprotocol
    openapi

    Table of Contents

    • Usage
    • Custom client

    Table of Contents

    • Usage
    • Custom client

    Documentation

    OPENAPI Specifications => MCP (Model Context Protocol) Tools

    • 🔧 An utility library for converting OpenAPI specifications to MCP tools.
    • 🚀 Faster the development of MCP servers based on OPENAPI specifications.

    Usage

    ts
    import { Server } from '@modelcontextprotocol/sdk/server/index.js';
    import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
    import {
      CallToolRequestSchema,
      ListToolsRequestSchema,
    } from '@modelcontextprotocol/sdk/types.js';
    import { Converter } from 'openapi2mcptools';
    
    const converter = new Converter({
      baseURL, // optional
      httpClient // optional
    });
    await converter.load({
      // specs
    });
    const tools = converter.getToolsList();
    const toolCaller = converter.getToolsCaller();
    
    const server = new Server(
      {
        name: 'mcp-server-openapi',
        version: '1.0.0',
      },
      {
        capabilities: {
          tools: {},
        },
      },
    );
    
    // Define available tools
    server.setRequestHandler(ListToolsRequestSchema, async () => {
      return {
        tools,
      };
    });
    
    // Handle tool execution
    server.setRequestHandler(CallToolRequestSchema, async (request) => {
      return await toolCaller(request);
    });
    
    const transport = new StdioServerTransport();
    await server.connect(transport);

    Custom client

    Set baseURL, headers, etc for http client.

    ts
    export type RequestConfig = {
      url?: string;
      method?: string;
      headers?: any;
      params?: any;
      data?: any;
    }
    
    export interface HTTPClient {
      request: (requestConfig: RequestConfig) => Promise;
    }

    Example:

    ts
    import axios from axios;
    import { Converter } from 'openapi2mcptools';
    
    const converter = new Converter({
      httpClient: axios
    });

    Similar MCP

    Based on tags & features

    • MC

      Mcp Open Library

      TypeScript·
      42
    • MC

      Mcp Ipfs

      TypeScript·
      11
    • LI

      Liveblocks Mcp Server

      TypeScript·
      11
    • MC

      Mcpjungle

      Go·
      617

    Trending MCP

    Most active this week

    • PL

      Playwright Mcp

      TypeScript·
      22.1k
    • SE

      Serena

      Python·
      14.5k
    • MC

      Mcp Playwright

      TypeScript·
      4.9k
    • MC

      Mcp Server Cloudflare

      TypeScript·
      3.0k
    View All MCP Servers

    Similar MCP

    Based on tags & features

    • MC

      Mcp Open Library

      TypeScript·
      42
    • MC

      Mcp Ipfs

      TypeScript·
      11
    • LI

      Liveblocks Mcp Server

      TypeScript·
      11
    • MC

      Mcpjungle

      Go·
      617

    Trending MCP

    Most active this week

    • PL

      Playwright Mcp

      TypeScript·
      22.1k
    • SE

      Serena

      Python·
      14.5k
    • MC

      Mcp Playwright

      TypeScript·
      4.9k
    • MC

      Mcp Server Cloudflare

      TypeScript·
      3.0k