@@ -209,16 +209,23 @@ ToolHive cannot find one of the specified tools.
209209
210210# ## Override tool names and descriptions
211211
212- With ToolHive you can change modify how tools exposed by an MCP server are
213- exposed to clients. In particular, tool names and descriptions can be changed.
212+ With ToolHive you can modify how tools exposed by an MCP server are exposed to
213+ clients. In particular, tool names and descriptions can be changed.
214214
215- This can be useful in cases where network policies are applied and tool
216- descriptions need to reflect that, or to trick an Agent into calling a specific
217- tool when some particular question is asked.
215+ This is useful when you want to guide an agent toward calling a specific tool
216+ for particular questions.
218217
219- Taking the `fetch` MCP server as an example, which exposes a single `fetch` tool
220- with the a description like
221- ` "Fetches a URL from the internet and optionally extracts its contents as markdown."`
218+ One common use case is running multiple copies of the same MCP server with
219+ different [network access levels](./network-isolation.mdx)—one for internal
220+ resources and another for public internet access. By overriding the tool names
221+ and descriptions, you can help your agent choose the right server for each task.
222+
223+ For example, the `fetch` MCP server exposes a single `fetch` tool with a
224+ description like :
225+
226+ ` ` `
227+ "Fetches a URL from the internet and optionally extracts its contents as markdown."
228+ ` ` `
222229
223230You can now change it by supplying a file like the following
224231
@@ -233,27 +240,25 @@ You can now change it by supplying a file like the following
233240}
234241` ` `
235242
236- Which must then be passed to `thv run`
243+ Then pass this file to [ `thv run`](../reference/cli/thv_run.md) :
237244
238245` ` ` sh
239246thv run --tools-override override.json fetch
240247` ` `
241248
242- Note that the key of the nested object is the _actual name_ of the tool, while
243- the value specified in the nested object is the _overridden name_ that the
244- Client will see.
249+ The key in the override object is the _original tool name_, while the `name`
250+ field contains the _new name_ that clients will see.
245251
246252:::info
247253
248- Additional care must be taken when using `--tools` and `-tools-override`
249- together in the same command.
254+ Take care when using `--tools` and `-- tools-override` together in the same
255+ command.
250256
251- Tool Filtering and Tool Overrides are mostly orthogonal, with the former
252- limiting access to a subset of filters, while the latter changes how the set
253- looks like.
257+ Tool filtering and tool overrides work independently : filtering limits access to
258+ a subset of tools, while overrides change how those tools appear to clients.
254259
255- When you want to use both, `--tools` must refer to _overridden names_, i.e. the
256- new names you get to define, since that's what the Client will eventually see.
260+ When using both options , `--tools` must reference the _overridden names_ ( the
261+ new names you define) since those are what clients will see.
257262
258263:: :
259264
0 commit comments