---
title: "Model Context Protocol"
canonical: "https://canmyagentuse.com/features/mcp"
contentKind: "feature"
locale: "en"
description: "Explore MCP as a family of independently supported capabilities instead of a single compatibility claim."
llmSummary: "MCP is a capability family. Support is rolled up from atomic child capabilities so tool support never implies prompt, resource, or app support."
publishedAt: "2026-08-28T00:00:00.000Z"
updatedAt: "2026-08-28T00:00:00.000Z"
verifiedAt: null
tags: ["interfaces","mcp"]
---

# Model Context Protocol

MCP is a capability family. Support is rolled up from atomic child capabilities so tool support never implies prompt, resource, or app support.

- HTML: https://canmyagentuse.com/features/mcp
- JSON: https://canmyagentuse.com/api/v1/features/mcp.json
- Markdown: https://canmyagentuse.com/features/mcp.md

Terminology basis: Catalog grouping. This organizes related compatibility questions and is not itself a support claim.

MCP support is not one switch. A product may invoke server tools while it does not expose server prompts, read resources, or render MCP Apps.

This family page derives its progress from the independently evidenced child capabilities. Open a child row for exact targets, constraints, dates, and evidence.

## Atomic capabilities

- [MCP Apps](/features/mcp-apps.md) — Render an interactive interface returned by an MCP server inside the product.
- [MCP cancellation](/features/mcp-cancellation.md) — Cancel an in-flight MCP request and handle cancellation correctly.
- [MCP client role](/features/mcp-client-role.md) — Consume capabilities exposed by MCP servers.
- [MCP elicitation](/features/mcp-elicitation.md) — Handle structured user-input requests initiated by an MCP server.
- [MCP legacy HTTP and SSE](/features/mcp-legacy-sse.md) — Connect through the superseded HTTP plus SSE transport when migration compatibility is required.
- [MCP list-changed notifications](/features/mcp-list-changed.md) — Refresh capability lists when a server announces dynamic changes.
- [MCP logging](/features/mcp-logging.md) — Receive structured log messages emitted by an MCP server.
- [MCP OAuth authorization](/features/mcp-oauth.md) — Complete the MCP authorization flow for protected remote servers.
- [MCP progress notifications](/features/mcp-progress.md) — Receive progress updates for long-running requests.
- [MCP prompt-list notifications](/features/mcp-prompts-list-changed.md) — Refresh prompt templates after a server announces changes.
- [MCP prompts](/features/mcp-prompts.md) — Invoke reusable MCP prompt templates.
- [MCP Registry metadata](/features/mcp-registry.md) — Discover MCP servers and metadata through the official registry model.
- [MCP resource subscriptions](/features/mcp-resource-subscriptions.md) — Subscribe to resource changes and receive update notifications.
- [MCP resources](/features/mcp-resources.md) — Read MCP resources as live context.
- [MCP revision compatibility](/features/mcp-revision.md) — Implement or negotiate the exact dated MCP revision.
- [MCP roots](/features/mcp-roots.md) — Provide filesystem or workspace roots to an MCP server.
- [MCP sampling](/features/mcp-sampling.md) — Handle server requests for model sampling through the client.
- [MCP server instructions](/features/mcp-server-instructions.md) — Consume server-provided instructions during initialization.
- [MCP server role](/features/mcp-server-role.md) — Expose capabilities from the harness as an MCP server.
- [MCP stdio transport](/features/mcp-stdio.md) — Connect to a local MCP server over standard input and output.
- [MCP Streamable HTTP](/features/mcp-streamable-http.md) — Connect to an MCP server over the current Streamable HTTP transport.
- [MCP task listing](/features/mcp-task-listing.md) — List and page through tasks exposed by the task utility.
- [MCP tasks](/features/mcp-tasks.md) — Create, inspect, and manage long-running MCP tasks.
- [MCP tools](/features/mcp-tools.md) — Invoke operations exposed by a Model Context Protocol server.

## Current family progress by product

Family support is derived from atomic child records. No umbrella compatibility value is authored.

