Jump to a section
Finalized research artifact

MCP Protocol & Progressive Tool Discovery

A consolidated enterprise guide to the protocol, extensions, web variants, widely adopted public implementations, capability governance, and the architecture required to operate hundreds or thousands of tools efficiently.

Version 1.0.0 Generated July 23, 2026 Stable core 2025-11-25 Time-sensitive 2026-07-28 remains an RC
Central thesis. MCP should be treated as a portable capability plane. At enterprise scale, success depends less on exposing more tools and more on presenting the smallest authorized, task-relevant capability surface—then preserving deterministic policy, identity, execution, and evidence outside the model.
ExecutivesRead the decision position, public-code signals, architecture, and delivery roadmap.
ArchitectsRead the protocol model, extensions, progressive-discovery design, security, and trade-off matrices.
EngineersRead the catalog model, retrieval pipeline, TypeScript contracts, release gates, and evaluation plan.
Release status notice. The latest stable core is 2025-11-25. The 2026-07-28 revision is a release candidate as of this guide’s date. Revalidate final schemas, SDK behavior, and migration guidance after July 28. S01S02
01

Decision position

The recommended enterprise stance, expressed before protocol detail.

Recommended direction

Adopt MCP as the normalized capability contract

  • Keep production wire compatibility on the stable specification until the final 2026 release and stable SDKs are validated.
  • Design servers to be internally stateless and gateway-friendly now.
  • Use progressive discovery when schemas consume material context or tool-selection accuracy degrades.
  • Filter tool visibility by identity, tenant, environment, and policy before retrieval.
  • Reauthorize every invocation and enforce the effect in the server and system of record.
  • Certify extensions and hosted services separately from core protocol conformance.
Boundary

MCP does not replace the control plane

MCP standardizes discovery and invocation. It does not provide complete business authorization, prompt-injection defense, rights policy, transaction semantics, model evaluation, or registry trust certification.

Do not make the model the policy engine.The model can propose a capability. Deterministic services decide whether it is visible, callable, and allowed to affect a target resource.
3–7Always-loaded bootstrap tools
3–5Full schemas loaded per task step
1–5%Official context-share trigger range
Authorize before discovery and again at execution
02

Protocol foundation

MCP is a host-to-capability protocol family built on JSON-RPC, with core primitives, transports, authorization integration, and independently negotiated extensions.

A host owns the model interaction, user experience, consent, and server selection. A client implements one protocol relationship to an MCP server. A server exposes tools, resources, prompts, and extension-defined behavior. S01

MCP core is the contract. Gateways, registries, extensions, WebMCP, and A2A occupy distinct but composable layers.

Core primitives

PrimitiveTypical controllerPurposeEnterprise guidance
ToolsModel or agentExecute actions and computations.Use bounded semantic operations, strict schemas, result projections, and server-side enforcement.
ResourcesHost or applicationRead identifiable context through URIs.Prefer references and projections over large inline payloads. Preserve provenance and trust class.
PromptsUserReusable user-visible workflow templates.Do not hide policy or privileged instructions inside prompt templates.
SamplingServer requests; host controlsAsk the host to perform inference.Stable today; deprecated in the 2026 RC. Avoid new hard dependencies.
ElicitationServer requests; user controlsCollect structured input or direct the user to an external workflow.Use URL mode for credentials, payment, consent, and identity verification.
RootsHost/clientDescribe accessible filesystem or URI boundaries.Stable today; deprecated in the 2026 RC.

Transports

Local

stdio

Best for IDEs, CLI tools, local filesystem access, and trusted workstation automation. Treat installation and launch configuration as software-supply-chain execution. Diagnostic output belongs on stderr, not the JSON-RPC channel.

Remote

Streamable HTTP

Best for centrally operated services. The stable protocol can use JSON or SSE responses and optional protocol sessions. Remote servers require normal HTTP controls, Origin validation, OAuth audience validation, rate limits, and observability. S05

03

Specification evolution

The 2026 revision changes the operating model rather than merely adding methods.

2024-11-05Early public generation and original HTTP+SSE design.
2025-03-26Streamable HTTP introduced as the successor transport.
2025-06-18Authorization, structured output, elicitation, and security matured.
2025-11-25 · current stableInitialization-based lifecycle, optional sessions, URL-mode elicitation, Apps-era metadata, and experimental Tasks.
2026-07-28-RC · current candidateStateless requests, explicit discovery, routable headers, caching hints, trace propagation, MRTR, and first-class extension separation.

