From 302a232da43e9dd7e3ad5160f7721dd1974fc23e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 15 May 2026 12:49:40 +0000 Subject: [PATCH 1/6] Update stacklok/toolhive-studio to v0.35.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/upstream-projects.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/upstream-projects.yaml b/.github/upstream-projects.yaml index 89bfb331..1451198e 100644 --- a/.github/upstream-projects.yaml +++ b/.github/upstream-projects.yaml @@ -69,7 +69,7 @@ projects: - id: toolhive-studio repo: stacklok/toolhive-studio - version: v0.34.0 + version: v0.35.0 docs_paths: - docs/toolhive/guides-ui From e53fe6f7c8a8d7e357dd3ac57d7b43d97cad9db5 Mon Sep 17 00:00:00 2001 From: "claude[bot]" <41898282+claude[bot]@users.noreply.github.com> Date: Fri, 15 May 2026 13:01:55 +0000 Subject: [PATCH 2/6] Document UI playground and registry changes from studio v0.35.0 - Note per-thread persistence of agent/model/MCP tools/skills - Add agents, message copy/edit/queue, and per-message cost sections - Add custom-registry refresh button to registry guide --- docs/toolhive/guides-ui/playground.mdx | 103 +++++++++++++++++++++++-- docs/toolhive/guides-ui/registry.mdx | 5 ++ 2 files changed, 103 insertions(+), 5 deletions(-) diff --git a/docs/toolhive/guides-ui/playground.mdx b/docs/toolhive/guides-ui/playground.mdx index e7fd779d..516d8faa 100644 --- a/docs/toolhive/guides-ui/playground.mdx +++ b/docs/toolhive/guides-ui/playground.mdx @@ -38,9 +38,23 @@ conversational AI. ### Threaded conversations -Keep multiple chats organized in a sidebar with starred and recent groups. See +Keep multiple chats organized in a sidebar with starred and recent groups. Each +thread remembers its own agent, model, and toolset, so switching threads doesn't +reshuffle your selections. See [Manage playground threads](#manage-playground-threads). +### Agents + +Switch between built-in and custom agents to change the system prompt and +default toolset for a thread. See +[Choose an agent for a thread](#choose-an-agent-for-a-thread). + +### Message actions + +Copy any message, edit and resend your own messages, or queue a new message +while a response is still streaming. See +[Work with chat messages](#work-with-chat-messages). + ### Attachments Send images and PDFs alongside your prompt. See @@ -67,14 +81,17 @@ To start using the playground: - **OpenRouter**: Add OpenRouter API key for access to multiple model providers -3. **Select MCP tools**: Click the tools icon to manage which MCP servers and - tools are available in the playground. +3. **Select MCP tools**: Click the tools icon in the chat toolbar to manage + which MCP servers and tools are available in the active thread. - View all your running MCP servers - Enable or disable specific tools from each server - Search and filter tools by name or functionality - The `toolhive mcp` server is included by default, providing management capabilities + Tool selection is scoped to the thread. Other threads keep their own + selections, and new threads inherit your most recent choices. + Queued: `` - sends when the current response finishes + +When the current response finishes, the queued message sends automatically. +Click the **X** on the chip to cancel the queued message at any time. Only one +message can be queued at a time; submitting a second one replaces the queued +slot. Switching threads also clears the queue. + +If the streaming response fails instead of finishing cleanly, the queued message +stays in the chip but isn't sent automatically. Click the **X** to discard it. + +### See per-message cost + +For assistant messages that use a paid provider (OpenAI, Anthropic, Google, xAI, +OpenRouter), the playground shows an estimated USD cost next to the token totals +(for example, `100 → 50 = 150 • $0.0012`). Hover the totals to see a breakdown +of input, cached, output, and total cost. + +Pricing comes from [models.dev](https://models.dev/api.json) and is cached +locally and refreshed daily. Local providers like Ollama and LM Studio, and any +model without published pricing, render without a cost line. + +:::note + +These figures are estimates for guidance only. Refer to your provider's billing +dashboard for authoritative usage and charges. + +::: + ### Attach files to a message Add images and PDFs to a message so the model can read them while it works with diff --git a/docs/toolhive/guides-ui/registry.mdx b/docs/toolhive/guides-ui/registry.mdx index 15a6b269..192dca62 100644 --- a/docs/toolhive/guides-ui/registry.mdx +++ b/docs/toolhive/guides-ui/registry.mdx @@ -37,6 +37,11 @@ The registry interface displays a list of available servers. You can browse through the list, use search functionality, and click on any server to view detailed information before installing it. +When you've configured a custom registry, a **Refresh** button appears in the +page header. Click it to pull the latest registry metadata and server list on +demand, without having to restart ToolHive or reopen the page. The button is +hidden for the built-in registry. + ## View server details Click on any server in the registry to view detailed information including: From 73b148d9a6fb847aba3d29fa31fa1b477c05f93c Mon Sep 17 00:00:00 2001 From: "claude[bot]" <41898282+claude[bot]@users.noreply.github.com> Date: Fri, 15 May 2026 13:06:04 +0000 Subject: [PATCH 3/6] Apply editorial polish to v0.35.0 playground/registry edits - Customize tools tip now contrasts thread scope, not playground scope - Fix models.dev link to point at homepage, not raw API JSON - Tighten Copy bullet and custom-registry Refresh paragraph --- docs/toolhive/guides-ui/playground.mdx | 14 +++++++------- docs/toolhive/guides-ui/registry.mdx | 6 +++--- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/toolhive/guides-ui/playground.mdx b/docs/toolhive/guides-ui/playground.mdx index 516d8faa..4e7a77a3 100644 --- a/docs/toolhive/guides-ui/playground.mdx +++ b/docs/toolhive/guides-ui/playground.mdx @@ -112,7 +112,7 @@ To start using the playground: For more control over tool availability, use [Customize tools](./customize-tools.mdx) to permanently configure which tools are enabled for each registry server across all clients and threads. - Playground tool selection only applies inside the playground. + Playground tool selection applies only to the active thread. ::: @@ -261,9 +261,9 @@ the same time. New threads inherit the agent you used most recently. Hover over any message in the chat to reveal message actions: -- **Copy**: copy the text of a user or assistant message to your clipboard. Tool - inputs, tool outputs, and internal reasoning are excluded; tool result blocks - have their own per-block **Copy** button. +- **Copy**: copies the message text to your clipboard. Tool inputs, tool + outputs, and internal reasoning are excluded; tool result blocks have their + own per-block **Copy** button. - **Edit**: only available on your own messages. Pre-fills the composer with the message text so you can revise and resend it. @@ -303,9 +303,9 @@ OpenRouter), the playground shows an estimated USD cost next to the token totals (for example, `100 → 50 = 150 • $0.0012`). Hover the totals to see a breakdown of input, cached, output, and total cost. -Pricing comes from [models.dev](https://models.dev/api.json) and is cached -locally and refreshed daily. Local providers like Ollama and LM Studio, and any -model without published pricing, render without a cost line. +Pricing comes from [models.dev](https://models.dev) and is cached locally and +refreshed daily. Local providers like Ollama and LM Studio, and any model +without published pricing, render without a cost line. :::note diff --git a/docs/toolhive/guides-ui/registry.mdx b/docs/toolhive/guides-ui/registry.mdx index 192dca62..293a8dab 100644 --- a/docs/toolhive/guides-ui/registry.mdx +++ b/docs/toolhive/guides-ui/registry.mdx @@ -38,9 +38,9 @@ through the list, use search functionality, and click on any server to view detailed information before installing it. When you've configured a custom registry, a **Refresh** button appears in the -page header. Click it to pull the latest registry metadata and server list on -demand, without having to restart ToolHive or reopen the page. The button is -hidden for the built-in registry. +page header. Click it to pull the latest registry metadata and server list +without restarting ToolHive or reopening the page. The button is hidden for the +built-in registry. ## View server details From 0aecf6bf4638498509d32aa2f0dca4ef37af2a82 Mon Sep 17 00:00:00 2001 From: "claude[bot]" <41898282+claude[bot]@users.noreply.github.com> Date: Fri, 15 May 2026 16:20:15 +0000 Subject: [PATCH 4/6] Remove WIP refresh button section from registry docs Co-authored-by: Samuele V --- docs/toolhive/guides-ui/registry.mdx | 5 ----- 1 file changed, 5 deletions(-) diff --git a/docs/toolhive/guides-ui/registry.mdx b/docs/toolhive/guides-ui/registry.mdx index 293a8dab..15a6b269 100644 --- a/docs/toolhive/guides-ui/registry.mdx +++ b/docs/toolhive/guides-ui/registry.mdx @@ -37,11 +37,6 @@ The registry interface displays a list of available servers. You can browse through the list, use search functionality, and click on any server to view detailed information before installing it. -When you've configured a custom registry, a **Refresh** button appears in the -page header. Click it to pull the latest registry metadata and server list -without restarting ToolHive or reopening the page. The button is hidden for the -built-in registry. - ## View server details Click on any server in the registry to view detailed information including: From 308da6f309e7b78e7ef734fca50289730c7707bd Mon Sep 17 00:00:00 2001 From: "claude[bot]" <41898282+claude[bot]@users.noreply.github.com> Date: Fri, 15 May 2026 16:34:10 +0000 Subject: [PATCH 5/6] Reframe Playground page as agent workspace Restructure playground.mdx end-to-end so AI agents - not MCP server testing - are the headline use case. Built-in agents (ToolHive Assistant, Skill Engineer) and the Manage agents page are now first class; MCP tools and skills are positioned as per-thread inputs downstream of agent selection. MCP testing moves to one of several example workflows. Co-authored-by: Samuele V --- docs/toolhive/guides-ui/playground.mdx | 383 +++++++++++++------------ 1 file changed, 195 insertions(+), 188 deletions(-) diff --git a/docs/toolhive/guides-ui/playground.mdx b/docs/toolhive/guides-ui/playground.mdx index 4e7a77a3..4984ec61 100644 --- a/docs/toolhive/guides-ui/playground.mdx +++ b/docs/toolhive/guides-ui/playground.mdx @@ -1,60 +1,57 @@ --- -title: Test MCP servers +title: Chat with AI agents description: - Use the playground feature to test and validate MCP servers directly in the - ToolHive UI with AI model providers. + Chat with built-in or custom AI agents in the ToolHive playground, with + per-thread agent, model, MCP tool, and skill selection. --- import useBaseUrl from '@docusaurus/useBaseUrl'; import ThemedImage from '@theme/ThemedImage'; -ToolHive's playground lets you test and validate MCP servers directly in the UI -without requiring additional client setup. This streamlined testing environment -helps you quickly evaluate functionality and behavior before deploying MCP -servers to production environments. +The ToolHive playground is a chat workspace for AI agents - built-in or your +own - that runs inside the desktop app. Each thread runs against an agent that +sets the system prompt and a default toolset. You can then give that agent +specific MCP tools and skills, and chat with it directly. Testing MCP servers is +one workflow the playground supports, alongside building skills, managing your +ToolHive setup through chat, and any other chat-driven task you want an agent +for. ## Key capabilities -### Instant testing of MCP servers +### Built-in and custom agents -Configure your AI model providers, select your MCP servers and tools, and begin -testing immediately in the desktop app. The playground eliminates the friction -of setting up external AI clients just to validate that your MCP servers work -correctly. +Switch between the built-in **ToolHive Assistant** and **Skill Engineer** +agents, or create your own with a custom name, description, and system prompt. +See [Choose an agent for a thread](#choose-an-agent-for-a-thread). -### Detailed interaction logs - -See tool details, parameters, and execution results directly in the UI, ensuring -full visibility into tool performance and responses. Every interaction is -logged, making it easy to understand exactly what your MCP servers are doing and -how they respond to requests. +### Per-thread context -### Integrated ToolHive management +Each thread keeps its own agent, model, MCP tool selection, and skill selection, +so switching threads doesn't reshuffle your setup. See +[Manage chat threads](#manage-chat-threads). -The playground includes a built-in MCP server that lets you manage your other -MCP servers directly through natural language commands. You can list servers, -check their status, start or stop them, and perform other management tasks using -conversational AI. +### Conversational ToolHive management -### Threaded conversations +The default ToolHive Assistant uses a built-in MCP server (`toolhive mcp`) to +manage your other MCP servers through chat: list servers, check status, start or +stop them, and view logs without leaving the conversation. -Keep multiple chats organized in a sidebar with starred and recent groups. Each -thread remembers its own agent, model, and toolset, so switching threads doesn't -reshuffle your selections. See -[Manage playground threads](#manage-playground-threads). - -### Agents +### Detailed interaction logs -Switch between built-in and custom agents to change the system prompt and -default toolset for a thread. See -[Choose an agent for a thread](#choose-an-agent-for-a-thread). +See tool calls, parameters, execution status, response data, and timing inline +in the chat so you can verify exactly what an agent is doing. ### Message actions -Copy any message, edit and resend your own messages, or queue a new message +Copy any message, edit and rewind a previous user message, or queue a follow-up while a response is still streaming. See [Work with chat messages](#work-with-chat-messages). +### Per-message cost + +For paid providers, see an estimated USD cost next to the token totals on each +assistant message. See [See per-message cost](#see-per-message-cost). + ### Attachments Send images and PDFs alongside your prompt. See @@ -81,139 +78,101 @@ To start using the playground: - **OpenRouter**: Add OpenRouter API key for access to multiple model providers -3. **Select MCP tools**: Click the tools icon in the chat toolbar to manage - which MCP servers and tools are available in the active thread. - - View all your running MCP servers - - Enable or disable specific tools from each server - - Search and filter tools by name or functionality - - The `toolhive mcp` server is included by default, providing management - capabilities +3. **Start a thread**: Click **New chat** in the sidebar. New threads open with + the **ToolHive Assistant** agent the first time you use the playground, and + inherit the agent, model, MCP tool selection, and skill selection from the + thread you used most recently after that. - Tool selection is scoped to the thread. Other threads keep their own - selections, and new threads inherit your most recent choices. +4. **Pick an agent (optional)**: Use the agent selector in the chat toolbar to + switch to **Skill Engineer**, a custom agent, or open **Manage agents** to + build a new one. See + [Choose an agent for a thread](#choose-an-agent-for-a-thread). - +5. **Add MCP tools and skills (optional)**: Pick which MCP tools and installed + skills the agent can use in this thread. See + [Configure MCP tools and skills for a thread](#configure-mcp-tools-and-skills-for-a-thread). - :::tip +6. **Start chatting**: Send a message. The agent uses its system prompt together + with the tools and skills you enabled for this thread. - For more control over tool availability, use - [Customize tools](./customize-tools.mdx) to permanently configure which tools - are enabled for each registry server across all clients and threads. - Playground tool selection applies only to the active thread. +## Choose an agent for a thread - ::: +Each thread runs against an agent that sets the system prompt and a default +toolset. Two agents are built in: -4. **Start testing**: Begin chatting with your chosen AI model. The model will - have access to all enabled MCP tools and can execute them based on your - requests. +- **ToolHive Assistant** is the default. It's tuned to manage your MCP servers, + run tools through them, and answer questions about ToolHive itself. +- **Skill Engineer** is tuned to design, build, and audit + [skills](./skills.mdx). -5. **Manage chat threads**: See - [Manage playground threads](#manage-playground-threads) for sidebar, rename, - star, and delete actions. +To switch agents on the active thread, open the agent selector in the chat +toolbar and pick one. Agent selection is per-thread, so different threads can +run different agents at the same time. New threads inherit the agent you used +most recently. -6. **Attach images or PDFs**: See - [Attach files to a message](#attach-files-to-a-message) for supported types - and limits. +### Manage custom agents -## Using the playground +You can build your own agents alongside the built-ins. Open the agent selector +and choose **Manage agents** to open the **Agents** page. From there you can: -### Testing MCP server functionality +- **Create an agent** with a name, description, and system prompt. +- **Edit** an existing custom agent. +- **Delete** a custom agent you no longer need. -Use the playground to validate that your MCP servers work as expected: +Custom agents appear in the agent selector alongside the built-ins so you can +pick them for any thread. -```text -Can you list all my MCP servers and show their current status? -``` +## Configure MCP tools and skills for a thread -The AI will use the `list_servers` tool from the ToolHive MCP server to provide -a comprehensive overview of your server status. +After you pick an agent, choose which MCP tools and skills it can use in the +active thread. Both selections are scoped to the thread and persist across +reloads. New threads inherit your most recent choices. + +### MCP tools + +Click the tools icon in the chat toolbar to manage which MCP servers and tools +are available in the active thread: + +- View all your running MCP servers +- Enable or disable specific tools from each server +- Search and filter tools by name or functionality +- The `toolhive mcp` server is included by default, providing management + capabilities -Or test that an individual MCP tool is working as expected: - -```text -Use the GitHub MCP server to search for recent issues in the microsoft/vscode repository -``` - -If you have the GitHub MCP server running, the AI will execute the appropriate -GitHub API calls and return formatted results. - -### Managing servers through conversation - -The ToolHive desktop app automatically starts a dedicated MCP server -(`toolhive mcp`) that orchestrates ToolHive operations through natural language -commands. This approach provides several key benefits: - -- **Unified interface**: Manage your MCP infrastructure using the same - conversational AI interface you use for testing. -- **Contextual operations**: The AI understands your current server state and - can make intelligent decisions about which servers to start, stop, or - troubleshoot. -- **Reduced complexity**: No need to switch between the chat interface and - traditional UI controls. Everything can be done through conversation. -- **Audit trail**: All management operations are logged in the same transparent - way as tool executions, providing clear visibility into what actions were - taken. +:::tip -Take advantage of these integrated ToolHive management tools: +For more control over tool availability, use +[Customize tools](./customize-tools.mdx) to permanently configure which tools +are enabled for each registry server across all clients and threads. Playground +tool selection applies only to the active thread. -```text -Start the fetch MCP server for me -``` - -```text -Stop all unhealthy MCP servers -``` - -```text -Show me the logs for the fetch MCP server -``` - -### Validating tool responses - -The playground shows detailed information about each tool execution: +::: -- **Tool name and description**: What tool was called and its purpose -- **Input parameters**: The exact parameters passed to the tool -- **Execution status**: Whether the tool succeeded or failed -- **Response data**: The complete response from the tool -- **Timing information**: How long the tool took to execute +### Skills -This visibility helps you understand exactly how your MCP servers are behaving -and identify any issues with tool implementation or configuration. +If you've installed [skills](./skills.mdx), pick which ones the agent can use in +this thread alongside its MCP tools. Skill selection is per-thread, same as MCP +tools, so different threads can give the same agent different skill sets. -### Manage playground threads +## Manage chat threads The playground keeps each conversation in a separate thread so you can run -several testing sessions in parallel without losing context. Open the sidebar to -see your threads, with **Starred** entries pinned at the top and **Recents** -below. Untitled threads show as `New chat` until you give them a name. +several sessions in parallel without losing context. Open the sidebar to see +your threads, with **Starred** entries pinned at the top and **Recents** below. +Untitled threads show as `New chat` until you give them a name. Each row shows a relative timestamp such as `just now`, `5m ago`, `2h ago`, or `3d ago`. Older threads show a short date instead. @@ -238,34 +197,15 @@ To work with threads: Confirm with **Delete**, or back out with **Cancel**. -### Choose an agent for a thread - -Each thread runs against an agent that sets the system prompt and a default -toolset. Use the agent selector in the chat toolbar to pick one for the active -thread. Two agents are built in: - -- **ToolHive Assistant** is the default. It's tuned to manage your MCP servers, - run tools, and answer questions about ToolHive itself. -- **Skill Engineer** is tuned to design, build, and audit - [skills](./skills.mdx). - -To add your own, open the agent selector and choose **Manage agents** to open -the **Agents** page, where you can create, edit, and delete custom agents with -their own name, description, and system prompt. Custom agents appear in the -selector alongside the built-ins. - -Agent selection is per-thread, so different threads can run different agents at -the same time. New threads inherit the agent you used most recently. - -### Work with chat messages +## Work with chat messages Hover over any message in the chat to reveal message actions: -- **Copy**: copies the message text to your clipboard. Tool inputs, tool - outputs, and internal reasoning are excluded; tool result blocks have their - own per-block **Copy** button. -- **Edit**: only available on your own messages. Pre-fills the composer with the - message text so you can revise and resend it. +- **Copy** copies the message text to your clipboard. Tool inputs, tool outputs, + and internal reasoning are excluded; tool result blocks have their own + per-block **Copy** button. +- **Edit** is only available on your own messages. It pre-fills the composer + with the message text so you can revise and resend it. The behavior of **Edit** depends on whether the assistant is currently responding: @@ -280,7 +220,7 @@ responding: To exit edit mode, click **cancel** on the chip or empty the composer. -#### Queue a message while a response is streaming +### Queue a message while a response is streaming If you type into the composer while the assistant is still streaming, the submit button switches to a send icon. Clicking it queues your message instead of @@ -316,7 +256,7 @@ dashboard for authoritative usage and charges. ### Attach files to a message -Add images and PDFs to a message so the model can read them while it works with +Add images and PDFs to a message so the agent can read them while it works with your MCP tools. The composer accepts up to 5 files per message, each 10 MB or smaller, and supports image files and PDFs. @@ -367,33 +307,97 @@ The composer placeholder reflects the playground state: > Type your message... +## Example workflows + +The playground supports any chat-driven task you want an agent for. A few common +starting points: + +### Manage MCP servers through conversation + +The desktop app starts a dedicated MCP server (`toolhive mcp`) that orchestrates +ToolHive operations through natural language. With the default **ToolHive +Assistant** agent, you can list, start, stop, and inspect servers without +leaving the chat: + +```text +Can you list all my MCP servers and show their current status? +``` + +```text +Start the fetch MCP server for me +``` + +```text +Stop all unhealthy MCP servers +``` + +```text +Show me the logs for the fetch MCP server +``` + +The agent calls the matching `toolhive mcp` tools and shows the results inline, +giving you a unified interface and an audit trail in the same place as any other +tool execution. + + + +### Test MCP server functionality + +Use the playground to validate that an MCP server works as expected before you +connect external clients to it. Enable the server's tools in the active thread, +then prompt the agent to call them: + +```text +Use the GitHub MCP server to search for recent issues in the +microsoft/vscode repository +``` + +If the GitHub MCP server is running, the agent makes the appropriate API calls +and returns formatted results. The playground shows each tool execution inline: + +- **Tool name and description**: what tool was called and its purpose +- **Input parameters**: the exact parameters passed to the tool +- **Execution status**: whether the tool succeeded or failed +- **Response data**: the complete response from the tool +- **Timing information**: how long the tool took to execute + +This makes it easy to spot tool implementation or configuration issues. + +### Build and audit skills + +Switch to the **Skill Engineer** agent on a thread to design new skills, refine +an existing one, or audit a skill's behavior. See [Skills](./skills.mdx) for +details on skill formats and how to install or build your own. + ## Recommended practices ### Provider security -- Use dedicated API keys for testing that have appropriate rate limits -- Regularly rotate API keys used in development environments -- Consider using API keys with restricted permissions for testing purposes +- Use dedicated API keys for testing that have appropriate rate limits. +- Regularly rotate API keys used in development environments. +- Consider using API keys with restricted permissions for testing purposes. - When using local providers like Ollama or LM Studio, ensure the server URLs - are only accessible on your local network to prevent unauthorized access + are only accessible on your local network to prevent unauthorized access. -### Server management +### Agents, servers, and tools -- Start only the MCP servers you need for testing to improve performance +- Start only the MCP servers you need so that agents only see relevant tools. +- Save reusable prompts as custom agents so you don't have to retype the system + prompt for every new thread. - Use the playground to validate new server configurations before connecting - them to production AI clients -- Test different combinations of tools to understand how they work together - -### Testing workflow - -1. **Isolated testing**: Test individual MCP servers one at a time to validate - their functionality -2. **Integration testing**: Enable multiple servers to test how they work - together -3. **Performance validation**: Monitor tool execution times and responses under - different loads -4. **Error handling**: Intentionally trigger error conditions to validate proper - error handling + them to external AI clients. ### Thread and attachment hygiene @@ -407,18 +411,21 @@ The composer placeholder reflects the playground state: ## Next steps -- Learn about [client configuration](./client-configuration.mdx) to connect +- Browse the [Skills](./skills.mdx) section to install or build skills you can + enable in a thread +- Configure [client configuration](./client-configuration.mdx) to connect ToolHive to external AI applications - Set up [secrets management](./secrets-management.mdx) for secure handling of API keys and tokens - Explore [network isolation](./network-isolation.mdx) for enhanced security when testing untrusted MCP servers -- Browse the [registry](./registry.mdx) to discover new MCP servers to test in - the playground +- Discover more MCP servers to add to your agent threads in the + [registry](./registry.mdx) ## Related information - [Run MCP servers](./run-mcp-servers.mdx) +- [Skills](./skills.mdx) - [Install ToolHive](./install.mdx) ## Troubleshooting @@ -452,7 +459,7 @@ If your MCP server tools aren't showing up: 1. Verify the MCP server is running on the **MCP Servers** page. 2. Click the tools icon in the playground and confirm the server's tools are - enabled for this session. + enabled for this thread. 3. Restart the MCP server if it shows as unhealthy. 4. Check the server logs for errors. From 0bf738d5c2f85076ccf477b134af1492915f2ccd Mon Sep 17 00:00:00 2001 From: Dan Barr <6922515+danbarr@users.noreply.github.com> Date: Fri, 15 May 2026 14:24:27 -0400 Subject: [PATCH 6/6] Tighten Playground page and promote it in sidebar Editorial polish on the v0.35.0 rewrite: - Collapse the seven Key capabilities h3s into a bulleted list so the ToC stops carrying one-line subsections. - Fix the intro's spaced-hyphen parenthetical and trailing-preposition catch-all. - Split step 3 in Getting started so "After that" no longer dangles. - Drop the redundant rejected-file toast list and the self-explanatory composer-placeholder block. - "Configure client configuration" -> "Set up client configuration" in Next steps. Move the Playground page above CLI access in the ToolHive UI sidebar now that it's a primary workspace, not a test harness. Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/toolhive/guides-ui/playground.mdx | 115 ++++++++----------------- sidebars.ts | 2 +- 2 files changed, 36 insertions(+), 81 deletions(-) diff --git a/docs/toolhive/guides-ui/playground.mdx b/docs/toolhive/guides-ui/playground.mdx index 4984ec61..7de215f3 100644 --- a/docs/toolhive/guides-ui/playground.mdx +++ b/docs/toolhive/guides-ui/playground.mdx @@ -8,54 +8,36 @@ description: import useBaseUrl from '@docusaurus/useBaseUrl'; import ThemedImage from '@theme/ThemedImage'; -The ToolHive playground is a chat workspace for AI agents - built-in or your -own - that runs inside the desktop app. Each thread runs against an agent that -sets the system prompt and a default toolset. You can then give that agent -specific MCP tools and skills, and chat with it directly. Testing MCP servers is -one workflow the playground supports, alongside building skills, managing your -ToolHive setup through chat, and any other chat-driven task you want an agent -for. +The ToolHive playground is a chat workspace for built-in or custom AI agents +that runs inside the desktop app. Each thread runs against an agent that sets +the system prompt and a default toolset. You can then give that agent specific +MCP tools and skills, and chat with it directly. Testing MCP servers is one +workflow the playground supports, alongside building skills and managing your +ToolHive setup through chat. ## Key capabilities -### Built-in and custom agents - -Switch between the built-in **ToolHive Assistant** and **Skill Engineer** -agents, or create your own with a custom name, description, and system prompt. -See [Choose an agent for a thread](#choose-an-agent-for-a-thread). - -### Per-thread context - -Each thread keeps its own agent, model, MCP tool selection, and skill selection, -so switching threads doesn't reshuffle your setup. See -[Manage chat threads](#manage-chat-threads). - -### Conversational ToolHive management - -The default ToolHive Assistant uses a built-in MCP server (`toolhive mcp`) to -manage your other MCP servers through chat: list servers, check status, start or -stop them, and view logs without leaving the conversation. - -### Detailed interaction logs - -See tool calls, parameters, execution status, response data, and timing inline -in the chat so you can verify exactly what an agent is doing. - -### Message actions - -Copy any message, edit and rewind a previous user message, or queue a follow-up -while a response is still streaming. See -[Work with chat messages](#work-with-chat-messages). - -### Per-message cost - -For paid providers, see an estimated USD cost next to the token totals on each -assistant message. See [See per-message cost](#see-per-message-cost). - -### Attachments - -Send images and PDFs alongside your prompt. See -[Attach files to a message](#attach-files-to-a-message). +- **Built-in and custom agents**: switch between the built-in **ToolHive + Assistant** and **Skill Engineer** agents, or create your own with a custom + name, description, and system prompt. See + [Choose an agent for a thread](#choose-an-agent-for-a-thread). +- **Per-thread settings**: each thread keeps its own agent, model, MCP tool + selection, and skill selection, so switching threads doesn't reshuffle your + setup. +- **Conversational ToolHive management**: the default agent uses a built-in MCP + server (`toolhive mcp`) to list, start, stop, and inspect your other MCP + servers from the chat. See + [Manage MCP servers through conversation](#manage-mcp-servers-through-conversation). +- **Inline tool calls**: see tool calls, parameters, status, response data, and + timing in the chat so you can verify exactly what an agent is doing. +- **Message actions**: copy any message, edit and rewind a previous user + message, or queue a follow-up while a response is still streaming. See + [Work with chat messages](#work-with-chat-messages). +- **Per-message cost**: see an estimated USD cost next to the token totals on + each assistant message for paid providers. See + [See per-message cost](#see-per-message-cost). +- **Attachments**: send images and PDFs alongside your prompt. See + [Attach files to a message](#attach-files-to-a-message). ## Getting started @@ -78,10 +60,10 @@ To start using the playground: - **OpenRouter**: Add OpenRouter API key for access to multiple model providers -3. **Start a thread**: Click **New chat** in the sidebar. New threads open with - the **ToolHive Assistant** agent the first time you use the playground, and - inherit the agent, model, MCP tool selection, and skill selection from the - thread you used most recently after that. +3. **Start a thread**: Click **New chat** in the sidebar. The first time you use + the playground, new threads open with the **ToolHive Assistant** agent. After + that, new threads inherit the agent, model, MCP tool selection, and skill + selection from your most recently used thread. 4. **Pick an agent (optional)**: Use the agent selector in the chat toolbar to switch to **Skill Engineer**, a custom agent, or open **Manage agents** to @@ -277,35 +259,8 @@ message: - **PDFs** show as `📎 ` with a **Download** link so you can save the original file. -If a file is rejected, the playground shows a toast that explains why: - -- When you exceed the per-message limit: - - > You reached the maximum number of files - > - > You can only upload up to 5 files - -- When a file is over 10 MB: - - > File size too large - > - > The file size must be less than 10MB - -- When a file isn't an image or a PDF: - - > File type not supported - > - > Only images and PDFs are supported - -The composer placeholder reflects the playground state: - -- Before you select a model: - - > Select an AI model to get started - -- After you select a model: - - > Type your message... +If a file exceeds these limits or isn't a supported type, the playground rejects +it and shows a notification explaining why. ## Example workflows @@ -413,8 +368,8 @@ details on skill formats and how to install or build your own. - Browse the [Skills](./skills.mdx) section to install or build skills you can enable in a thread -- Configure [client configuration](./client-configuration.mdx) to connect - ToolHive to external AI applications +- Set up [client configuration](./client-configuration.mdx) to connect ToolHive + to external AI applications - Set up [secrets management](./secrets-management.mdx) for secure handling of API keys and tokens - Explore [network isolation](./network-isolation.mdx) for enhanced security diff --git a/sidebars.ts b/sidebars.ts index 9fa905bf..bd77117e 100644 --- a/sidebars.ts +++ b/sidebars.ts @@ -75,8 +75,8 @@ const sidebars: SidebarsConfig = { 'toolhive/guides-ui/skills-manage', ], }, - 'toolhive/guides-ui/cli-access', 'toolhive/guides-ui/playground', + 'toolhive/guides-ui/cli-access', ], },