Talk to Jason

Does My Product Need an MCP Server?

There are two questions to consider: what does agent-ready mean, and does your product need to be agent-ready? The first has a clear answer. The second depends on your business, and for many products today, the answer is still no.

By Jason Flatford Updated

The short answer

  • The key question is whether an agent needs to take action in your product or just read information from it. If action is needed, you need a connector. If it is just reading, you usually do not.
  • Anthropic, one of the protocol's creators, says in its build guide that you can skip the connector if you already have a good public API or CLI.
  • Here are six situations where you do not need an MCP server, starting with the most common: you do not have a good API yet.
  • You might not need to build an MCP server yourself. Three cloud gateways can turn an existing OpenAPI-described API into an MCP server without custom code.
  • Start by checking discovery. Most products fail here, but it is usually the easiest and quickest thing to fix, often in just an afternoon.

You are asking two questions at once

These two questions often get mixed up, but separating them usually makes things much clearer.

The first question is what agent-ready means. My Wired for Agents standard lists four requirements: a documented API, an MCP server, programmatic authentication, and discovery that works from your main domain. You either meet all of these or you do not. There is no partial credit. If you want to say your product is agent-ready, you must meet all four, including the second one.

The second question is whether your product needs to be agent-ready at all. This is a business decision, not something the standard can answer. For many products today, the honest answer is no, or at least not yet.

This page focuses on the second question. If you have already decided you need to be agent-ready, the standard will guide you on what to build.

The line that decides it

Does an agent need to perform actions in your product, or just read information from it?

Acting includes creating, changing, buying, booking, cancelling, or sending: anything that changes your system. This is what a connector is for, and there is no real substitute.

Reading means looking up information, answering questions, or comparing options. A clear public API with good documentation usually covers these needs, and models can handle standard HTTP APIs well when the documentation is solid.

Anthropic, one of the protocol's creators, says in its build guide that if you already have a public API or CLI that the model can use directly, you can skip the connector. Since they have the most to gain from adoption, their advice carries a lot of weight.

Six cases where the answer is no

  • If you do not have a good API yet, adding a protocol on top of missing authentication, unstable identifiers, and undocumented errors will only carry those problems forward. Build the API first. This investment pays off even if you never add agents, which is not true for the server.
  • If your use case is just read-only access to public content, a clear API, a good specification, and working discovery will give you most of the benefits, without needing an install step or ongoing authentication maintenance.
  • If you plan to auto-generate a tool for every endpoint, think again. Having eighty tools is worse than none, because the descriptions use up the model's context and lead to more mistakes. If you are not going to curate the tools, it is better not to ship the server.
  • Sometimes, what you really need is knowledge, not actions. Many early servers were just documentation in protocol form. In these cases, it is better to provide conventions, workflows, and guidance as instructions instead of tools.
  • If your API is already behind a cloud gateway, services like Azure API Management, Google Cloud API Gateway, and Amazon Bedrock AgentCore can expose your OpenAPI-described API as an MCP server without custom code. Just enable it and curate the endpoints.
  • If you cannot fund evaluation and maintenance, it is a problem. A server that is not tested against real model behavior will have hidden issues, and the specification changed a lot in July 2026.

When the answer is clearly yes

There are three situations where you clearly need an MCP server. In each case, something needs to happen reliably, without a person clicking a button.

  • Agents need to make changes in your product for a customer, and it is important that these changes are done correctly.
  • If your customers are already asking for this, or a partner requires it, that is the most common real reason to build an MCP server, and it is a perfectly valid one.
  • If your competitors have already launched an MCP server and buyers are comparing products, you may need to follow suit. On 26 September 2026, I found that twenty-one well-known products, including Stripe, GitHub, Linear, Notion, Sentry, PayPal, and Vercel, had live, authenticated endpoints. You can check this yourself: request one of their URLs, and if you get a 401, it means the server is live and asking for login.

Check the cheap thing first

Before making any decisions, spend some time on the fourth criterion. Most products fail here, but it is usually the easiest and cheapest to fix.

Begin at your main domain and try to find the entry points as a machine would, without logging in. Is there a specification at a stable URL? Does it require a login to access? Do your advertised URLs actually work, or does one return a 404 because it moved years ago? Can a machine get credentials without human help?

Many products that are thinking about adding a server actually have a broken entry point instead. Fixing this is inexpensive, helps regular integrators as well as agents, and is required before moving forward.

Where this page is biased

I build MCP servers, teach workshops about them, and wrote the standard. So, the six reasons above are especially worth considering. They are the ones that reduce my own workload.

One thing to note about my own standard: it requires an MCP server, while Anthropic's guidance says you can skip it if you have a good public API. These are not exactly the same. The standard defines what agent-ready means, not what every product should do, and I think it is better to acknowledge this difference.

Common questions

Does my product need an MCP server?

It depends on whether an agent needs to take action in your product or just read information. Acting includes creating, changing, buying, booking, or sending, and that is what a connector is for. Reading is usually handled by a clear public API with good documentation.

Anthropic's own build guide says that if you already have a public API or CLI a model can use directly, you can leave the connector out.

What is the difference between being agent-ready and having an MCP server?

An MCP server is just one of four requirements. The Wired for Agents standard also calls for a documented public API with a machine-readable specification, machine credentials that do not need a human at call time, and discovery that works from your main domain. Most products fail on discovery, but it is also the easiest to fix.

Can I get an MCP server without building one?

