mcpship: check and publish MCP servers について
mcpshipは、Claudeのコネクタディレクトリ規則に照らしてリモートMCPサーバーを検査し、npmやMCP Registryなどへの公開を案内するCLIです。サーバーのメンテナー向けで、ローカルMCPサーバーとしてAgentからの公開操作にも対応します。
主な機能
- 01認証、ツール、掲載規則の検査
- 02ディレクトリ申請文の生成
- 03次の公開手順の案内
- 04複数チャネルの公開状況追跡
- 05ローカルMCPサーバーとして実行
活用シーン
- 01ディレクトリ申請前のサーバー検査
- 02ディレクトリ申請文の準備
- 03複数チャネルでの公開状況確認
MCP 対応
mcpshipはstdio経由でローカルMCPサーバーとして動作します。プラグインはClaude Codeにmcpshipのツールとスキルを追加します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
5掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| dir | string | いいえ | publish.json を格納するフォルダーです。デフォルトはサーバーの起動時のフォルダーです。 |
| url | string | いいえ | サーバー URL。デフォルトは publish.json の server_url です。 |
詳細
mcpship
リモート MCP サーバーが Claude コネクターディレクトリのルールに準拠しているか確認し、その後公開します。npm、公式 MCP Registry、Claude Code プラグインリポジトリ、Claude コネクターディレクトリに対応しています。人にもエージェントにも使えるよう、一度に一つずつ進めます。
クイックスタート
npx mcpship init https://example.com/mcp # publish.json を作成します。フィールドに入力してください
MCPSHIP_TOKEN=<アクセス トークンまたは API キー> npx mcpship check
npx mcpship next # 次のステップと正確なコマンドを表示します
コマンド
| コマンド | 説明 |
|---|---|
init <url> | 現在のフォルダーに publish.json のテンプレートを作成します |
check [url] | サインイン検出、ツール、掲載情報をテストします。ルール違反がある場合は終了コード 1 を返します |
packet | docs/directory/submission.md を作成します。各ディレクトリフォームのステップで使うテキストが記載されます |
next | 未完了のステップのうち最初のものと、コマンドまたはクリック操作を表示します |
status | npm、MCP Registry、プラグインリポジトリ、ディレクトリの最新状況を表示します |
done directory | ディレクトリフォームを送信したことを記録します |
mcp | stdio 経由でローカル MCP サーバーとして実行します |
機械可読な出力には --json を、別のフォルダーを指定するには --dir <path> を追加してください。
npm で公開済みと見なされるのは、そのパッケージのメンテナーである場合のみです。mcpship は npm whoami を実行します。npm login ではなくトークンを使って公開する場合は、publish.json の channels.npm.maintainer に npm のユーザー名を設定してください。
check のテスト内容
| ルール | 失敗する条件 |
|---|---|
| auth.https | サーバー URL が https ではない |
| auth.www-authenticate | 未認証の呼び出しが resource_metadata を含む 401 を返さない |
| auth.resource-metadata | 保護されたリソースのメタデータがない、または認可サーバーが指定されていない |
| auth.as-metadata | 認可サーバーのメタデータがない |
| auth.pkce | S256 がサポートされていない |
| auth.client-registration | Dynamic Client Registration も Client ID Metadata Documents も利用できない |
| tools.reachable | 指定されたトークンで tools/list が失敗する(トークンがない場合はスキップ) |
| tools.title | ツールにタイトルがない |
| tools.annotations | ツールに readOnlyHint も destructiveHint もない |
| tools.instructions | 説明文がモデルに何をすべきか指示している(「まず使う」「必ず〜する」「X を呼び出す」など) |
| tools.hidden-text | 説明文に不可視文字またはエンコードされたテキストが含まれている |
| listing.icon-url | アイコン URL が公開された https PNG ではない |
| listing.pages | ドキュメント、プライバシー、または利用規約のページを読み込めない |
| listing.lengths | 名前、短い説明、または説明がフォームの上限を超えている、あるいはフィールドが空である |
| listing.unpublished-mention | npm で公開される前に npx <package> を実行するようユーザーに案内するページがある |
警告:tools.mentions(説明文で別のツールに言及している)と listing.em-dash。
Claude Code から使う
/plugin marketplace add emanueltns/mcpship
/plugin install mcpship@mcpship
その後、Claude に MCP サーバーの公開を依頼してください。このプラグインは mcpship のツールと、各ステップを案内するスキルを追加します。
プライバシー
mcpship はお使いのマシン上で実行されます。お使いのサーバー、publish.json 内の URL、MCP Registry API、および npm と gh が呼び出す対象にアクセスします。テレメトリーは送信しません。MCPSHIP_TOKEN は環境変数から読み取られ、表示されることはありません。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。