Published using Google Docs
Public Research Report - MCP servers
Updated automatically every 5 minutes

Main

The Pragmatic Engineer - MCP Research Report

This is our Research Report, accompanying the deepdive Building MCP servers in the real world. This report contains 4-5x as much raw details, data, and information than we are able to fit in the final newsletter.

Some comments are in green text throughout the report. These are comments from us (The Pragmatic Engineer team: Elin who created the report or Gergely).

Executive summary

I. Servers and use cases

1. Use cases and examples

2. Popular and notable MCP servers

3. MCPs built by respondents

II. Learnings and advice

1. For building MCPs

2. For using MCPs

3. General MCP learnings

III. The state of the MCP ecosystem

1. Advice for using MCP can differ a lot

2. MCPs for production is largely an unsolved problem

3. Evaluation, reliability and testing of MCPs is Not Trivial

4.MCP is like USB-C, in the bad ways as well

5. MCP adoptions inside of companies

6. More builders than users of MCP, and that can be an issue

7. The protocol and capabilities is constantly evolving

8. Prediction that MCP will “fade as a concept”

Research Report - MCP servers

Executive summary

The Model Context Protocol (MCP) has rapidly gained traction, standardizing how AI clients (like chatbots and IDEs) connect to data, files, and tools through dedicated servers, earning the moniker "the USB-C of AI." We wanted to learn how MCP is being adopted in the real world, how it’s being integrated into companies and workflows, and what learnings builders and users of MCP have to share. The main themes we’ve been researching are:

  1. MCP usage - which MCP servers are people using, how are they using them, and what has MCP unlocked for them?
  2. Building MCP servers - what kind of MCP servers have people been building, for whom, and what has the experience of building MCP servers been like?
  3. The state of MCP - what trends, adoption patterns and best practices are emerging from the adoption of MCP?

This research, based on a survey and interviews, shows that MCP adoption is widespread, and is largely driven by two main forces: large, official servers from major developer-facing companies (e.g. Figma, Atlassian, Notion) and a surprisingly big number of internal, private MCPs built by companies to access internal data, documentation, and internal tools. A long tail of small custom-built MCP servers for primarily personal usage also exist, often created for individual experimentation or specific one-off use cases, or open-sourced with limited adoption within the MCP community.

Common use cases of MCP servers include integrating into CI/CD pipelines, accelerating prototyping by bridging design systems and tools (like Figma) with ticketing systems (like Jira). MCPs are also enabling non-developers to "vibe code" and contribute to the codebase, and allowing customer care agents to make use of internal APIs, data and platforms in new ways. Furthermore, connecting LLMs to internal wikis, documentation, and legacy codebases via MCP is proving beneficial for improving the quality and context of agent-driven work.

However, the experience is not without its challenges. Security, especially regarding access control and using content from untrusted sources, remains a primary concern in the community. Developers also note issues with context windows and “tool bloat," where agents become less reliable when given too many unnecessary tools. Despite these hurdles, the general sentiment is that MCP is a powerful, open technology, with some predicting it will replace self-service Business Intelligence by providing direct, agent-accessible access to internal data warehouses.

Who we’ve talked to

MCP basics - recap

I. Servers and use cases

This section covers the real world usage and use cases of MCP servers as reported in our research. It starts with higher-level examples for how people and teams report using MCP, and then we list all the MCP servers that were reported to us by category.

1. Use cases and examples

Test/debug sessions help

It worked quite well, the agent often gets the parameters wrong then retries with corrections which is kind of cool to watch. There were still points where I had to intervene and make some manual corrections or encourage the agent to do something differently (eg. link formatting) but broadly speaking pretty good (and fun)” - Theo Windebank, at customer ops AI startup Gradient Labs

CI/CD and repo integrations

Prototyping, getting started with new work, and creating first drafts

Allowing non-devs to do more

Making it possible to use highly legacy systems in new ways

Improving LLM and agent context through docs, wikis, etc

Design systems and UI development

Controlling and interacting with devices and browsers…

Internal MCP tooling

2. Popular and notable MCP servers

This section lists and describes all the MCP servers reported in our research. They are tied to the use cases above, but here we report on the tools themselves.

4 types of MCPs/color coding

We found that most MCP servers fit into four major categories described here, and color coded throughout this section.

Large, public and official MCPs

The infinite tailend of MCPs with barely any users

Internal and private MCPs built for and used at companies

Others - e.g. not the “Big 10” but public and with decent user bases

Context and knowledge

Software development and coding
Wikis, documentation and internal context

Ticket, work and project management tools

UI design and prototyping

Testing and Browser automation

Software development and tooling

Sidenote: Lots of these are all mentioned by a person working at Aurora, an autonomous vehicle company:

CI/CD and repos
Monitoring, observability and alerting
LLM and agent tooling
Others
MCP clients mentioned

3. MCPs built by respondents

MCPs for public use
  1. Figma to code, but better than Figma’s MCP
  1. Migrating/converting (?) legacy code to use the new design system
  2. Vibe coding and prototyping in a Lovable/Replit-type way, but using their own design system, language, coding practices, etc
Internal company MCPs
Personal side projects
Internal for now

II. Learnings and advice

In this section we’ve collected the concrete learnings, advice, stories and anecdotes about using and building MCP servers that we found through our research. It’s divided into building MCPs, using MCPs, general MCP advice, and security considerations.

1. For building MCPs

Start MCP projects in limited and local scopes

Figure out if MCP would be useful before building production ready ones at your company

MCP Inspector is a good tool to use

Vendors and platforms for MCP development

Ways to think of MCPs as a product/service

Learnings from Notion

Choosing the language - Python seems like the best choice?

I then switched to building in JS. I have worked in JS for more than a decade and so am very familiar with it. JS is more represented in training data, and has a bit more of an ecosystem for MCP tooling, but working with node isn't always the best experience, even with more modern language features.

I eventually pivoted to learning Python and have since been building my services in Python. The models are very good at generating Python code as well as critiquing Python codebases, so I've been able to work at a speed that wasn't possible when I was working in Elixir/JS." - Tech lead at a GovTech SaaS company

Two experiences from readers

2. For using MCPs

Context window bloat and tool management

⚠️Cautions! ⚠️

Cost/benefit considerations

MCPs can make functionality more accessible to New Audiences, so MCPs might be a great way to explore new cross-functional tools!

3. General MCP learnings

MCPs is in essence context/prompt engineering and management, so the usual LLM caveats still apply

MCP vs CLI vs APIs

Converting REST and Open APIs directly to MCPs is Not A Good Pattern

Example of an Emergent Adoption pattern

Security considerations

III. The state of the MCP ecosystem

This section is dedicated to more high-level trends, analysis and reflections of the state of MCP and the community today.

1. Advice for using MCP can differ a lot

2. MCPs for production is largely an unsolved problem

Bring/Build-your-own-infrastructure

Scaling and production-ready is “an exercise for the user/builder”

Improvements in OAuth

3. Evaluation, reliability and testing of MCPs is Not Trivial

4.MCP is like USB-C, in the bad ways as well

5. MCP adoptions inside of companies

6. More builders than users of MCP, and that can be an issue

7. The protocol and capabilities is constantly evolving

8. Prediction that MCP will “fade as a concept”

A reminder to let us know what you think of this new format - suggestions and critiques are most welcome 🙏