Stable versus 2026 release candidate

Concern2025-11-25 stable2026-07-28 RCDesign consequence
Lifecycleinitialize / initializedInitialization removedRequests carry protocol and capability context.
SessionsOptional Mcp-Session-IdProtocol sessions removedApplication state must use explicit durable identifiers.
DiscoveryInitialization response and list methodsserver/discoverCapabilities can be fetched and cached explicitly.
Gateway routingOften body inspectionMcp-Method and Mcp-NamePolicy and routing can occur without deep JSON inspection.
InteractionConnection-associated server-to-client requestsMulti Round-Trip RequestsInput continuation is associated with a logical request.
CachingMostly HTTP/application-definedttlMs and cacheScopeCatalog and resource caching become protocol-visible.
ObservabilityImplementation-definedW3C Trace Context propagationMCP can participate in end-to-end OpenTelemetry traces.
Feature lifecycleLess formalFormal active/deprecated/removed lifecycleMigration windows become explicit.
Migration principle.Upgrade the SDK, enable the new wire protocol, change gateway behavior, adopt new extensions, and replace deprecated features as separate reversible decisions. Do not combine them into one cutover. S02
04

Extensions, Apps, Tasks, authorization, and WebMCP

Extensions evolve separately from the core and require explicit client and server support.

Official extension

MCP Apps

Associates a tool with a ui:// resource that a host renders in a sandboxed iframe. Use for charts, forms, media, review surfaces, and rich interactive results. Always return a textual or structured fallback because host support varies. S09

Official 2026 direction

Tasks

Provides durable handles for long-running work, input-required states, cancellation, and result retrieval. Treat the ecosystem as transitional until the final specification, SDK packages, and host behavior align.

Stable extension

Enterprise-Managed Authorization

Allows enterprise identity providers to centrally govern MCP access and issue identity assertion grants that an MCP authorization server exchanges for server-specific tokens. S10

Adjacent browser proposal

WebMCP

Lets the current webpage register browser-agent tools through declarative HTML or JavaScript. It is page- and tab-bound, accesses live browser context, and complements rather than replaces persistent backend MCP. S14S15

Boundary matrix

TechnologyBoundaryPrimary useState and authority
MCP coreHost ↔ capability serverPortable tools, resources, promptsPersistent backend capability; host and server enforce policy.
MCP AppsServer-provided UI ↔ hostEmbedded interactive resultsSandboxed host rendering; calls remain host- and server-mediated.
WebMCPBrowser agent ↔ current pageOperate live page stateEphemeral tab, DOM, cookies, and authenticated browser session.
A2AAgent ↔ agentDelegation and collaborationIndependent agent authority and lifecycle.
OpenAPIService consumer ↔ HTTP APIGeneral service contractNot model- or host-specific; often a source for generated MCP surfaces.
05

Public implementation landscape

Vendor-maintained and widely adopted code reveals production patterns that are not obvious from the core specification.

Selection favors publisher authority, executable public code, substantial public adoption, and architectural significance. Popularity is corroborating evidence—not a security certification.

Toolsets, individual-tool filters, dynamic toolset discovery, read-only precedence, compatibility aliases, scope filtering, and lockdown mode for public content.

dynamic catalogscontent trustread/write separation
Harvest: align catalog visibility with authority and trust class. S16S17

Accessibility-tree automation, persistent or isolated browser profiles, output files, capability families, and existing-session integration.

browser statesemantic snapshotsoutput control
Harvest: state mode is part of authority; MCP and CLI are complementary projections. S18

Grafana MCP

Grafana Labs

Tool-level RBAC, summary and JSONPath result projection, telemetry, write filtering, and downstream MCP-aware data-source federation.

result projectionRBACfederation
Harvest: large domain objects should be projected, not repeatedly injected. S19

Supabase MCP

Supabase

Project scoping, feature groups, read-only PostgreSQL roles, branching, and explicit production warnings.

project scopeenvironment isolationdatabase enforcement
Harvest: identity alone is insufficient; project, branch, role, and environment narrow authority. S20

Layered OAuth, server-held upstream credentials, MCP-side skills, path constraints, model evaluations, and embedded domain agents.

