Skip to content

Commit e27aae2

Browse files
committed
Make tool name conflict docs less prescriptive
1 parent d370455 commit e27aae2

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

docs/docs/concepts/tools.mdx

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -215,12 +215,14 @@ When implementing tools:
215215

216216
### Tool name conflicts
217217

218-
MCP client applications and MCP server proxies may encounter tool name conflicts when building their own tool lists.
219-
To resolve these conflicts, we recommend maintaining a unique identifier for each connected MCP server, and prefixing that to the tool name with `___` (three underscores) as a separator.
218+
MCP client applications and MCP server proxies may encounter tool name conflicts when building their own tool lists. For example, two connected MCP servers `web1` and `web2` may both expose a tool named `search_web`.
220219

221-
For example, if two web search MCP servers called `a` and `b` both expose a `search_web` tool, client applications or proxies may consider registering these as `a___search_web` and `b___search_web` to disambiguate them.
220+
Applications most often disambiguiate tools with one of the following strategies:
222221

223-
For client applications with an MCP configuration file, we recommend using the name of the server as provided by the end-user in the configuration as a unique key. Server-provided names are not guaranteed to be unique.
222+
- Concatenating a unique, user-defined server name with the tool name, e.g. `web1___search_web` and `web2___search_web`. This strategy may be preferable when unique server names are already provided by the user in a configuration file.
223+
- Generating a random prefix for the tool name, e.g. `jrwxs___search_web` and `6cq52___search_web`. This strategy may be preferable in server proxies where user-defined unique names are not available.
224+
225+
Note that the server-provided name from the initialization flow is not guaranteed to be unique and is not generally suitable for disambiguation purposes.
224226

225227
## Security considerations
226228

0 commit comments

Comments
 (0)