#18322·lobehub

Marketplace: plugin stuck at not_validated, and `plugin publish` is refused for every URL of its own repository

Author: kyisaiah47Created Aug 14, 2026Updated Sep 18, 2026
Labelsneeds-triagefeature:marketplace

What happened

A marketplace plugin I own has been stuck at status: not_validated since it was created, its public page returns 404/500, and there is no CLI path left to re-trigger validation.

Plugin: kyisaiah47-kynth-core (display name "ParseRail"), id 88790, isClaimed: true, created 2026-08-14T12:14:26Z.

$ npx @lobehub/market-cli plugin list
IDENTIFIER             NAME       LATEST VERSION  STATUS         CLAIMED
kyisaiah47-kynth-core  ParseRail  0.5.2           not_validated  yes
kyisaiah47-kynth-mcp   kynth-mcp  0.3.0           published      yes

https://lobehub.com/mcp/kyisaiah47-kynth-core 302s to https://market.lobehub.com/s/plugins/kyisaiah47-kynth-core, which returns 404. The other plugin on the same account is fine, so this is not an account problem.

Why I cannot fix it from the CLI

plugin update succeeds but does not re-trigger validation — it reports "merged into the existing version", and the status does not change:

$ npx @lobehub/market-cli plugin update
✓ Updated [email protected] (merged into the existing version)
# status still not_validated

plugin publish, which does trigger enrichment, is refused for every form of the plugin's own public repository:

$ npx @lobehub/market-cli plugin publish https://github.com/kyisaiah47/kynth-core-mcp
Publish failed: Identifier already belongs to another repository

# same error for:
#   https://github.com/kyisaiah47/kynth-core-mcp.git
#   https://github.com/kyisaiah47/kynth-core-mcp/
#   https://github.com/kyisaiah47/kynth-core-mcp/tree/main

So the identifier appears to be bound to some other repository URL, and nothing in the CLI reports which one or lets an owner rebind it. plugin list does not include the bound repository, and I could not find a read endpoint that does.

What I expected

Either plugin publish <the repo the plugin actually lives in> to rebind and re-run enrichment for a plugin I own and have claimed, or a way to see the bound repository so I can publish from it.

Things I already ruled out

  • Missing tools. The manifest originally had no tools array, because plugin init --url cannot inspect this server (see below). I generated the 41 tools from tools/list over stdio with a real key and pushed them; plugin update accepted them and the status did not change.
  • The cloudEndpoint being unreachable to an anonymous validator. This server needs an API key, so initialize against cloudEndpoint returns 401. I removed cloudEndpoint entirely, ran plugin update, and the status did not change; I then restored it.

Possibly a separate, smaller bug

plugin init --url sends no auth, so it cannot inspect any MCP server that requires a key, and it exits without writing a manifest:

$ npx @lobehub/market-cli plugin init --url https://api.kynth.studio/mcp
Inspecting MCP server via HTTP...
Plugin init failed: Streamable HTTP error: Error POSTing to endpoint:
{"jsonrpc":"2.0","error":{"code":-32001,"message":"Missing API key. ..."}}

--stdio does not help either: the spawned server does not inherit the environment, so KYNTH_API_KEY=… lhm plugin init --stdio "npx -y @kynth/api-mcp" dies with MCP error -32000: Connection closed while the child prints "Missing KYNTH_API_KEY". A --header / --env option on plugin init would cover every authenticated server.

Environment