wrapper tokensskillsevals
Harvest: preserve the downstream credential on the server and mint a narrower MCP grant. S21

Cloudflare MCP

Cloudflare

Code Mode virtualizes approximately 2,500 API endpoints through a tiny search-and-execute surface, with server-side specification access and isolated execution.

Code ModeAPI virtualizationsandbox
Harvest: compress large APIs, but move policy to the actual operation inside the generic executor. S22

Container isolation, catalogs, secrets, OAuth, unified discovery, monitoring, and OCI-shareable server profiles.

gatewayOCI profilessupply chain
Harvest: configuration can be versioned, signed, scanned, promoted, and rolled back as an artifact. S23

A portfolio of specialized domain servers and adapters rather than one universal cloud-admin server.

domain serversAWS identityserverless adapters
Harvest: split authority and context by domain; avoid one omnipotent cloud surface. S32

Terraform MCP

HashiCorp

Registry discovery, enterprise workspace operations, toolsets, write filtering, Streamable HTTP, and OpenTelemetry metrics.

IaCtool filterstelemetry
Harvest: separate public discovery and privileged execution into narrow deployments or profiles. S33

Context7

Upstash

Version-specific documentation through MCP, CLI, Skills, SDKs, and framework-native tools.

multi-projectionknowledge retrievalstable identifiers
Harvest: the durable asset is the capability; MCP is one projection among several.

mcp-agent

LastMile AI

Agents that consume MCP servers, expose agents as MCP capabilities, and use durable workflow engines for long-running orchestration.

agent-as-tooldurable workflowcomposition
Harvest: an agent-valued tool requires provenance, cost, delegation, and evaluation metadata beyond an ordinary function. S31

Shows the lifecycle from generated OpenAPI façade to smaller, managed, AI-native tools with OAuth and token optimization.

OpenAPI generationcurated remoteAI-native tools
Harvest: use generated parity to learn, then replace it with intent-oriented operations. S34
06

Advanced patterns extracted from public code

The leading implementations converge on context efficiency, authority reduction, explicit state, and capability composition.

1

Dynamic tool catalogs

Toolsets, feature groups, roles, skills, and per-task loading reduce both model confusion and attack surface.

2

Tool-catalog virtualization

Code Mode and API search compress thousands of operations into a small programmable surface.

3

MCP federation

A server can discover and proxy tools from downstream MCP-aware systems, requiring provenance and delegation depth.

4

Agents as MCP capabilities

Specialist agents can appear as tools, but require model, instruction, cost, delegation, and evidence metadata.

5

Embedded domain models

An MCP server may use its own model to translate intent into a domain language. Validate and evaluate the generated query separately.

6

Result projection

Summaries, JSONPath selections, patches, files, and resource URIs prevent large objects from repeatedly entering context.

7

Configuration supply chain

Signed profiles can bind exact server versions, tools, environments, secrets, policy, and compatibility metadata.

8

Sensitive output channels

Return redacted model-visible summaries while placing credentials or sensitive artifacts in a protected reference channel.

Strategic progression.MCP as an API wrapper → governed capability adapter → dynamic capability broker → federated execution fabric.
07

Progressive tool discovery

A controlled context-loading system for catalogs that are too large, too dynamic, or too sensitive to expose wholesale.

The host retrieves definitions from MCP servers but keeps most schemas outside the model context. The model searches concise capability metadata, inspects selected definitions, and then calls normal typed tools. The official guidance describes this as catalog → inspect → execute. S03

Relevance is evaluated only within the authorized capability set. The selected invocation is then authorized again with its concrete arguments and target.

Activation policy

SignalObserved guidanceRecommended interpretation
Context shareOfficial MCP guidance suggests 1–5% of the context window. S03Primary portable trigger. Calculate serialized schema tokens for the actual model.
Tool countGitHub Copilot CLI switches around 30 tools. S24Useful heuristic, not a universal limit.
Provider guidanceAnthropic recommends search at 10+ tools, >10K definition tokens, or growing aggregated catalogs. S27Provider-native behavior can be stricter than the portable MCP threshold.
Selection qualitySeveral dozen visible tools increase wrong-tool selection.Measure local accuracy by model and workload; activate search before the release target is missed.
Governance complexityMultiple servers, tenants, environments, and roles.Use discovery even when token cost is modest because visibility itself is sensitive.

