← Field Notes · August 11, 2026 · 6 min read · AIOProductOS Team

MCP Server Examples: What They Actually Do (2026)

Most MCP server lists sort by vendor. This one sorts by reach - what each example server can see, what a call returns, and what it structurally cannot.

Every list of MCP server examples on the internet is organised the same way: by vendor. Here are nine servers. Here are ninety. Install them.

That ordering hides the only thing that matters when you are choosing. Two servers can have identical tool counts and identical protocol support and still be useless for the same question, because one of them can see your billing system and the other one cannot. So this post sorts examples by reach - what the server can actually get to - and shows the shape of what comes back.

For the definition of the protocol itself, we wrote that up separately. One sentence here: MCP is an open standard, now governed under the Linux Foundation, that lets a model call an external system through a typed interface of resources, tools, and prompts.

What do MCP server examples actually do?

An MCP server does one job: it hands a model a typed, permissioned door into a specific system, and returns structured data through it. In practice that means reading files, fetching a page, running repo commands, driving a browser, or reading and writing a SaaS product's records - bounded, always, by what that one server can reach.

The bound is the point. A server's ceiling is not its tool count. It is the set of systems its credentials and its data model let it touch.

MCP server examples sorted by reach - what each server returns and what it can never see

MCP server examples, sorted by what they can reach

ReachExample serversWhat a call returnsWhat it structurally cannot see
Your local diskFilesystem, Git (official reference servers)File contents as text, a directory listing, a diff, a commit logAnything outside the roots you granted; anything that never landed on disk
The open webFetch (official), FirecrawlA page converted to text or Markdown, plus its URLAnything behind a login, and any private system of record
A live browser sessionPlaywrightAn accessibility snapshot of the DOM, console output, the result of a click or form fillServer-side state, and anything from a session that already ended
The server's own scratchpadMemory, Sequential Thinking (official)Notes you stored earlier; a structured chain of reasoning stepsAny real system - these hold what the model put there, nothing else
One SaaS productGitHub, Linear, Notion, BoxThat product's objects: issues, pages, files, comments - with its own IDs and fieldsEvery other system. GitHub's server cannot see what a customer pays; Notion's cannot see a deploy
Several systems, joinedAIOProductOS MCPOne customer record with revenue, feedback, work, and code attached - resolved across sources in a single callDepth inside any single product's native surface; it will not out-detail Linear on Linear

The fifth row is where nearly every published example sits, and it is why the catalogues all read alike. GitHub's server sees GitHub. Box's sees Box. Filesystem sees files. Each is well built and each is a silo, so a list of thirty of them is a list of thirty silos - which is fine until the question you need answered crosses two of them.

That gap is not hypothetical. The average company runs 101 SaaS apps and wastes roughly $21M a year on licences nobody uses, per Okta and Zylo. Install a server per app and you have automated the silo, not removed it.

What a single-system call returns

Take the most-cited examples in order.

Filesystem. You grant it a root directory at startup. read_text_file returns the contents of one file as a string; list_directory returns names and types. It cannot read a sibling directory you did not grant, which is the whole safety design.

Git. Returns exactly what the CLI would: a diff as text, a log as a list of commits. Useful because the model stops guessing what changed.

Fetch. Give it a URL, get the page back as text stripped of markup. Useful, and total in its blindness to anything authenticated.

Playwright. The most interesting of the reference-adjacent set, because its calls have side effects. A click returns the post-click accessibility tree. That makes it the one example where "what the server returns" and "what the server changed" are the same answer.

Linear, Notion, GitHub. All the same shape at a different altitude: one product's records, correctly typed, with that product's vocabulary. If you want them compared and ranked for a product team specifically, we did that in a separate post - this one deliberately does not rank.

Try one and read the response yourself

Here is the checkable part, because a claim about response shape is worth nothing unless you can run it.

Install a client-side server with no account and no credentials:

npx -y @aioproductoscom/mcp@latest

Started without a PRODUCTOS_TOKEN, it runs in demo mode against a fully seeded showcase workspace called Brightline, with a read-only subset of its tools. Nothing to paste, nothing to cancel.

