Skip to content

Compare

Compared with the products you would actually consider.

What each product does and how well, checked against its own docs, repositories and issue trackers. We say where we are stronger and where we are not. Last checked: 9 November 2026.

Hosted MCP for your API

You have a REST API and OpenAPI file, and want your customers' AI apps to use it. A dash means the sources we read do not say.

ProductCustomers sign in withRolesHostingAlso generates
Deemwar MCPYour own login (redirect, password relay, token exchange, SSO)From your token's role claimHostedCLI, skill, plugin, widget
ScalarOAuth by email or domain, or each customer's own API key[1][2]Access groups[1]Hosted, own subdomain[1][3]Docs MCP[3]
Speakeasy (Gram)OAuth 2.1, identity-provider sync[4]Team, server, tool level[4]Hosted; open source[4]Skills, plugins[4]
Postman--You run it locally[7]-
ComposioEach user's own app accounts[8]Allowed-tools list[8]Hosted[8]-
PipedreamConnect: users link app accounts[9]-Hosted[9]-
Zapier MCPYour Zapier account[10]Workspace controls[10]Hosted[10]-
Cloudflare WorkersYou build the OAuth server[11]In your code[11]Your Workers account[11]-
FastMCP from_openapiNo end-user sign-in[12]Build-time route maps[12]You run it[12]-
ZuploOAuth, API keys or JWT[13]-Edge-hosted[13]Audit log per call[13]
Mintlify (docs MCP)Public docs: none; private: OAuth[14]User groups[14]Hosted[14]Docs search only[14]

Details by product

›Deemwar MCP
How end users sign in
Your customers sign in with your own login: redirect, password relay, token exchange or SSO (Google, Microsoft, Firebase, any OIDC). Their token stays in our vault; the AI gets a token we mint.
Per-role access
Role claim from the user's own token mapped to operations; others are hidden from search and rejected on call.
Output and hosting
Hosted MCP, plus a branded CLI, agent skill, Claude plugin and chat widget from one source. Hosted only.
Tool shape
Five tools (overview, search_tools, call_read_operation, call_write_operation, ask_docs), however large the API.
Risky operations
Reads and writes use separate tools with read-only and destructive hints; marked operations need a single-use confirm token.
Docs answers
ask_docs returns cited passages from your docs.
›Scalar
How end users sign in
OAuth for outside users, gated by email or domain; team members use a token. Upstream credentials stay server-side (shared, per access group or caller-supplied). Can pass sign-in through to your own OAuth server, or forward each customer's own API key.[1][2]
Per-role access
Access groups; each operation is set to Search or Execute.[1]
Output and hosting
Hosted at mcp.scalar.com, optionally on your own subdomain, plus a docs MCP. Pro plan and above. No self-host.[1][3]
Tool shape
Small fixed set of tools; operation detail is fetched when needed.[1]
Risky operations
Search-only operations never call the API. No confirmation step is described.[1]
Docs answers
Docs MCP with search and read tools.[3]
›Speakeasy (Gram)
How end users sign in
OAuth 2.1 with RBAC and identity-provider sync (Okta, Azure AD, Google Workspace); a passthrough mode for an external OAuth server.[4][5]
Per-role access
Team, server and tool-level permissions.[4]
Output and hosting
Hosted MCP servers; also distributes skills and plugins. Open source (AGPL-3.0); the README documents local development only.[4]
Tool shape
One tool per operation by default, narrowed with scopes; optional code mode.[6]
›Postman
Output and hosting
Generates a server from requests in public workspaces of the Postman API Network; you download it and run it locally (stdio or streamable HTTP).[7]
Tool shape
One tool per selected request.[7]
›Composio
How end users sign in
Each end user connects their own third-party accounts through Composio's managed auth; the MCP URL is generated per user ID.[8]
Per-role access
Per-server allowed_tools list.[8]
Output and hosting
Composio-hosted endpoint; an API-key header is required by default.[8]
Tool shape
Named tools per prebuilt app toolkit (such as GMAIL_FETCH_EMAILS), or dynamic sessions.[8]
›Pipedream
How end users sign in
Pipedream Connect: your app passes an external user ID and users connect their app accounts by link or button.[9]
Output and hosting
Hosted at remote.mcp.pipedream.net. Custom tools can be published to your workspace.[9]
Tool shape
One server per app, each with its own tools.[9]
›Zapier MCP
How end users sign in
You sign in to your Zapier account (OAuth in most clients); Zapier holds the app credentials.[10]
Per-role access
Workspace access controls, user permissions and audit history.[10]
Output and hosting
Zapier-hosted over its app catalog (9,000+ apps, 40,000+ actions). Each successful call uses two tasks.[10]
Tool shape
Actions you choose (managed mode) or that the AI finds (agentic mode).[10]
›Cloudflare Workers
How end users sign in
You build it: an OAuth server and resource server with workers-oauth-provider; users sign in through GitHub, Google, Cloudflare Access or another identity provider.[11]
Per-role access
Your code can limit tools by permission with getMcpAuthContext().[11]
Output and hosting
Whatever you write, deployed to your own Workers account at /mcp.[11]
Tool shape
Whatever you define.[11]
Risky operations
Your code.
Docs answers
Your code.
›FastMCP from_openapi
How end users sign in
No end-user sign-in: one credential on the HTTP client you configure; callers' Authorization and Cookie headers are not forwarded.[12]
Per-role access
Route maps include or exclude operations at build time.[12]
Output and hosting
A Python server you run yourself.[12]
Tool shape
One tool per endpoint by default. Its docs advise curating rather than mirroring a large API.[12]
›Zuplo
How end users sign in
OAuth, API keys or JWT on your gateway; serves OAuth resource metadata so MCP clients find your auth server.[13]
Output and hosting
Edge-hosted endpoint built from operations you mark in your OpenAPI file.[13]
Tool shape
One tool per marked operation.[13]
Risky operations
Every tools/call is audit-logged with caller identity.[13]
›Mintlify (docs MCP)
How end users sign in
Public docs: none. Private docs: OAuth, with content limited by user group.[14]
Per-role access
User groups limit which content is searched.[14]
Output and hosting
Hosted /mcp on each docs site.[14]
Tool shape
Search, docs filesystem query and feedback tools.[14]
Risky operations
Not applicable: it reads docs.
Docs answers
Its whole job.