Progressive disclosure levels

Level 0
Bootstrap surface

capabilities.search, capabilities.inspect, optional server search, feedback, and 2–5 high-frequency low-risk tools.

Level 1
Domain or server manifest

Concise domain purpose, entities, operation classes, risk classes, and authorization prerequisites.

Level 2
Tool cards

Name, one-line purpose, key inputs, outputs, risk, why matched, and related operations.

Level 3
Full definition

Input and output schema, side effects, examples, preconditions, failure modes, result budget, and policy requirements.

Level 4
Extended operating knowledge

Runbooks, error catalog, migration notes, domain concepts, and result projections.

Level 5
Programmatic composition

Generate typed wrappers for a small discovered set and compose calls in a sandbox, retaining per-call authorization.

Catalog strategy by scale

Visible capability scalePrimary strategyTypical loaded surface
1–15 toolsLoad all unless schemas are unusually large or sensitive.All schemas.
15–50Keep common tools loaded; defer the rest by namespace or domain.5–15 schemas.
50–500Hybrid lexical and semantic retrieval, then inspect.3–5 schemas per step.
500–10,000Hierarchical server/domain retrieval followed by tool retrieval.1–3 domains, 3–8 tool cards, 3–5 schemas.
10,000+ operationsAPI virtualization or controlled Code Mode for read-heavy domains.Small search/execute surface with deep policy inspection.
08

Implementation design

A provider-neutral catalog and retrieval plane with adapters for native deferred-tool mechanisms.

Canonical catalog record

export interface ToolCatalogRecord {
  // Stable invocation identity
  id: string;                 // serverId::originalToolName
  serverId: string;
  originalName: string;
  namespace: string;
  schemaHash: string;
  sourceRevision: string;

  // Retrieval representation
  title: string;
  shortDescription: string;
  keywords: string[];
  syntheticQueries: string[];
  negativeQueries: string[];
  entityTypes: string[];
  operationVerbs: string[];
  parameterNames: string[];
  outputConcepts: string[];
  relatedToolIds: string[];

  // MCP contract
  inputSchema: Record<string, unknown>;
  outputSchema?: Record<string, unknown>;
  annotations?: Record<string, unknown>;

  // Governance and operations
  operationClass: "read" | "write" | "execute" | "approve";
  reversibility: "reversible" | "compensatable" | "irreversible";
  riskClass: "low" | "moderate" | "high" | "critical";
  requiredScopes: string[];
  requiredEntitlements: string[];
  allowedEnvironments: string[];
  dataClasses: string[];
  enabled: boolean;
  healthStatus: "healthy" | "degraded" | "unavailable";
}

Retrieval document

Do not embed only the publisher’s description. Build a multi-field representation containing the canonical name, aliases, curated purpose, verbs, entities, parameters, outputs, example user requests, negative examples, and workflow relationships. Multi-field research shows that function, inputs, and outputs carry different retrieval signals. S28S30

Lexical

BM25 / full-text

Strong for exact product names, acronyms, IDs, API vocabulary, verbs, and known tool names.

Semantic

Embeddings

Strong for synonyms, goal-oriented phrasing, and user language that differs from API terminology.

Fusion

RRF + reranking

Combine rankings without assuming score comparability, then apply a small reranker and diversity control.

Search contract

{
  "query": "find latency metrics for publishing API",
  "operationClass": "read",
  "environment": "production",
  "limit": 5
}
{
  "queryId": "qry_01J...",
  "matches": [{
    "toolId": "grafana::query_prometheus",
    "summary": "Run a read-only PromQL query.",
    "keyInputs": ["dataSourceId", "query", "start", "end"],
    "riskClass": "low",
    "whyMatched": ["latency", "time-series", "Prometheus"]
  }]
}

Authorization-aware retrieval skeleton

export async function discoverTools(
  principal: PrincipalContext,
  intent: CapabilitySearchIntent,
  deps: DiscoveryDependencies,
): Promise<ToolCard[]> {
  // Tool existence is protected information. Filter before search.
  const authorizationFilter =
    await deps.policy.getAuthorizedToolFilter(principal);

  const query = buildStructuredQuery(intent);

  const [lexical, semantic] = await Promise.all([
    deps.lexicalSearch(query, authorizationFilter, 30),
    deps.semanticSearch(query, authorizationFilter, 30),
  ]);

  const fused = reciprocalRankFusion([lexical, semantic]);
  const reranked = await deps.rerank(intent, fused.slice(0, 20));
  const selected = selectDiverseCandidates(reranked, dynamicK(intent));

  return deps.catalog.getToolCards(selected.map(x => x.toolId));
}

