Skip to content

Commit 26fe8a0

Browse files
Merge branch 'main' into docs/tool-name-conflicts
2 parents e27aae2 + 47339c0 commit 26fe8a0

File tree

16 files changed

+345
-128
lines changed

16 files changed

+345
-128
lines changed

docs/clients.mdx

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ This page provides an overview of applications that support the Model Context Pr
3535
| [Goose][Goose] ||||||| Supports tools. |
3636
| [gptme][gptme] ||||||| Supports tools. |
3737
| [HyperAgent][HyperAgent] ||||||| Supports tools. |
38+
| [JetBrains AI Assistant][JetBrains AI Assistant] ||||||| Supports tools for all JetBrains IDEs. |
3839
| [Klavis AI Slack/Discord/Web][Klavis AI] ||||||| Supports tools and resources. |
3940
| [LibreChat][LibreChat] ||||||| Supports tools for Agents |
4041
| [Lutra][Lutra] ||||||| Supports any MCP server for reusable playbook creation. |
@@ -58,9 +59,9 @@ This page provides an overview of applications that support the Model Context Pr
5859
| [TheiaAI/TheiaIDE][TheiaAI/TheiaIDE] ||||||| Supports tools for Agents in Theia AI and the AI-powered Theia IDE |
5960
| [Tome][Tome] ||||||| Supports tools, manages MCP servers. |
6061
| [TypingMind App][TypingMind App] ||||||| Supports tools at app-level (appear as plugins) or when assigned to Agents |
61-
| [VS Code GitHub Copilot][VS Code] | | ||| || Supports dynamic tool/roots discovery, secure secret configuration, and explicit tool prompting |
62+
| [VS Code GitHub Copilot][VS Code] | | ||| || Supports dynamic tool/roots discovery, secure secret configuration, and explicit tool prompting |
6263
| [Warp][Warp] ||||||| Supports tools, resources, and most of the discovery criteria |
63-
| [WhatsMPC][WhatsMPC] ||||||| Supports tools for Remote MCP Servers in WhatsApp |
64+
| [WhatsMCP][WhatsMCP] ||||||| Supports tools for Remote MCP Servers in WhatsApp |
6465
| [Windsurf Editor][Windsurf] ||||||| Supports tools with AI Flow for collaborative development. |
6566
| [Witsy][Witsy] ||||||| Supports tools in Witsy. |
6667
| [Zed][Zed] ||||||| Prompts appear as slash commands |
@@ -90,6 +91,7 @@ This page provides an overview of applications that support the Model Context Pr
9091
[Genkit]: https://github.com/firebase/genkit
9192
[GenAIScript]: https://microsoft.github.io/genaiscript/reference/scripts/mcp-tools/
9293
[Goose]: https://block.github.io/goose/docs/goose-architecture/#interoperability-with-extensions
94+
[JetBrains AI Assistant]: https://plugins.jetbrains.com/plugin/22282-jetbrains-ai-assistant
9395
[LibreChat]: https://github.com/danny-avila/LibreChat
9496
[Lutra]: https://lutra.ai
9597
[mcp-agent]: https://github.com/lastmile-ai/mcp-agent
@@ -115,7 +117,7 @@ This page provides an overview of applications that support the Model Context Pr
115117
[Windsurf]: https://codeium.com/windsurf
116118
[gptme]: https://github.com/gptme/gptme
117119
[Warp]: https://www.warp.dev/
118-
[WhatsMPC]: https://wassist.app/mcp/
120+
[WhatsMCP]: https://wassist.app/mcp/
119121
[Witsy]: https://github.com/nbonamy/witsy
120122
[Zed]: https://zed.dev
121123
[Zencoder]: https://zencoder.ai
@@ -407,6 +409,18 @@ Programmatically assemble prompts for LLMs using [GenAIScript](https://microsoft
407409
- Cloud Ready – Instantly scale to hundreds of sessions via [Hyperbrowser](https://www.hyperbrowser.ai/)
408410
- MCP Client – Connect to tools like Composio for full workflows (e.g. writing web data to Google Sheets)
409411

412+
### JetBrains AI Assistant
413+
414+
[JetBrains AI Assistant](https://plugins.jetbrains.com/plugin/22282-jetbrains-ai-assistant) plugin provides AI-powered features for software development available in all JetBrains IDEs.
415+
416+
**Key features:**
417+
418+
- Unlimited code completion powered by Mellum, JetBrains’ proprietary AI model.
419+
- Context-aware AI chat that understands your code and helps you in real time.
420+
- Access to top-tier models from OpenAI, Anthropic, and Google.
421+
- Offline mode with connected local LLMs via Ollama or LM Studio.
422+
- Deep integration into IDE workflows, including code suggestions in the editor, VCS assistance, runtime error explanation, and more.
423+
410424
### Klavis AI Slack/Discord/Web
411425

412426
[Klavis AI](https://www.klavis.ai/) is an Open-Source Infra to Use, Build & Scale MCPs with ease.
@@ -590,7 +604,7 @@ Programmatically assemble prompts for LLMs using [GenAIScript](https://microsoft
590604
- Full support of all major MCP features (tools, prompts, resources, and subscriptions)
591605
- Fast, seamless UI for debugging MCP capabilities
592606
- MCP config integration (Claude, VSCode, etc.) for fast first-time experience in testing MCPs
593-
- Integration with history, varibles, and collections for re-use and collaboration
607+
- Integration with history, variables, and collections for reuse and collaboration
594608

595609
### Slack MCP Client
596610

@@ -710,9 +724,9 @@ Theia AI and Theia IDE's MCP integration provide users with flexibility, making
710724
- **Live tool/resource discovery**: view tools and resources from each running MCP server
711725
- **Configurable startup**: set MCP servers to start automatically with Warp or launch them manually as needed
712726

713-
### WhatsMPC
727+
### WhatsMCP
714728

715-
[WhatsMPC](https://wassist.app/mcp/) is an MCP client for WhatsApp. WhatsMCP lets you interact with your AI stack from the comfort of a WhatsApp chat.
729+
[WhatsMCP](https://wassist.app/mcp/) is an MCP client for WhatsApp. WhatsMCP lets you interact with your AI stack from the comfort of a WhatsApp chat.
716730

717731
**Key features:**
718732

@@ -735,7 +749,7 @@ Theia AI and Theia IDE's MCP integration provide users with flexibility, making
735749

736750
### Witsy
737751

738-
[Witsy](https://github.com/nbonamy/witsy) is an AI desktop assistant, supoorting Anthropic models and MCP servers as LLM tools.
752+
[Witsy](https://github.com/nbonamy/witsy) is an AI desktop assistant, supporting Anthropic models and MCP servers as LLM tools.
739753

740754
**Key features:**
741755

docs/docs.json

Lines changed: 1 addition & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -58,21 +58,7 @@
5858
]
5959
}
6060
]
61-
},
62-
{
63-
"tab": "SDKs",
64-
"icon": "book-open",
65-
"groups": [
66-
{
67-
"group": "Java",
68-
"pages": [
69-
"sdk/java/mcp-overview",
70-
"sdk/java/mcp-client",
71-
"sdk/java/mcp-server"
72-
]
73-
}
74-
]
75-
},
61+
},
7662
{
7763
"tab": "Specification",
7864
"icon": "book",

docs/quickstart/client.mdx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: "For Client Developers"
33
description: "Get started building your own client that can integrate with all MCP servers."
44
---
55

6-
In this tutorial, you'll learn how to build a LLM-powered chatbot client that connects to MCP servers. It helps to have gone through the [Server quickstart](/quickstart/server) that guides you through the basic of building your first server.
6+
In this tutorial, you'll learn how to build an LLM-powered chatbot client that connects to MCP servers. It helps to have gone through the [Server quickstart](/quickstart/server) that guides you through the basics of building your first server.
77

88
<Tabs>
99
<Tab title="Python">
@@ -598,7 +598,7 @@ async connectToServer(serverScriptPath: string) {
598598
command,
599599
args: [serverScriptPath],
600600
});
601-
this.mcp.connect(this.transport);
601+
await this.mcp.connect(this.transport);
602602

603603
const toolsResult = await this.mcp.listTools();
604604
this.tools = toolsResult.tools.map((tool) => {
@@ -640,7 +640,6 @@ async processQuery(query: string) {
640640
});
641641

642642
const finalText = [];
643-
const toolResults = [];
644643

645644
for (const content of response.content) {
646645
if (content.type === "text") {
@@ -653,7 +652,6 @@ async processQuery(query: string) {
653652
name: toolName,
654653
arguments: toolArgs,
655654
});
656-
toolResults.push(result);
657655
finalText.push(
658656
`[Calling tool ${toolName} with args ${JSON.stringify(toolArgs)}]`
659657
);
@@ -1474,6 +1472,7 @@ Then, add the required dependencies to your project:
14741472
dotnet add package ModelContextProtocol --prerelease
14751473
dotnet add package Anthropic.SDK
14761474
dotnet add package Microsoft.Extensions.Hosting
1475+
dotnet add package Microsoft.Extensions.AI
14771476
```
14781477

14791478
## Setting up your API key

docs/quickstart/server.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1085,7 +1085,7 @@ Create a new boot starter application using the `spring-ai-starter-mcp-client` d
10851085
```
10861086

10871087
and set the `spring.ai.mcp.client.stdio.servers-configuration` property to point to your `claude_desktop_config.json`.
1088-
You can re-use the existing Anthropic Desktop configuration:
1088+
You can reuse the existing Anthropic Desktop configuration:
10891089

10901090
```properties
10911091
spring.ai.mcp.client.stdio.servers-configuration=file:PATH/TO/claude_desktop_config.json
@@ -1573,7 +1573,7 @@ await app.RunAsync();
15731573

15741574
<Note>
15751575

1576-
When creating the `ApplicationHostBuilder`, ensure you use `CreateEmptyApplicationBuilder` instead of `CreateDefaultBuilder`. This ensures that the server does not write any additional messages to the console. This is only neccessary for servers using STDIO transport.
1576+
When creating the `ApplicationHostBuilder`, ensure you use `CreateEmptyApplicationBuilder` instead of `CreateDefaultBuilder`. This ensures that the server does not write any additional messages to the console. This is only necessary for servers using STDIO transport.
15771577

15781578
</Note>
15791579

docs/sdk/java/mcp-client.mdx

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
---
2-
title: MCP Client
2+
title: Java MCP Client
33
description: Learn how to use the Model Context Protocol (MCP) client to interact with MCP servers
44
---
55

6+
Go to the [Java MCP Server](/sdk/java/mcp-server) to learn how to build MCP servers or the [Java MCP Overview](/sdk/java/mcp-overview) to understand the overall architecture.
7+
68
# Model Context Protocol Client
79

810
The MCP Client is a key component in the Model Context Protocol (MCP) architecture, responsible for establishing and managing connections with MCP servers. It implements the client-side of the protocol, handling:
@@ -16,13 +18,17 @@ The MCP Client is a key component in the Model Context Protocol (MCP) architectu
1618
- Optional features like roots management and sampling support
1719

1820
<Tip>
19-
2021
The core `io.modelcontextprotocol.sdk:mcp` module provides STDIO and SSE client transport implementations without requiring external web frameworks.
2122

2223
Spring-specific transport implementations are available as an **optional** dependency `io.modelcontextprotocol.sdk:mcp-spring-webflux` for [Spring Framework](https://docs.spring.io/spring-ai/reference/api/mcp/mcp-client-boot-starter-docs.html) users.
2324

2425
</Tip>
2526

27+
<Tip>
28+
This [quickstart demo](/quickstart/client), based on Spring AI MCP, will show
29+
you how to build an AI client that connects to MCP servers.
30+
</Tip>
31+
2632
The client provides both synchronous and asynchronous APIs for flexibility in different application contexts.
2733

2834
<Tabs>

docs/sdk/java/mcp-overview.mdx

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,18 @@
11
---
2-
title: Overview
2+
title: Java SDK Overview
33
description: Introduction to the Model Context Protocol (MCP) Java SDK
44
---
55

66
Java SDK for the [Model Context Protocol](https://modelcontextprotocol.org/docs/concepts/architecture)
77
enables standardized integration between AI models and tools.
88

9-
<Note>
9+
## Content
1010

11-
### Breaking Changes in 0.8.x ⚠️
12-
13-
**Note:** Version 0.8.x introduces several breaking changes including a new session-based architecture.
14-
If you're upgrading from 0.7.0, please refer to the [Migration Guide](https://github.com/modelcontextprotocol/java-sdk/blob/main/migration-0.8.0.md) for detailed instructions.
15-
16-
</Note>
11+
- [Introduction](/sdk/java/mcp-overview#features) - Overview of the Model Context Protocol (MCP) Java SDK and its features.
12+
- [Architecture](/sdk/java/mcp-overview#architecture) - The Java MCP SDK architecture overview.
13+
- [Java Dependencies](/sdk/java/mcp-overview#dependencies) - Java dependencies required to use the MCP SDK.
14+
- [Java MCP Client](/sdk/java/mcp-client) - Learn how to use the MCP client to interact with MCP servers.
15+
- [Java MCP Server](/sdk/java/mcp-server) - Learn how to implement and configure an MCP server.
1716

1817
## Features
1918

@@ -55,12 +54,12 @@ The SDK follows a layered architecture with clear separation of concerns:
5554
- StdioTransport (stdin/stdout) in the core module
5655
- HTTP SSE transports in dedicated transport modules (Java HttpClient, Spring WebFlux, Spring WebMVC)
5756

58-
The MCP Client is a key component in the Model Context Protocol (MCP) architecture, responsible for establishing and managing connections with MCP servers.
57+
The [MCP Client](/sdk/java/mcp-client) is a key component in the Model Context Protocol (MCP) architecture, responsible for establishing and managing connections with MCP servers.
5958
It implements the client-side of the protocol.
6059

6160
![Java MCP Client Architecture](/images/java/java-mcp-client-architecture.jpg)
6261

63-
The MCP Server is a foundational component in the Model Context Protocol (MCP) architecture that provides tools, resources, and capabilities to clients.
62+
The [MCP Server](/sdk/java/mcp-server) is a foundational component in the Model Context Protocol (MCP) architecture that provides tools, resources, and capabilities to clients.
6463
It implements the server-side of the protocol.
6564

6665
![Java MCP Server Architecture](/images/java/java-mcp-server-architecture.jpg)
@@ -154,7 +153,7 @@ Add the BOM to your project:
154153
<dependency>
155154
<groupId>io.modelcontextprotocol.sdk</groupId>
156155
<artifactId>mcp-bom</artifactId>
157-
<version>0.9.0</version>
156+
<version>0.10.0</version>
158157
<type>pom</type>
159158
<scope>import</scope>
160159
</dependency>
@@ -168,7 +167,7 @@ Add the BOM to your project:
168167

169168
```groovy
170169
dependencies {
171-
implementation platform("io.modelcontextprotocol.sdk:mcp-bom:0.9.0")
170+
implementation platform("io.modelcontextprotocol.sdk:mcp-bom:0.10.0")
172171
//...
173172
}
174173
```

docs/sdk/java/mcp-server.mdx

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,9 @@
11
---
2-
title: MCP Server
2+
title: Java MCP Server
33
description: Learn how to implement and configure a Model Context Protocol (MCP) server
44
---
55

6-
<Note>
7-
8-
### Breaking Changes in 0.8.x ⚠️
9-
10-
**Note:** Version 0.8.x introduces several breaking changes including a new session-based architecture.
11-
If you're upgrading from 0.7.0, please refer to the [Migration Guide](https://github.com/modelcontextprotocol/java-sdk/blob/main/migration-0.8.0.md) for detailed instructions.
12-
13-
</Note>
6+
Go to the [Java MCP Client](/sdk/java/mcp-client) to learn how to build MCP clients or [Java MCP Overview](/sdk/java/mcp-overview) for a general overview of the Model Context Protocol (MCP) in Java.
147

158
## Overview
169

@@ -32,6 +25,11 @@ Spring-specific transport implementations are available as an **optional** depen
3225

3326
</Tip>
3427

28+
<Tip>
29+
This [quickstart demo](/quickstart/server), based on Spring AI MCP, will show
30+
you how to build an MCP server.
31+
</Tip>
32+
3533
The server supports both synchronous and asynchronous APIs, allowing for flexible integration in different application contexts.
3634

3735
<Tabs>
@@ -508,7 +506,7 @@ var mcpServer = McpServer.async(mcpServerTransportProvider)
508506
</Tabs>
509507

510508
The `McpSchema.CompletionReference` definition defines the type (`PromptRefernce` or `ResourceRefernce`) and the identifier for the completion specification (e.g handler).
511-
The handler function processes requests and returns the complition response.
509+
The handler function processes requests and returns the completion response.
512510
The first argument is `McpAsyncServerExchange` for client interaction, and the second argument is a `CompleteRequest` instance.
513511

514512
Check the [using completion](/sdk/java/mcp-client#using-completion) to learn how to use the completion capabilities on the client side.

docs/specification/draft/basic/authorization.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -214,7 +214,7 @@ even if they are part of the same logical session.
214214
Example request:
215215

216216
```http
217-
GET /v1/contexts HTTP/1.1
217+
GET /mcp HTTP/1.1
218218
Host: mcp.example.com
219219
Authorization: Bearer eyJhbGciOiJIUzI1NiIs...
220220
```
@@ -286,7 +286,7 @@ MCP clients **MUST** have redirect URIs registered with the authorization server
286286
Authorization servers **MUST** validate exact redirect URIs against pre-registered values to prevent redirection attacks.
287287

288288
MCP clients **SHOULD** use and verify state parameters in the authorization code flow
289-
and discard any results that do not include or have a mis-match with the original state.
289+
and discard any results that do not include or have a mismatch with the original state.
290290

291291
Authorization servers **MUST** take precautions to prevent redirecting user agents to untrusted URI's, following suggestions laid out in [OAuth 2.1 Section 7.12.2](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-v2-1-12#section-7.12.2)
292292

docs/specification/draft/basic/index.mdx

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
title: Overview
33
---
44

5+
<div id="enable-section-numbers" />
6+
57
<Info>**Protocol Revision**: draft</Info>
68

79
The Model Context Protocol consists of several key components that work together:
@@ -116,3 +118,29 @@ There is also a
116118
[JSON Schema](https://github.com/modelcontextprotocol/specification/blob/main/schema/draft/schema.json),
117119
which is automatically generated from the TypeScript source of truth, for use with
118120
various automated tooling.
121+
122+
### General fields
123+
124+
#### `_meta`
125+
126+
The `_meta` property/parameter is reserved by MCP to allow clients and servers
127+
to attach additional metadata to their interactions.
128+
129+
Certain key names are reserved by MCP for protocol-level metadata, as specified below;
130+
implementations must not make assumptions about values at these keys.
131+
132+
Additionally, definitions in the [schema](https://github.com/modelcontextprotocol/specification/blob/main/schema/draft/schema.ts)
133+
may reserve particular names for purpose-specific metadata, as declared in those definitions.
134+
135+
**Key name format:** valid `_meta` key names have two segments: an optional **prefix**, and a **name**.
136+
137+
**Prefix:**
138+
139+
- If specified, must be a series of labels separated by dots (`.`), followed by a slash (`/`).
140+
- Labels must start with a letter and end with a letter or digit; interior characters can be letters, digits, or hyphens (`-`).
141+
- The `modelcontextprotocol.[*]/` and `mcp.[*]/` prefixes are reserved for MCP use (where `[*]` stands for any top-level domain).
142+
143+
**Name:**
144+
145+
- Unless empty, must begin and end with an alphanumeric character (`[a-z0-9A-Z]`).
146+
- Could contain hyphens (`-`), underscores (`_`), dots (`.`), and alphanumerics in between.

0 commit comments

Comments
 (0)