DEV Community

FlashMCP
FlashMCP

Posted on

Stop Building MCP Servers. Use a URL Instead.

Every time you want your LLM to interact with an external API via MCP, you write something like this:

import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";

const server = new McpServer({ name: "my-api", version: "1.0" });

server.tool("listUsers", "List all users", { page: z.number() }, async ({ page }) => {
  const res = await fetch(`https://api.example.com/users?page=${page}`);
  const data = await res.json();
  return { content: [{ type: "text", text: JSON.stringify(data) }] };
});

// ... repeat for every endpoint
// ... handle auth forwarding
// ... deploy somewhere
// ... maintain forever
Enter fullscreen mode Exit fullscreen mode

For ONE API. Now multiply that by every API you want to connect.

There's a better way

FlashMCP is a hosted gateway that does all of this automatically. Your entire config:

{
  "mcpServers": {
    "my-api": {
      "url": "https://flashmcp.dev/api.example.com"
    }
  }
}
Enter fullscreen mode Exit fullscreen mode

Done. FlashMCP:

  1. Auto-discovers the OpenAPI spec (via apis.guru, HTTP Link headers, or .well-known/api-catalog)
  2. Parses every endpoint into MCP tool definitions
  3. Resolves complex $ref chains (including circular references)
  4. Proxies your calls to the upstream API
  5. Returns properly typed MCP content blocks (text, images, audio)

Try it in 60 seconds

Option A: Playground (no signup)

Go to flashmcp.dev/playground and try any API interactively.

Option B: Claude Desktop

Add this to your claude_desktop_config.json:

{
  "mcpServers": {
    "petstore": {
      "url": "https://flashmcp.dev/petstore3.swagger.io/api/v3?spec=/api/v3/openapi.json"
    }
  }
}
Enter fullscreen mode Exit fullscreen mode

Restart Claude Desktop. Ask: "What tools do you have for the pet store?"

It just works.

Option C: Cursor

Same config in your Cursor MCP settings. Every endpoint becomes a tool your AI can call.

Connecting authenticated APIs

FlashMCP forwards standard auth headers to the upstream API:

{
  "mcpServers": {
    "github": {
      "url": "https://flashmcp.dev/api.github.com",
      "headers": {
        "Authorization": "Bearer ghp_your_token"
      }
    }
  }
}
Enter fullscreen mode Exit fullscreen mode

Your LLM can now create repos, open issues, merge PRs — whatever the GitHub API supports.

100,000+ APIs ready to go

Browse the full gallery at flashmcp.dev/gallery. Stripe, Twilio, Shopify, Notion, Discord, Slack — if it has an OpenAPI spec, it's there.

Pricing

  • Free: 1,000 requests/month
  • Paid: $1 per 1,000 requests (prepaid credits, no subscription)

Only actual tool calls (API requests) count. Protocol messages like initialize and tools/list are always free.


FlashMCP | Playground | Gallery | Docs

Top comments (0)