Often, yes. Azure API Management, Google Cloud API Gateway, and Amazon Bedrock AgentCore can each expose an existing OpenAPI-described API as an MCP server without custom code. You still need to choose which operations to expose, but you do not have to build the server yourself. SDK generators can also create one from your specification.

Is it bad to expose every endpoint as a tool?

Yes, it is a problem. A long list of auto-generated tools is worse than having no server, because the descriptions use up the model's context and lead to more mistakes. A small set of well-named tools that cover real workflows is much better than trying to cover everything.

How do I check whether competitors have shipped one?

To check if competitors have shipped an MCP server, request their published endpoint and look at the status code. A 401 means the server is live and asking for authentication, which is what you should see from a production endpoint. On 26 September 2026, I found that twenty-one well-known products, including Stripe, GitHub, Linear, Notion, Sentry, PayPal, and Vercel, responded this way.

Sources

I opened each of these and checked it against the figure it supports, on the date shown.

  1. Anthropic, Decide what to include in your plugin: if you already have a public API or CLI that Claude can use directly, the plugin can leave the connector out. Checked .
  2. Microsoft Learn, Expose REST API as MCP server - Azure API Management: API Management can expose a REST API it manages as a remote MCP server, with chosen operations as tools. Checked .
  3. Google Cloud, API Gateway: Model Context Protocol overview: API Gateway can act as a remote MCP server for existing REST APIs (a Preview feature). Checked .
  4. AWS, Amazon Bedrock AgentCore: OpenAPI schema targets: the gateway translates MCP requests into calls to a REST API described by an OpenAPI specification. Checked .
  5. Model Context Protocol, The 2026-07-28 Specification: the July 2026 revision replaced the stateful protocol with a stateless core. Checked .
  6. Stripe, Model Context Protocol (MCP): documents the remote MCP server at https://mcp.stripe.com, which answered an unauthenticated request with HTTP 401. Checked .
  7. GitHub, GitHub MCP Server: documents the remote MCP server at https://api.githubcopilot.com/mcp/, which answered an unauthenticated request with HTTP 401. Checked .
  8. Linear, MCP server: documents the remote MCP server at https://mcp.linear.app/mcp, which answered an unauthenticated request with HTTP 401. Checked .
  9. Notion, Connect to Notion MCP: documents the remote MCP server at https://mcp.notion.com/mcp, which answered an unauthenticated request with HTTP 401. Checked .
  10. Sentry, Sentry MCP: documents the remote MCP server at https://mcp.sentry.dev/mcp, which answered an unauthenticated request with HTTP 401. Checked .
  11. PayPal, MCP server quickstart guide: documents the remote MCP server at https://mcp.paypal.com/sse, which answered an unauthenticated request with HTTP 401. Checked .
  12. Vercel, Use Vercel's MCP server: documents the remote MCP server at https://mcp.vercel.com, which answered an unauthenticated request with HTTP 401. Checked .
  13. Asana, Using Asana's MCP Server: documents the remote MCP server at https://mcp.asana.com/v2/mcp, which answered an unauthenticated request with HTTP 401. Checked .
  14. Atlassian, Get started with the Atlassian MCP server: documents the remote MCP server at https://mcp.atlassian.com/v2/mcp, which answered an unauthenticated request with HTTP 401. Checked .
  15. Box, Set up the MCP server: documents the remote MCP server at https://mcp.box.com, which answered an unauthenticated request with HTTP 401. Checked .
  16. Canva, Verify your Canva MCP app: documents the remote MCP server at https://mcp.canva.com/mcp, which answered an unauthenticated request with HTTP 401. Checked .
  17. Cloudflare, Cloudflare's own MCP servers: documents the remote MCP server at https://bindings.mcp.cloudflare.com/mcp, which answered an unauthenticated request with HTTP 401. Checked .
  18. Figma, Set up the remote server: documents the remote MCP server at https://mcp.figma.com/mcp, which answered an unauthenticated request with HTTP 401. Checked .
  19. HubSpot, HubSpot MCP Server: documents the remote MCP server at https://mcp.hubspot.com/, which answered an unauthenticated request with HTTP 401. Checked .
  20. Intercom, Model Context Protocol (MCP): documents the remote MCP server at https://mcp.intercom.com/mcp, which answered an unauthenticated request with HTTP 401. Checked .
  21. monday.com, Platform MCP overview: documents the remote MCP server at https://mcp.monday.com/mcp, which answered an unauthenticated request with HTTP 401. Checked .
  22. Plaid, MCP Server: documents the remote MCP server at https://api.dashboard.plaid.com/mcp/, which answered an unauthenticated request with HTTP 401. Checked .
  23. Slack Developer Docs, MCP server overview: documents the remote MCP server at https://mcp.slack.com/mcp, which answered an unauthenticated request with HTTP 401. Checked .
  24. Square, Square Model Context Protocol Server: documents the remote MCP server at https://mcp.squareup.com/mcp, which answered an unauthenticated request with HTTP 401. Checked .
  25. Supabase, Supabase MCP Server: documents the remote MCP server at https://mcp.supabase.com/mcp, which answered an unauthenticated request with HTTP 401. Checked .
  26. Webflow, How it works (MCP): documents the remote MCP server at https://mcp.webflow.com/mcp, which answered an unauthenticated request with HTTP 401. Checked .

Fifteen minutes to find out which answer you are

Bring your API documentation and your main domain. If the advice is to fix discovery and wait, that is what you will hear, and it will not cost you anything to find out.

Book a 15-minute call