- [ChatGPT](/harnesses/chatgpt-web.md): 2/24 supported or partial; 2/24 reviewed; yes 0, partial 2, no 0, unknown 22
- [Claude](/harnesses/claude-web.md): 2/24 supported or partial; 2/24 reviewed; yes 0, partial 2, no 0, unknown 22
- [Gemini](/harnesses/gemini-web.md): 0/24 supported or partial; 0/24 reviewed; yes 0, partial 0, no 0, unknown 24
- [Copilot](/harnesses/copilot-web.md): 0/24 supported or partial; 0/24 reviewed; yes 0, partial 0, no 0, unknown 24
- [Grok](/harnesses/grok-web.md): 2/24 supported or partial; 2/24 reviewed; yes 2, partial 0, no 0, unknown 22
- [Grok Bot](/harnesses/grok-bot-desktop.md): 5/24 supported or partial; 5/24 reviewed; yes 5, partial 0, no 0, unknown 19
- [Perplexity](/harnesses/perplexity-web.md): 0/24 supported or partial; 0/24 reviewed; yes 0, partial 0, no 0, unknown 24
- [Le Chat](/harnesses/le-chat.md): 0/24 supported or partial; 0/24 reviewed; yes 0, partial 0, no 0, unknown 24
- [Devin](/harnesses/devin-web.md): 0/24 supported or partial; 0/24 reviewed; yes 0, partial 0, no 0, unknown 24
- [Replit Agent](/harnesses/replit-agent.md): 0/24 supported or partial; 0/24 reviewed; yes 0, partial 0, no 0, unknown 24
- [ChatGPT](/harnesses/chatgpt-desktop.md): 0/24 supported or partial; 0/24 reviewed; yes 0, partial 0, no 0, unknown 24
- [Claude](/harnesses/claude-desktop.md): 2/24 supported or partial; 2/24 reviewed; yes 0, partial 2, no 0, unknown 22
- [Cursor](/harnesses/cursor.md): 10/24 supported or partial; 10/24 reviewed; yes 10, partial 0, no 0, unknown 14
- [OpenWork Desktop](/harnesses/openwork-desktop.md): 1/24 supported or partial; 1/24 reviewed; yes 1, partial 0, no 0, unknown 23
- [Copilot Chat](/harnesses/vscode-copilot.md): 13/24 supported or partial; 13/24 reviewed; yes 11, partial 2, no 0, unknown 11
- [Chrome WebMCP origin trial](/harnesses/chrome-webmcp-preview.md): 0/24 supported or partial; 0/24 reviewed; yes 0, partial 0, no 0, unknown 24
- [Windsurf](/harnesses/windsurf.md): 0/24 supported or partial; 0/24 reviewed; yes 0, partial 0, no 0, unknown 24
- [Zed Agent](/harnesses/zed-agent.md): 6/24 supported or partial; 9/24 reviewed; yes 6, partial 0, no 3, unknown 15
- [Continue](/harnesses/continue.md): 8/24 supported or partial; 9/24 reviewed; yes 7, partial 1, no 1, unknown 15
- [Cline](/harnesses/cline.md): 8/24 supported or partial; 9/24 reviewed; yes 6, partial 2, no 1, unknown 15
- [JetBrains AI](/harnesses/jetbrains-ai.md): 0/24 supported or partial; 0/24 reviewed; yes 0, partial 0, no 0, unknown 24
- [Warp](/harnesses/warp.md): 0/24 supported or partial; 0/24 reviewed; yes 0, partial 0, no 0, unknown 24
- [Claude CLI](/harnesses/claude-cli.md): 14/24 supported or partial; 14/24 reviewed; yes 13, partial 1, no 0, unknown 10
- [ChatGPT CLI](/harnesses/chatgpt-cli.md): 0/24 supported or partial; 0/24 reviewed; yes 0, partial 0, no 0, unknown 24
- [Codex CLI](/harnesses/codex-cli.md): 1/24 supported or partial; 1/24 reviewed; yes 1, partial 0, no 0, unknown 23
- [OpenCode](/harnesses/opencode.md): 0/24 supported or partial; 0/24 reviewed; yes 0, partial 0, no 0, unknown 24
- [Gemini CLI](/harnesses/gemini-cli.md): 10/24 supported or partial; 11/24 reviewed; yes 10, partial 0, no 1, unknown 13
- [Aider](/harnesses/aider.md): 0/24 supported or partial; 0/24 reviewed; yes 0, partial 0, no 0, unknown 24
- [Goose](/harnesses/goose.md): 0/24 supported or partial; 0/24 reviewed; yes 0, partial 0, no 0, unknown 24
- [Copilot CLI](/harnesses/copilot-cli.md): 0/24 supported or partial; 0/24 reviewed; yes 0, partial 0, no 0, unknown 24
- [Amp](/harnesses/amp-cli.md): 0/24 supported or partial; 0/24 reviewed; yes 0, partial 0, no 0, unknown 24
