What changed This industry experience paper introduces and catalogues five recurring architectural patterns for Model Context Protocol (MCP) servers. MCP, an interface developed by Anthropic in November 2024, standardizes how large language models (LLMs) connect to external tools, data sources, and services. The paper identifies these patterns by analyzing a corpus of fifteen independently developed MCP servers, including production servers from the ANSYR voice AI platform and public servers from the official MCP registry. The five identified patterns are: Resource Gateway, Tool Orchestrator, Stateful Session Server, Proxy Aggregator, and Domain-Specific Adapter. Each pattern is described using the structured format of "context, problem, solution, and consequences." Additionally, the research documents four anti-patterns and discusses cross-cutting concerns such as authentication, versioning, and observability within the MCP ecosystem.
The paper also presents quantitative evaluations. It measures the inter-rater reliability of the pattern taxonomy across two independent LLM raters on 54 held-out servers, achieving a Cohen's kappa of 0.76 and identifying three pattern-boundary ambiguities. Transport overhead was measured end-to-end on loopback and modeled for cross-host paths. A tool-count study revealed that tool-selection accuracy for Claude Haiku 4.5 drops below 90% when using between 10 and 15 tools per context, and for Claude Sonnet 4, this accuracy threshold is crossed between 20 and 30 tools.
A replication package containing code, the corpus of servers analyzed, and prompts used in the study has been released.
Why it matters for builders For developers working with LLM-integrated applications, this paper offers a valuable taxonomy of established architectural patterns for MCP servers. Recognizing these patterns can guide the design and implementation of new systems, promoting consistency and best practices within the rapidly evolving LLM ecosystem. By understanding common solutions and potential pitfalls, builders can more effectively manage the complexity of connecting LLMs to diverse external resources.
Practical impact Developers can leverage the described patterns to structure their own MCP server implementations. For instance, a "Resource Gateway" pattern might be suitable for exposing specific data sources to an LLM, while a "Tool Orchestrator" could manage complex workflows involving multiple external tools. The identification of anti-patterns provides crucial warnings against common mistakes. The quantitative data on tool-selection accuracy offers practical guidance for optimizing LLM performance, suggesting that developers should be mindful of the number of tools exposed to the LLM to maintain high accuracy, especially with models like Claude Haiku 4.5.
Caveats and source limits The paper is an industry experience paper, offering observations and cataloged patterns rather than a formal, prescriptive standard. The analysis is based on a corpus of fifteen servers, which, while diverse, may not represent the entirety of the MCP server ecosystem. The quantitative evaluations, such as transport overhead and tool-selection accuracy, are specific to the tested configurations and models (Claude Haiku 4.5 and Sonnet 4) and may vary with different LLMs or network conditions. The inter-rater reliability score of 0.76 indicates good agreement but also highlights three identified ambiguities in pattern boundaries, suggesting that the classification might require further refinement. The paper notes that no software-maintenance literature has yet described how the MCP ecosystem is being structured in production, indicating this is an early-stage analysis.
Featured on AI Radar: MCP Server Architecture Patterns for LLM-Integrated Applications