Then ask your host two things, in this order:

  1. "Call whoami." The response tells you which workspace you are attached to and what you are allowed to do. Start here on any MCP server - it is the fastest way to learn a server's real boundary.
  2. "Call get_customer_360 for one of the accounts and show me every source it pulled from." What comes back is one account with its plan and revenue, the feedback it filed, the support threads it opened, and the work in flight against it - assembled in a single call rather than four.

Compare that second response to what a single-product server would return for the same account, and the difference in reach stops being an argument and becomes an artifact you are looking at. That is the difference a joined data model makes at the MCP layer, and it is the same protocol underneath either way. The hosted endpoint speaks Streamable HTTP with OAuth 2.1 and PKCE and exposes 71 tools plus three interactive ui:// MCP Apps; the stdio package above is the same surface without the sign-in.

When a single-system example server is the right answer

Most of the time, honestly.

If your question lives entirely inside one tool, the vendor's own server is the deepest and most accurate path available, and nothing joined will beat it. Asking "what changed in this PR" is a GitHub question. Asking "what does this page say" is a Fetch question. Reaching for a cross-system server there adds a hop and buys nothing.

If you already have a joined layer - a warehouse, a CDP, something homegrown - single-system servers plug into it cleanly and the join stays where you have already invested in it.

And there is a case for no MCP server at all. If a job runs on a schedule, takes fixed inputs, and produces a deterministic output, a script and an API key are simpler, cheaper, and easier to debug than a model deciding which tool to call. MCP earns its place when the question is open-ended and the model needs to choose the path. When the path is already known, a direct integration is usually the better shape - and if you conclude you need a server that does not exist yet, building one is its own exercise.

The question to ask of any example

Not "how many tools does it have." Ask: what can this server see, and what can it never see?

Every catalogue of MCP server examples answers the first half by accident, in the vendor's name. The second half is the part that decides whether the model can answer your question - and it is the part no list prints. Our MCP guides hub covers what each major tool's own server does and where the silo edge sits for each one.

  • Run the demo yourself with npx -y @aioproductoscom/mcp@latest - no account, no key. Hosted endpoint and client setup: /mcp/connect.

Frequently asked questions

What are the three MCP capabilities?

Resources, tools, and prompts. Resources are readable context the host can pull in - a file, a page, a record. Tools are callable functions the model can invoke, usually with side effects like creating an issue or clicking a button. Prompts are reusable templates the server offers the host, so a server can ship a known-good way to ask for something rather than leaving the phrasing to the model. Most servers in the wild lean heavily on tools; resources and prompts are less consistently implemented.

Are there official MCP server examples?

Yes. The Model Context Protocol project maintains a set of reference servers at modelcontextprotocol.io/examples - Everything, Fetch, Filesystem, Git, Memory, and Sequential Thinking. They exist to demonstrate the protocol rather than to be production integrations: Filesystem reads and writes files under a root you specify, Fetch retrieves a URL and converts it to text, Git runs repository operations, Memory stores notes across a session, Sequential Thinking structures multi-step reasoning, and Everything exercises every part of the spec at once.

What are the main use cases for MCP servers?

Four recur. Reading local context, so a model can work against your actual files and repo instead of pasted snippets. Reading the open web, so it can fetch a page as text. Driving a live surface, such as a browser session for testing or scraping. And reading or writing a SaaS system of record - issues, docs, feedback, customers - so the model can both answer from real data and act on it. A fifth, less common case is joining several systems onto one record so a single call spans them.

Don't take our word for it

Reading this with an AI assistant? Let it check us.

AIOProductOS is an MCP server, so an assistant can connect to it directly - with no account, no card and no signup. It starts against a fully seeded showcase workspace, read-only, and there is nothing to cancel afterwards.

$ npx -y @aioproductoscom/mcp@latest

Then ask it the kind of question this post is about - "which paying customers asked for the feature we're building, and did shipping it move their usage?" - against a real joined record instead of a blog post. When you want it pointed at your own data, start here.

Keep reading

See the join on your own stack.

One record per customer - revenue, feedback, work, and code. Flat plans from $199/mo, every module included - a 14-day onboarding runway on your own data, then a 30-day money-back guarantee.