RedLectern topic

Model Context Protocol

MCP architecture · tools · resources · prompts · transports · authorization · extensions.

For: Developers · technical users.

After this page you can: Explain an MCP connection and assess its capabilities and permissions.

Page reviewed

Part of: Artificial Intelligence › AI integration standards

About Model Context Protocol

In the 2026-07-28 specification, Model Context Protocol (MCP) is a JSON-RPC protocol for exchanging context and capabilities between an AI application and services. A host coordinates the user interaction and one or more clients; each client communicates with a server. Servers can expose tools, resources, and prompts, while clients can handle requests for user input.

Treat a connection as both a capability boundary and an access path. A server’s advertised features describe what it supports; they do not, by themselves, establish what a user has authorized. Inspect the available tools and their schemas, the resources and prompts offered, the transport, the credentials and scopes in use, and the host’s consent controls. The 2026-07-28 revision is stateless at the protocol layer, but older revisions use a different lifecycle, so identify the revision before applying implementation guidance.

Start here

route

Start with the specification overview

Read the overview and architecture, then name the host, client, server, and capabilities in a connection you use.

Start with: MCP Specification: Overview

Learn the foundations

1.Connection roles and server capabilitiesFor the 2026-07-28 specification, MCP uses JSON-RPC messages and separates the host, client, and server roles.

For the 2026-07-28 specification, MCP uses JSON-RPC messages and separates the host, client, and server roles. The host coordinates clients and user-facing decisions; each client communicates with one server. The server advertises its supported features, which can include tools, resources, and prompts.

Tools are callable operations with names and schemas. Resources expose data under identifiers, while prompts provide reusable message templates. Elicitation lets a server request additional user information through the client. Capability declarations help a peer understand supported protocol features; when assessing actual access, also inspect authorization and consent controls.

  • Tools 8 min

    Reference for tool discovery, schemas, invocation, and user interaction guidance.

  • Resources 6 min

    Reference for server-provided context identified by resource URIs.

  • Prompts 6 min

    Reference for discovering prompt templates and supplying their arguments.

Model Context Protocol

A JSON-RPC protocol for applications to share context with language models and expose tools and capabilities.

MCP host

The AI application that coordinates user interaction and manages MCP client connections.

MCP client

A connector created by a host that communicates with one MCP server.

MCP server

A local process or remote service that exposes context and capabilities through MCP.

MCP tool

A named, schema-described capability that a server exposes for a client to invoke.

MCP resource

Data or content a server exposes to a client under a resource URI.

MCP prompt

A server-provided template of structured messages and instructions that a client can retrieve and customize with arguments.

MCP elicitation

A standardized way for a server to request additional information from a user through the client.

Standard input and output transport

Communication with a process through its standard input and output streams.

Streamable HTTP

In the 2026-07-28 specification, an HTTP-based transport in which a client sends each message as a POST and receives a JSON response or a request-scoped event stream.

MCP extension

An optional, opt-in capability that adds functionality beyond the core protocol.

MCP Apps

An extension that lets MCP servers deliver interactive user interfaces to hosts.

MCP Tasks

An extension that lets a server return a task handle for certain requests so a client can poll for the eventual result.

Skills over MCP

An extension that exposes Agent Skills through MCP resources and related methods.

Try it

Choose an MCP server you use. Identify its host, client, and server, then name one advertised capability and the request that would use it.

For example, in an IDE connected to a file server, the IDE is the host, its connector is the client, and the file service is the server. A listed file-search tool is a capability; calling it with a search query is the request that uses it.

2.Assess what a connection can doFor the 2026-07-28 specification, clients can discover server capabilities before making another request, and feature support is declared through capabilities.

For the 2026-07-28 specification, clients can discover server capabilities before making another request, and feature support is declared through capabilities. Tools, prompts, and resources are distinct server features; their lists may be affected by the authorization presented with a request.

Use an access review that separates support from permission. Record the advertised features, inspect tool descriptions and input schemas, and note which resources or prompts are exposed. Then check what credentials and scopes apply, whether the host asks for consent, and what action or data path a call could reach. Tool descriptions and annotations are not a substitute for a trusted source or user review.

Try it

For one server, write down its listed tools, one tool's input fields, the credentials or scopes used, and the host's confirmation behavior. Which action or data can the connection reach?

For the 2026-07-28 specification, distinguish the listed capability from credential-based access and the host's consent decision.

3.Authorization and transports in the 2026-07-28 specificationThe 2026-07-28 specification defines authorization for HTTP-based transports, and says authorization is optional for MCP implementations.

The 2026-07-28 specification defines authorization for HTTP-based transports, and says authorization is optional for MCP implementations. Its authorization roles distinguish a protected server, the client making a request on behalf of a resource owner, and an authorization server that issues access tokens. For stdio, the specification advises retrieving credentials from the environment instead of following the HTTP authorization flow.

Transport changes how messages are framed and delivered, not what those messages mean. In the 2026-07-28 revision, stdio uses newline-delimited JSON-RPC over a client-launched subprocess. Streamable HTTP sends messages to one endpoint with POST and returns JSON or a request-scoped SSE stream. When reviewing a connection, identify its transport and protocol revision before relying on a lifecycle or authorization example.

Try it

Compare an HTTP-based MCP connection with a stdio connection. For each, identify how messages travel and where you would check how credentials are supplied.

For the 2026-07-28 specification, stdio carries newline-delimited messages over a process's standard streams and uses environment credentials; HTTP-based authorization guidance is in the specification's authorization section.

Latest

No recent updates are available.

See the sources list

Books

Glossary

14 terms on this page.

Browse the AI glossary

Questions and comments