Provider adapter strategy

RuntimeNative capabilityUseConstraint
OpenAI Responses / Agents SDKDeferred functions, namespaces, hosted MCP tool searchLoad a namespace or MCP server only when needed. S25Keep namespaces compact; maintain a provider-neutral source catalog.
Anthropic ClaudeRegex/BM25 search, deferred MCP toolsets, custom tool_referenceNative search or custom enterprise retrieval. S27Deferred definitions may remain in the API request even when absent from model context.
GitHub Copilot CLIAutomatic tool search and sticky loadingDeveloper workflows with large external catalogs. S24Behavior and supported models are host-specific.
Generic MCP hostcapabilities.search and capabilities.inspect meta-toolsPortable implementation across model providers.Host must manage prompt caching and schema injection explicitly.

Catalog synchronization

  1. Connect and negotiate the supported protocol generation.
  2. Page through every tools/list result.
  3. Normalize JSON Schema and compute a stable schema hash.
  4. Enrich with curated retrieval and governance metadata.
  5. Index lexical and semantic representations.
  6. Process notifications/tools/list_changed and periodic reconciliation.
  7. Invalidate loaded schemas when compatibility, authorization, or security changes.
  8. Reauthorize every tools/call regardless of discovery state.
09

Security and governance model

Discovery changes the context boundary. It does not weaken execution controls.

Foundational rule.Search determines relevance. Policy determines visibility. Inspection determines comprehension. Authorization determines execution.

Threat model

ThreatFailure modeRequired control
Tool poisoningMetadata attempts to manipulate model behavior or dominate ranking.Curated descriptions, allowlists, change review, length limits, and structured tool cards.
Unauthorized discoveryTool names reveal internal systems or privileged operations.Identity-, tenant-, role-, environment-, and policy-aware prefiltering.
Token passthroughMCP server forwards a token intended for another audience.Server-specific audience, token exchange or delegation, issuer and scope validation. S07
Stale loaded schemaModel retains a tool after permission or schema changes.Execution-time reauthorization, schema version checks, and fail-closed behavior.
Semantic inversionRetriever confuses create/delete, enable/disable, publish/unpublish.Exact verb boosts, operation-class filters, negative examples, and deterministic reranking.
Generic executor bypassCode Mode hides actual operation from tool-level policy.Inspect API operation, method, resource, account, loop, egress, and result limits inside the executor.
Cross-tenant cache leakCatalog or result cache is reused across identities.Cache keys include authorization material and policy version; avoid global catalogs when visibility varies.
Duplicate side effectRetry or MRTR replays a write.Durable business idempotency keys, expected versions, and effect records.

Identity and delegation envelope

{
  "humanSubject": "user-123",
  "workloadIdentity": null,
  "agentId": "incident-triage-agent",
  "hostId": "enterprise-assistant",
  "tenantId": "league-platform",
  "delegationChain": ["host", "specialist-agent", "mcp-gateway"],
  "targetServer": "grafana-production",
  "tool": "query_prometheus",
  "environment": "production",
  "policyVersion": "ai-policy-2026.07.3",
  "approvalId": null,
  "traceId": "00-..."
}

Mutating tool contract

Preferred

Separate state transitions

deployment.get, deployment.plan_rollback, deployment.approve_rollback, deployment.execute_rollback, deployment.verify.

Avoid

Generic administrative power

shell.execute, unrestricted SQL, arbitrary cloud requests, or one tool that silently switches between read and write behavior.

10

Enterprise reference architecture

Separate the durable capability model from protocol projection, discovery, policy, and execution.

The capability broker is not the only security boundary. Policy is evaluated before discovery and before effect; servers and systems of record enforce the final operation.

Capability plane

Durable business contracts

Inputs, outputs, side effects, ownership, authorization, idempotency, evidence, and data classification. These contracts exist independently of MCP.

Projection plane

Multiple interfaces

MCP, CLI, Skills, OpenAPI, function calling, MCP Apps, and WebMCP are projections of the same governed capabilities.

Control plane

Identity and governance