Where we are stronger

  • Roles come from the claim in your user's own token and are enforced on search and on call, on every surface: AI apps, CLI and widget.
  • One source gives you an MCP server, a branded CLI, an agent skill, a Claude plugin and a chat widget. Among the others, only Gram's README mentions skills and plugins, and none describes a branded CLI or widget.
  • Writes go through their own tool, and operations you mark need a single-use confirm token that the AI must get from the user.
  • Your end users keep using your login, with four ways to connect it (including password relay and token exchange) and no change to your auth stack.

Where they are stronger, or we do not do it

  • We are hosted only. Gram is open source, FastMCP and Cloudflare Workers run on your own infrastructure.
  • Scalar can serve the MCP from your own subdomain and documents forwarding each customer's own API key. Ours are served from deemwar.com hostnames and are built around a login that issues a JWT.
  • Composio, Pipedream and Zapier connect AI to thousands of third-party apps with prebuilt actions. We do one thing: your API, for your customers.
  • One tool per operation is simpler for a small API; our search-first surface adds one step.
  • We are young and invite-only for publishers, so our ecosystem and track record are small next to these.

What users report

  • Scalar users asked how to give each customer their own key; maintainers answered with passthrough authentication (closed). A separate report said the API key was not forwarded through an authorized installation (closed).[2][15]
  • Gram: a report that passthrough mode accepted any non-empty bearer and returned HTTP 200 with an error when the upstream rejected it (closed).[5]
  • FastMCP: open reports include tool calls failing when a successful response is not JSON.[16]

Expose a coding agent

You run a coding agent and want to ask it from Claude, ChatGPT or your phone.

ProductSign-inWorks inHosting and reach
dmcp serve (Deemwar)OAuth built inClaude, ChatGPT, Codex, Claude CodeStable URL via our tunnel; needs herdr
herdmcpOwn OAuth 2.1[17]Any MCP client (HTTP or stdio)[17]You run it; URL changes on restart unless you own a tunnel[17]
kevmo314/herdr-mcpNone described[18]stdio clients only[18]Local[18]
Claude Code Remote ControlYour Claude subscription[19]Claude app and web; not MCP[19]Anthropic relay[19]
claude mcp serve-Local stdio client[20]Your machine
HappyYour agent subscriptions; end-to-end encrypted[21]Happy's apps; not MCP[21]Open source, self-hostable[21]
Omnara-Its own clients[22]Self-host or Omnara Cloud[22]
DIY tunnel (Cloudflare, ngrok)Whatever you add[23]Any client your auth supportsQuick tunnels: testing only[24]

Details by product

