Skip to content

Probe prompts and resources alongside tools - #61

Merged
lbesecker195 merged 1 commit into
mainfrom
feat/probe-prompts-resources
Sep 24, 2026
Merged

lbesecker195 merged 1 commit into
mainfrom
feat/probe-prompts-resources

Conversation

@lbesecker195

Copy link
Copy Markdown
Owner

Closes #60.

A skills silo needs skills to exist. Before building one, I measured: eight live endpoints — all of them servers that successfully answer tools/list — returned zero prompts between them, including servers whose initialize response declares the prompts capability. Resources appeared on two of the eight (155 and 1).

Eight is a sample. There are ~21,000 remote endpoints in the catalogue, so this extends the prober to ask prompts/list and resources/list in the same session it already opens for tools/list, and stores both. In a day there will be a real count to decide the silo on.

Notes

  • The three lists are independent — a server that answers for tools but refuses prompts/list reports no prompts rather than failing the whole probe. That exact split was observed live.
  • Resources are identified by uri, tools and prompts by name.
  • Empty prompts and resources are written; empty tools still are not. This is deliberate and the difference is load-bearing: publishers declare tools, so an empty answer must never overwrite a declaration. Nothing declares prompts, so the probe is the only source and "answered, and has none" is the data being collected — left unwritten it would be indistinguishable from never asked.
  • Nothing is executed. Packaged (stdio) listings are still skipped.

Tests: 146 passing, including a server that refuses prompts while answering tools, and one that answers zero of everything.


Pages affected:

  • MCP Harbor -- registry home, search and recently added servers.
  • browse MCP servers -- the catalogue whose capabilities the prober records.

🤖 Generated with Claude Code

A skills silo needs skills. Eight live endpoints, all of which answer
tools/list, returned zero prompts between them -- including servers whose
initialize response declares the prompts capability. Resources showed up on
two of the eight. Eight is a sample; there are ~21,000 remote endpoints, so
this asks the whole catalogue instead of guessing from a handful.

- prompts/list and resources/list now run in the same session as tools/list
- The three are independent: a refused prompts/list reports no prompts
  rather than discarding the tools that did come back
- Resources are named by uri, tools and prompts by name
- Empty prompts and resources are stored, unlike tools. Nothing declares
  them, so there is no publisher claim to protect and "answered, has none"
  is the finding -- unwritten, it looks identical to never asked
- Tools keep their guard: a locked door is not evidence of an empty room

Closes #60

---

Pages affected:

- [MCP Harbor](https://ai.mcpharbor.dev/) -- registry home, search and newly added servers.
- [server catalogue](https://ai.mcpharbor.dev/servers) -- the listings this probe reads capabilities from.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@lbesecker195
lbesecker195 merged commit 89cdbac into main Sep 24, 2026
1 check passed
@lbesecker195
lbesecker195 deleted the feat/probe-prompts-resources branch September 24, 2026 19:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Probe: collect prompts and resources, not just tools

1 participant