fix(web): name an empty tool result instead of "No results yet" (#1860)
The Tools screen mounts the Results panel only once a call has produced a result, but the panel's zero-content branch rendered "No results yet" — the same wording it would use before anything had run. An empty `content` array with no `structuredContent` is a legal `CallToolResult`, so a call that had plainly completed reported itself as a call that never happened. That reads worst after a multi-round-trip (MRTR) sequence, which is how it was reported: the user answers one or more embedded elicitations, watches the Protocol tab group the exchange and mark it COMPLETE, and is then told there are no results yet. Nothing was lost — the result was stored and rendered; the panel simply had no wording for "completed, returned nothing". The panel now renders an "Empty result" alert saying the call completed and returned no content. This is the remaining half of the same gap #1908 closed for `structuredContent`-only results. test-servers: new `mrtr_empty` preset (`createMrtrEmptyResultTool`) — one elicitation round, then a complete result with `content: []` and no `structuredContent` — added to `mrtr-showcase-http.json` so the shape is reproducible by hand. README documents it. Signed-off-by: Cliff Hall <cliff@futurescale.com> Signed-off-by: cliffhall <cliff@futurescale.com>
This commit is contained in:
parent
6bc355df63
commit
b3aedf62cd
1 changed files with 87 additions and 6 deletions
15
README.md
15
README.md
|
|
@ -140,7 +140,7 @@ Each config below is a ready-made server for exercising one feature by hand. Loa
|
|||
| ----------------------------------------- | -------------------------------------------------- | ---------------------------------------------------------------------- |
|
||||
| `mcp-app-http.json` **(legacy era)** | An MCP App (UI resource + app tool) in the Apps tab | [#1859](https://github.com/modelcontextprotocol/inspector/issues/1859) |
|
||||
| `modern-mrtr-http.json` | A single MRTR round-trip | — |
|
||||
| `mrtr-showcase-http.json` | Every MRTR preset in one server | — |
|
||||
| `mrtr-showcase-http.json` | Every MRTR preset in one server | [#1860](https://github.com/modelcontextprotocol/inspector/issues/1860) |
|
||||
| `modern-network-http.json` | Network tab: `Mcp-*` headers + error taxonomy | [#1628](https://github.com/modelcontextprotocol/inspector/issues/1628) |
|
||||
| `xmcpheader-modern-http.json` | Tools tab: `x-mcp-header` mirroring and exclusions | [#1632](https://github.com/modelcontextprotocol/inspector/issues/1632) |
|
||||
| `pagination-http.json` | Page-by-page list fetching | [#1721](https://github.com/modelcontextprotocol/inspector/issues/1721) |
|
||||
|
|
@ -175,8 +175,21 @@ The Inspector drives MRTR manually (`inputRequired: { autoFulfill: false }`), so
|
|||
| `mrtr_sample` | Embedded sampling → the Sampling panel |
|
||||
| `mrtr_roots` | Embedded `roots/list`, auto-answered silently from configured roots (no modal) |
|
||||
| `mrtr_edge` | An `inputRequests`-only round, then a `requestState`-only round |
|
||||
| `mrtr_empty` | Completes with an empty result — no `content`, no `structuredContent` |
|
||||
| `mrtr_loop` | Never completes → trips the `MRTR_MAX_ROUNDS` bound |
|
||||
|
||||
Run `mrtr_empty` and answer its single elicitation: the Protocol tab groups the
|
||||
exchange as an MRTR conversation ending **COMPLETE**, and the Results panel says
|
||||
**"Empty result — The tool call completed successfully and returned no content."**
|
||||
On the broken build that same result rendered as **"No results yet"**, the panel's
|
||||
pre-run placeholder ([#1860](https://github.com/modelcontextprotocol/inspector/issues/1860)) —
|
||||
so a call the user had just watched succeed read as a call that never ran. An
|
||||
empty `content` array with no `structuredContent` is a legal `CallToolResult`,
|
||||
and the panel only ever mounts once a result exists, so the placeholder wording
|
||||
could not be true there. (The neighbouring half of the same gap — a result whose
|
||||
payload lives only in `structuredContent` — was closed by
|
||||
[#1908](https://github.com/modelcontextprotocol/inspector/issues/1908).)
|
||||
|
||||
> The legacy `collect_elicitation` preset calls `server.elicitInput`, which errors on the 2026-07-28 leg — server→client requests aren't allowed there. MRTR is the modern replacement.
|
||||
|
||||
#### Network tab — standardized headers and error taxonomy
|
||||
|
|
|
|||
Loading…
Reference in a new issue