Catalog, policy, rights, consent, evaluation, versioning, profiles, audit, and release approvals.

Execution plane

Typed tools and controlled runtimes

Typed domain tools, workflow engines, browser profiles, sandboxes, downstream MCP federation, and systems of record.

AWS-first deployment

ConcernInitial AWS choiceScale-up path
Catalog metadata and versionsDynamoDBGlobal tables when multi-region discovery is required.
Immutable schema snapshotsVersioned S3Object Lock for regulated audit evidence.
Lexical and semantic searchPostgreSQL full text + pgvector for smaller catalogsOpenSearch Serverless hybrid search for large catalogs and filters.
EmbeddingsBedrock embedding modelBenchmark dimensions and provider against the evaluation corpus.
Discovery runtimeNode.js 24 TypeScript on LambdaContainers when connection pooling, stable latency, or long streams justify them.
EventsEventBridge + SQSSeparate catalog, security-revocation, and evaluation pipelines.
PolicyExternal PDP plus server enforcementPolicy decision evidence attached to every call.
ObservabilityOpenTelemetryTrace user turn → tool search → policy → server → downstream effect.
11

Delivery roadmap and gates

Build the catalog and evidence model before sophisticated retrieval. Introduce semantic complexity only after a measurable baseline.

Each phase has an explicit evidence gate. The implementation can stop at the simplest phase that meets accuracy, latency, governance, and cost objectives.

0

Baseline

Inventory servers and tools. Measure schema tokens, selection failures, latency, turns, usage distribution, and model-specific accuracy.

Gate: a reproducible evaluation set and current-state metrics exist.
1

Canonical catalog

Stable identities, namespacing, schema normalization, hashes, ownership, provenance, pagination, and synchronization.

Gate: every tool is traceable to a server, revision, owner, and policy.
2

Lexical discovery

Search and inspect meta-tools, exact-name boosts, always-loaded tools, sticky conversation state, and telemetry.

Gate: target authorized Recall@5 on exact and domain queries.
3

Identity-bound visibility

Principal and delegated-agent context, tenant and environment filters, entitlement metadata, and execution reauthorization.

Gate: zero unauthorized tool-name exposure in adversarial tests.
4

Hybrid retrieval

Weighted documents, synthetic and negative queries, embeddings, RRF, dynamic K, and confusion-set tests.

Gate: measurable retrieval gain without material latency or policy regression.
5

Reranking and workflows

Current-step intent extraction, predecessor/successor metadata, diversity, broadened-search fallback, and multi-step retrieval.

Gate: ambiguous and cross-domain tasks improve over hybrid retrieval alone.
6

Provider adapters

OpenAI namespaces and hosted search, Anthropic tool references, GitHub deferral, and generic host schema injection.

Gate: equivalent authorized surfaces across the supported host matrix.
7

Programmatic composition

Typed wrapper generation, isolated execution, brokered calls, per-call policy, limits, compact results, and effect evidence.

Gate: lower tokens and turns without increased side effects or authorization failures.
12

Evaluation and operating evidence

A tool that passes unit tests but cannot be discovered, selected, or invoked safely is not production-ready.

Retrieval

Find the correct capability

Recall@K, Precision@K, MRR, nDCG, no-result accuracy, namespace accuracy, and unauthorized exposure.

Invocation

Use it correctly

Correct selection, schema-valid arguments, correct environment and resource, unnecessary calls, and repeated searches.

Outcome

Complete the task safely

Task success, side-effect correctness, human correction, latency, tokens, cost, cache hits, retries, and audit completeness.

Initial release objectives

MetricInitial objectiveWhy it matters
Authorized Recall@5≥98%A missing correct tool cannot be recovered downstream.
Correct tool selection after load≥95%Separates retrieval quality from model invocation quality.
Schema-valid invocation≥98%Measures schema clarity and model compatibility.
Unauthorized tool-name exposure0Capability existence can be sensitive.
Unauthorized execution0Mandatory security invariant.
Tool-schema token reduction≥80% on large catalogsPrimary efficiency objective.
P95 discovery latency<200 ms without model rerankingPreserves interactive responsiveness.
Stale schema execution0 known casesPrevents compatibility and policy drift.

