Skip to content

Commit 33c3724

Browse files
authored
fix(SEP-2576): update Documentation to match Schema (Transports, Completions, Prompts, Resources) (modelcontextprotocol#2769)
* Update resource documentation to include `subscribe` optional feature * Include now mandatory "_meta" section in tool call example. We may want to consider a convention for this in the future to reduce boilerplate. * Add Resource Links to the Prompts documentation * Update completions docs to refer correctly to Resource Templates * prettier
1 parent d494db5 commit 33c3724

4 files changed

Lines changed: 43 additions & 9 deletions

File tree

docs/specification/draft/basic/transports.mdx

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -431,6 +431,14 @@ Mcp-Param-Region: us-west1
431431
"id": 1,
432432
"method": "tools/call",
433433
"params": {
434+
"_meta": {
435+
"io.modelcontextprotocol/protocolVersion": "DRAFT-2026-v1",
436+
"io.modelcontextprotocol/clientInfo": {
437+
"name": "ExampleClient",
438+
"version": "1.0.0"
439+
},
440+
"io.modelcontextprotocol/clientCapabilities": {}
441+
},
434442
"name": "execute_sql",
435443
"arguments": {
436444
"region": "us-west1",

docs/specification/draft/server/prompts.mdx

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -262,6 +262,25 @@ Audio content allows including audio information in messages:
262262
The audio data MUST be base64-encoded and include a valid MIME type. This enables
263263
multi-modal interactions where audio context is important.
264264

265+
#### Resource Links
266+
267+
Prompt messages **MAY** include links to
268+
[Resources](/specification/draft/server/resources), to provide additional context or
269+
data without embedding the resource contents directly. In this case, the prompt message
270+
returns a URI that can be fetched by the client:
271+
272+
````json
273+
{
274+
"type": "resource_link",
275+
"uri": "file:///project/src/main.rs",
276+
"name": "main.rs",
277+
"description": "Primary application entry point",
278+
"mimeType": "text/x-rust"
279+
}
280+
281+
Resource links support the same [Resource annotations](/specification/draft/server/resources#annotations)
282+
as regular resources to help clients understand how to use them.
283+
265284
#### Embedded Resources
266285

267286
Embedded resources allow referencing server-side resources directly in messages:
@@ -275,7 +294,7 @@ Embedded resources allow referencing server-side resources directly in messages:
275294
"text": "Resource content"
276295
}
277296
}
278-
```
297+
````
279298

280299
Resources can contain either text or binary (blob) data and **MUST** include:
281300

docs/specification/draft/server/resources.mdx

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,18 +35,24 @@ Servers that support resources **MUST** declare the `resources` capability:
3535
{
3636
"capabilities": {
3737
"resources": {
38-
"listChanged": true
38+
"listChanged": true,
39+
"subscribe": true
3940
}
4041
}
4142
}
4243
```
4344

44-
The capability supports one optional feature:
45+
The capability supports two optional features:
4546

4647
- `listChanged`: whether the server will emit notifications when the list of available
4748
resources changes.
49+
- `subscribe` : whether the server supports resource-specific update notifications
50+
for resources requested through subscriptions/listen using the resourceSubscriptions
51+
filter.
4852

49-
`listChanged` is optional—servers may omit it:
53+
Servers may advertise either feature independently, together or neither.
54+
55+
Serves that support neither `listChanged` or `subscribe` may omit it:
5056

5157
```json
5258
{

docs/specification/draft/server/utilities/completion.mdx

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -124,10 +124,10 @@ For prompts or URI templates with multiple arguments, clients should include pre
124124

125125
The protocol supports two types of completion references:
126126

127-
| Type | Description | Example |
128-
| -------------- | --------------------------- | --------------------------------------------------- |
129-
| `ref/prompt` | References a prompt by name | `{"type": "ref/prompt", "name": "code_review"}` |
130-
| `ref/resource` | References a resource URI | `{"type": "ref/resource", "uri": "file:///{path}"}` |
127+
| Type | Description | Example |
128+
| -------------- | ----------------------------------------- | --------------------------------------------------- |
129+
| `ref/prompt` | References a prompt by name | `{"type": "ref/prompt", "name": "code_review"}` |
130+
| `ref/resource` | References a resource URI or URI template | `{"type": "ref/resource", "uri": "file:///{path}"}` |
131131

132132
### Completion Results
133133

@@ -157,7 +157,8 @@ sequenceDiagram
157157

158158
### CompleteRequest
159159

160-
- `ref`: A `PromptReference` or `ResourceReference`
160+
- `ref`: A `PromptReference` or `ResourceTemplateReference`. For
161+
`ResourceTemplateReference`, `uri` is a URI or URI template.
161162
- `argument`: Object containing:
162163
- `name`: Argument name
163164
- `value`: Current value

0 commit comments

Comments
 (0)