mcpship: check and publish MCP servers

io.github.emanueltnsv0.1.0更新於 Oct 6, 2026

Checks a remote MCP server against the Claude directory rules and guides its publication.

概覽

AI 產生的概覽

依 Claude 連接器目錄規則檢查遠端 MCP 伺服器,並逐步引導其發布。

功能
mcpship 依 Claude 連接器目錄規則驗證遠端 MCP 伺服器:登入探索、受保護資源與授權伺服器中繼資料、PKCE、用戶端註冊、工具標題與註解、工具描述、圖示 URL、文件與隱私頁面,以及清單欄位長度。它會產生 publish.json 範本,輸出目錄表單每一步所需的文字,回報 npm、MCP Registry、外掛儲存庫與目錄的即時狀態,並指出下一個未完成步驟與確切指令。它也能以本機 stdio MCP 伺服器執行,讓助理驅動相同步驟。
適用情境
當你維護遠端 MCP 伺服器,並想發布到 npm、官方 MCP Registry、Claude Code 外掛儲存庫或 Claude 連接器目錄時使用;也可在提交前用目錄規則檢查既有伺服器。
執行需求
透過 stdio 在本機執行,通常使用 npx mcpship。需要 Node.js 與 npm,以及存取你的伺服器、publish.json 中的 URL、MCP Registry API 和 npm、gh 所呼叫位址的網路。check 指令透過環境變數 MCPSHIP_TOKEN 提供存取權杖或 API 金鑰;未宣告其他憑證。
安裝前請注意
MCPSHIP_TOKEN 從環境變數讀取並用於呼叫你的伺服器,應視為機密。check 指令會向你的伺服器與 publish.json 中的 URL 發出請求,工具也會呼叫 npm 與 gh,這些外部呼叫會離開本機。done directory 等指令會記錄發布狀態,發布步驟會作用於 npm、MCP Registry 與目錄。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 mcpship: check and publish MCP servers,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

mcpship

Check a remote MCP server against the Claude connector directory rules, then publish it: npm, the official MCP Registry, a Claude Code plugin repo and the Claude connector directory. One step at a time, for people and for agents.

Quick start

npx mcpship init https://example.com/mcp   # writes publish.json; fill in the fieldsMCPSHIP_TOKEN=<access token or API key> npx mcpship checknpx mcpship next                            # the next step, with the exact command

Commands

CommandWhat it does
init <url>Writes a publish.json template in the current folder
check [url]Tests sign-in discovery, tools and listing; exit code 1 if a rule fails
packetWrites docs/directory/submission.md: the text for each directory form step
nextThe first unfinished step, with the command or click
statusLive state of npm, the MCP Registry, the plugin repo and the directory
done directoryRecords that you submitted the directory form
mcpRuns as a local MCP server over stdio

Add --json for machine-readable output and --dir <path> to point at another folder.

npm counts as published only when you are a maintainer of the package. mcpship asks npm whoami; if you publish with a token instead of npm login, set channels.npm.maintainer to your npm user name in publish.json.

What check tests

RuleFails when
auth.httpsthe server URL is not https
auth.www-authenticatean unauthenticated call does not return 401 with resource_metadata
auth.resource-metadataprotected resource metadata is missing or has no authorization server
auth.as-metadataauthorization server metadata is missing
auth.pkceS256 is not supported
auth.client-registrationneither Dynamic Client Registration nor Client ID Metadata Documents
tools.reachabletools/list fails with the given token (skipped without one)
tools.titlea tool has no title
tools.annotationsa tool has neither readOnlyHint nor destructiveHint
tools.instructionsa description tells the model what to do ("use it first", "you must", "call X")
tools.hidden-texta description holds invisible characters or encoded text
listing.icon-urlthe icon URL is not a public https PNG
listing.pagesdocs, privacy or terms page does not load
listing.lengthsname, one-liner or description is over the form limit, or a field is empty
listing.unpublished-mentiona page tells users to run npx <package> before it is on npm

Warnings: tools.mentions (a description names another tool) and listing.em-dash.

Use it from Claude Code

/plugin marketplace add emanueltns/mcpship/plugin install mcpship@mcpship

Then ask Claude to publish your MCP server. The plugin adds the mcpship tools and a skill that walks through each step.

Privacy

mcpship runs on your machine. It calls your server, the URLs in your publish.json, the MCP Registry API, and whatever npm and gh call. It sends no telemetry. MCPSHIP_TOKEN is read from the environment and never printed.

License

MIT

來源:README.md,提交 b2d0540

工具

0
工具後設資料尚未被收錄。

版本歷史

1
  1. v0.1.0最新Oct 6, 2026