Evaluation corpus requirements

  • Exact-name and known-resource requests.
  • User vocabulary that differs from API terminology.
  • Create/delete, enable/disable, publish/unpublish confusion sets.
  • Read versus write and planning versus execution.
  • Production versus non-production and project or tenant scope.
  • Unauthorized but semantically relevant tools.
  • No suitable tool, deprecated tool, renamed tool, and server outage.
  • Multi-step tasks searched one step at a time.
  • Prompt-injection content in resources, descriptions, and outputs.
13

Decision matrix and anti-patterns

Choose the smallest architecture that meets capability scale, risk, and workflow complexity.

Execution classBest fitBenefitsPrimary risk
Static typed toolsHigh-risk business operations and compact domainsStrong schemas, policy keys, approvals, and auditabilityCatalog growth and duplicated API-shaped tools
Dynamic native toolsMedium and large domains with role- or task-specific operationsPortable invocation with reduced contextRetrieval quality and catalog synchronization
Code ModeVery large read-oriented APIs and multi-call transformationExtreme schema compression and programmable compositionGeneric executor can hide actual authority and data flow
Agent as toolSpecialist reasoning and opaque remote workflowsDomain autonomy and reusable expertiseNested models, delegation, cost, and evidence attribution

Patterns to avoid

Hundreds of generated OpenAPI tools

Useful for initial coverage. Poor as the final agent interface when names overlap, schemas are broad, and outputs mirror raw APIs.

One universal administrator tool

Generic shell, SQL, cloud request, or Kubernetes apply tools move policy and correctness into the model.

Popularity as trust

Stars and marketplace placement do not prove secure defaults, tenant isolation, provenance, or hosted-service equivalence.

Post-filtering authorization

Retrieving globally and removing inaccessible tools afterward can leak internal capabilities and pollute ranking.

Recommended enterprise combination.GitHub-style toolsets and content trust; Supabase-style project and environment scoping; Sentry-style layered identity; Grafana-style result projection and federation; Docker-style signed profiles; Cloudflare-style catalog virtualization; and provider-native deferred loading behind one enterprise catalog.
14

Open questions and update watchlist

Items that can materially change implementation decisions.

Final 2026-07-28 specification and SDK releases

Revalidate headers, discovery, MRTR, Tasks, deprecated features, capability metadata, and dual-version behavior. Do not treat the RC as final.

Core or extension-level tool search

Progressive discovery is currently primarily a host pattern. A future standardized search or catalog extension could change the portability boundary.

Extension conformance and host behavior

Core SDK tiers do not certify every extension. Maintain a separate Apps, Tasks, EMA, and client-credentials compatibility matrix.

Gateway and delegation contracts

The 2026 routing headers improve gateway operation, but MCP still lacks universal schemas for delegation chains, policy evidence, cache keys, or transformed tool provenance.

WebMCP standardization

Monitor W3C status, browser interoperability, permissions, private browsing, extension APIs, and evaluation tooling.

Large-result references, events, triggers, and skills

These remain important roadmap areas. Their eventual standardization may alter the division between tools, resources, tasks, Skills, and external workflow engines. S13

15

Evidence, provenance, and maintenance

The guide is designed to be updated without losing claim-to-source traceability.

Normative

Specifications

Used for protocol requirements, lifecycle, transport, methods, authorization, and extension contracts.

Operational

Official guidance and code

Used for implementation patterns, provider behavior, limits, host interoperability, and real deployment trade-offs.

Exploratory

Research

Used for retrieval methods and benchmark signals. Findings are qualified by dataset size and independence.

Claim ledger