›dmcp serve (Deemwar)
What it does
Turns one live herdr agent into an MCP server with ask and get_answer. Every question is logged (dmcp log).
Sign-in
OAuth built in, tied to your project's sign-in. Local mode uses a bearer token.
Live session?
Yes, through herdr.
Where you use it
Claude.ai, Claude mobile, ChatGPT, Codex, Claude Code.
Hosting and reach
Stable <tenant>-terminal.deemwar.com URL through our Cloudflare tunnel route; needs herdr and a running dmcp serve; one public agent per tenant.
›herdmcp
What it does
MCP server for herdr: read pane and agent state, create, split and run in panes, start or prompt agents. pane_close is marked destructive; raw herdr_call is opt-in.[17]
Sign-in
Its own OAuth 2.1 server: PKCE, dynamic client registration with consent, accounts you create, 1 hour tokens.[17]
Live session?
Yes.
Where you use it
Streamable HTTP /mcp, or stdio.[17]
Hosting and reach
You run it. A quick tunnel URL changes on every restart; a stable URL needs your own Cloudflare named tunnel.[17]
›kevmo314/herdr-mcp
What it does
25 tools for terminals, agents, commands, files and the herdr window.[18]
Sign-in
None described.[18]
Live session?
Yes.
Where you use it
stdio only.[18]
Hosting and reach
Local. Install from source; npm publishing is still pending per its README.[18]
›Claude Code Remote Control
What it does
Continue your live local Claude Code session from the Claude app or claude.ai/code.[19]
Sign-in
Your Claude subscription; API keys are not supported.[19]
Live session?
Yes.
Where you use it
Claude app and web only; Claude Code only; not an MCP server.[19]
Hosting and reach
Anthropic relay over outbound HTTPS; the transcript is stored on Anthropic's servers.[19]
›claude mcp serve
What it does
Runs Claude Code as a local stdio MCP server.[20]
Where you use it
A local MCP client; people run it over SSH.[20]
Hosting and reach
Your machine.
›Happy
What it does
App for Claude, Codex, Grok and other agents; start a session with happy claude or happy codex and pick it up on your phone.[21]
Sign-in
Your own agent subscriptions; end-to-end encrypted sync.[21]
Live session?
Yes, for sessions started through happy.
Where you use it
Happy's apps; not an MCP endpoint.[21]
Hosting and reach
Open source (MIT); the relay server is in the repo and can be self-hosted.[21]
›Omnara
What it does
Platform that runs agents through an API, SDK and CLI, with Slack, Discord and GitHub triggers and a daemon on your machines.[22]
Where you use it
Its own clients; it has an MCP server for agents to call.[22]
Hosting and reach
Apache-2.0, self-hostable with Docker Compose, or Omnara Cloud.[22]
›DIY tunnel (Cloudflare, ngrok)
What it does
Public URL in front of any local MCP server; you supply the server and its auth.
Sign-in
ngrok's OAuth action supports providers such as GitHub, Google and Microsoft; its docs do not mention MCP OAuth discovery or dynamic client registration.[23]
Live session?
Whatever you serve.
Where you use it
Any client your server's auth supports.
Hosting and reach
Cloudflare quick tunnels: random hostname, no uptime guarantee, no SSE, "for testing and development".[24]

Where we are stronger

  • A stable URL with sign-in already built in, without your own Cloudflare account, DNS or auth code. herdmcp's quick URL changes on restart, and the stdio servers are not reachable from Claude.ai or ChatGPT at all.
  • One URL works from Claude, ChatGPT, Codex and Claude Code, so you are not tied to one vendor's app.
  • The tools are shaped as a question: ask returns a clean answer and is refused when the agent is busy or blocked, and every question is logged.

Where they are stronger, or we do not do it

  • Remote Control is first party, one step, inside the Claude app, and needs no relay of ours. It reconnects automatically, and its server mode runs several sessions.
  • herdmcp gives you full pane control (split, run, start agents) and keeps everything on your own machine. We only offer ask and get_answer.
  • Happy is open source with an end-to-end encrypted, self-hostable relay and more agent types. Our tunnel route passes your traffic through our infrastructure.
  • dmcp serve needs herdr. Our public exposure ends when dmcp serve stops, and there is one public agent per tenant.

What users report

  • Remote Control: open reports of an unarchived session that never reconnects, and of the command missing for an account.[25][26]
  • claude mcp serve: it does not exit when stdin closes, leaving processes behind over SSH (open); the Agent tool shows an empty agent list in serve mode (open).[20][27]
  • Happy: an open report that its CLI loads a repository's Claude configuration without a trust prompt.[28]

Sources

  1. [1] Scalar: hosted MCP guide
  2. [2] Scalar issue #9463
  3. [3] Scalar: MCP product page
  4. [4] Speakeasy Gram repository (README)
  5. [5] Gram issue #6927
  6. [6] Speakeasy: MCP server generator comparison
  7. [7] Postman: MCP generator (v12 docs)
  8. [8] Composio: MCP servers
  9. [9] Pipedream: MCP for developers
  10. [10] Zapier MCP docs
  11. [11] Cloudflare: remote MCP server guide
  12. [12] FastMCP: OpenAPI integration
  13. [13] Zuplo: MCP servers
  14. [14] Mintlify: MCP
  15. [15] Scalar issue #9307
  16. [16] FastMCP from_openapi issue #5367
  17. [17] herdmcp (Glama listing)
  18. [18] kevmo314/herdr-mcp
  19. [19] Claude Code: Remote Control
  20. [20] claude-code issue #106109 (claude mcp serve)
  21. [21] Happy (slopus/happy)
  22. [22] Omnara (omnara-ai/omnara)
  23. [23] ngrok: OAuth action
  24. [24] Cloudflare: quick tunnels
  25. [25] claude-code issue #107170 (Remote Control)
  26. [26] claude-code issue #106787 (Remote Control)
  27. [27] claude-code issue #41973 (claude mcp serve)
  28. [28] Happy issue #1688

Last checked: 9 November 2026. Product names belong to their owners. Spot an error? [email protected]

Put your API where your users already work.

Access is invite-only while we onboard publishers. Bring a spec URL and your login page.