Repository navigation
main #3482
Description
Summary
The built-in Hugging Face connector in ChatGPT still declares retired tool IDs (model_search, dataset_search, …) instead of the current hub_repo_search, so every search call fails: the shim that translated legacy calls was removed in the same commit that removed the legacy tools.
Affected layer — not a conversation-level cache
Reconnecting, reinstalling and starting new conversations do not change the tool surface. That is expected: OpenAI stores a published app's tool metadata as a reviewed snapshot, locked for safety — only a new submitted and approved app version can change it.
"published tool metadata is stored as a reviewed snapshot, so reconnecting or reinstalling won't refresh … For changes to tool descriptions, names, schemas, or the tool list, create a new draft version … resubmit … and publish it after approval." — community.openai.com, 2026-07-23
"Breaking changes to the MCP server contract inside a published plugin aren't currently supported. … If a deployment breaks the published version, roll back the server change rather than waiting for a new version to complete review." — developers.openai.com/plugins/deploy/app-review
So the connector is pinned to a pre-2026-07-26 snapshot of this server's schema. Resolving it needs either a server-side compatibility path here, or a republished app version.
Reproduction
- Connect the built-in Hugging Face connector in ChatGPT.
- Ask it to list its Hugging Face tools →
model_searchis declared;hub_repo_searchis absent. - Call
model_search(limit=3, sort="trendingScore")→Resource not found: Hugging_Face.model_search(client-side) /Tool model_search not found(server-side). - Reconnect, reinstall, new conversation → unchanged.
Server-side verification (direct tools/call against https://huggingface.co/mcp, 2026-09-15)
| call | server response |
|---|---|
model_search |
Tool model_search not found |
dataset_search |
Tool dataset_search is disabled by server configuration |
hub_repo_search |
works |
hf_jobs (implemented, but absent from this connection's tools/list) |
server validates its parameters and returns valid enum values |
The last row is the control: an unadvertised tool is still recognized and callable, so "absent from tools/list" ≠ "not callable" — model_search genuinely no longer exists server-side. 9 endpoint variants probed (incl. ?bouquet=chatgpt): none advertise any of the 12 retired IDs.
Evidence that the connector's schema is the pre-2026-07-26 schema
It declares model_search with exactly query, author, task, library, sort ∈ {trendingScore, downloads, likes, createdAt, lastModified}, limit (default 20) — verbatim the zod schema in packages/mcp/src/model-search.ts at the commit before m`. That is a pinned snapshot of this server, not a tool the client invented.
Timeline
| Date | Event |
- |---|-@
| 2026-07-26 | PR Feat/list branches #204 / c
Activity
[-]## Summary[/-][+]## l[/+][-]## l[/-][+]main[/+]