IDClaimConfidenceSourcesUpdate trigger
C01The latest stable MCP core specification is 2025-11-25 as of the artifact date.HighS01 S02Final publication or new stable release
C022026-07-28 is a release candidate that removes initialization and protocol sessions and makes requests self-contained.HighS02Final 2026-07-28 specification
C03Official guidance recommends progressive discovery when tool definitions consume roughly 1–5% of context.HighS03Updated client guidance
C04A catalog–inspect–execute pattern is the recommended provider-neutral model for progressive discovery.HighS03New core discovery primitive
C05GitHub Copilot CLI activates on-demand tool search at approximately 30 tools and keeps loaded tools for the conversation.HighS24Copilot CLI behavior change
C06Anthropic supports deferred MCP toolsets and custom search returning tool references, with up to 10,000 deferred tools per request.HighS27Claude platform limit change
C07OpenAI supports deferred functions, namespaces, and hosted MCP servers through tool search; namespaces should remain small.HighS25 S26OpenAI Responses or Agents SDK change
C08The official MCP Registry authenticates namespaces and hosts metadata but delegates code security scanning.HighS11Registry general availability or trust model update
C09WebMCP is a W3C Community Group draft and is complementary to backend MCP rather than a replacement.HighS14 S15W3C Standards Track transition or browser interoperability milestone
C10Enterprise-Managed Authorization is an official extension for centrally governed enterprise access.HighS10Extension revision or final 2026 negotiation model
C11Widely used public MCP servers reduce tool surfaces through toolsets, feature groups, read-only profiles, dynamic discovery, or Code Mode.HighS16 S17 S20 S22Major implementation architecture changes
C12Cloudflare demonstrates API virtualization by representing approximately 2,500 operations through a small Code Mode surface.HighS22Cloudflare MCP interface change
C13Token passthrough is an explicitly prohibited MCP authorization anti-pattern.HighS07Authorization specification revision
C14Semantic retrieval can sharply reduce schema tokens, but published benchmarks remain smaller and cleaner than enterprise catalogs.ModerateS28 S29 S30Independent large-scale benchmark
C15Progressive discovery must filter by authorization before retrieval and must reauthorize again at execution.HighS03 S06 S07Core discovery or authorization extension standardization

Source registry

IDTypeSourceChecked
S01NormativeMCP specification — 2025-11-25
Model Context Protocol
S02Official2026-07-28 MCP specification release candidate
Model Context Protocol
S03OfficialClient best practices: progressive discovery and Code Mode
Model Context Protocol
S04NormativeTools — stable specification
Model Context Protocol
S05NormativeTransports — stable specification
Model Context Protocol
S06NormativeAuthorization — stable specification
Model Context Protocol
S07OfficialSecurity best practices
Model Context Protocol
S08OfficialExtensions overview
Model Context Protocol
S09OfficialMCP Apps overview
Model Context Protocol
S10OfficialEnterprise-Managed Authorization
Model Context Protocol
S11OfficialMCP Registry overview
Model Context Protocol
S12OfficialMCP SDK tiers
Model Context Protocol
S13OfficialMCP roadmap
Model Context Protocol
S14DraftWebMCP Community Group Draft Report
W3C Web Machine Learning Community Group
S15OfficialWhen to use WebMCP and MCP
Chrome for Developers
S16Public codeGitHub MCP Server
GitHub
S17Public codeGitHub MCP server configuration
GitHub
S18Public codePlaywright MCP
Microsoft
S19Public codeGrafana MCP Server
Grafana Labs
S20Public codeSupabase MCP Server
Supabase
S21Public codeSentry MCP security architecture
Sentry
S22Public codeCloudflare MCP and Code Mode
Cloudflare
S23Public codeDocker MCP Gateway
Docker
S24OfficialGitHub Copilot CLI tool search
GitHub
S25OfficialOpenAI Agents SDK: hosted tool search
OpenAI
S26OfficialOpenAI Agents SDK: MCP filtering and namespacing
OpenAI
S27OfficialClaude tool search
Anthropic
S28ResearchScaleMCP: dynamic, auto-synchronizing MCP tools
Lumer et al.
S29ResearchSemantic tool discovery for MCP
Mudunuri et al.
S30ResearchMulti-Field Tool Retrieval
Tang et al.
S31Public codemcp-agent
LastMile AI
S32Public codeAWS Labs MCP servers
Amazon Web Services
S33Public codeTerraform MCP Server
HashiCorp
S34Public codeNotion MCP Server
Notion
S35Public codeStripe MCP Server
Stripe

Maintenance procedure

  1. Recheck all normative and time-sensitive official sources.
  2. Diff specification and extension versions against the artifact’s sourceRevision.
  3. Re-run public-code architecture checks for changed configuration, authentication, and discovery behavior.
  4. Re-run the retrieval and invocation evaluation corpus against supported models.
  5. Update claim confidence, sources, and update triggers.
  6. Increment semantic versioning: major for architectural conclusions, minor for material evidence or sections, patch for corrections.
  7. Preserve the prior artifact and record the change summary.
Embedded machine-readable evidence ledger

The complete source and claim registry is embedded in this HTML as <script id="evidence-ledger" type="application/json">.