Publish an MCP Server

List your MCP server on the AICoach registry so developers can discover and install it.

Prerequisites

  • A GitHub account (used to sign in to AICoach)
  • An API key from aicoach.pw/account/api-keys
  • Your MCP server published to npm, PyPI, or hosted as an SSE/HTTP endpoint

Step 1: Get Your API Key

Sign in at aicoach.pw with GitHub, then navigate to Account → API Keys. Create a new key and save it — keys start with mcp_ and are shown only once.

Step 2: Prepare Server Metadata

The publish endpoint accepts the following fields:

Field Required Description
title Yes Human-readable display name
description Yes Short description (max 200 characters)
name No Reverse-DNS name (e.g., io.github.user/my-server). Auto-generated if omitted.
version No Semantic version (default: 1.0.0)
transport No stdio, sse, or streamable-http (default: stdio)
command No CLI command for stdio transport (e.g., npx -y @org/server)
sseUrl No Endpoint URL for SSE/HTTP transport
repositoryUrl No Source code repository URL
websiteUrl No Project homepage or documentation URL

Step 3: Publish via the API

Send a POST request to the publish endpoint:

curl -X POST https://aicoach.pw/api/v1/mcp/publish \
  -H "Authorization: Bearer mcp_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "My MCP Server",
    "description": "A brief description of what it does",
    "version": "1.0.0",
    "transport": "stdio",
    "command": "npx -y @myorg/my-mcp-server",
    "repositoryUrl": "https://github.com/myorg/my-mcp-server"
  }'

Step 4: Verify Your Listing

A successful response returns the server metadata with a detail URL:

{
  "server": {
    "name": "user.partner/My MCP Server",
    "title": "My MCP Server",
    "description": "A brief description of what it does",
    "version": "1.0.0"
  },
  "_meta": {
    "aicoach.pw": {
      "id": "uuid-here",
      "slug": "user-partner--my-mcp-server",
      "transport": "stdio",
      "approved": false,
      "visibility": "private",
      "detailUrl": "https://aicoach.pw/mcp/user-partner--my-mcp-server"
    }
  }
}

Visit the detailUrl to see your server's page on the registry.

Updating Your Server

To update an existing server, simply publish again with the same name or let the slug match. The API will detect the existing entry and update it instead of creating a duplicate. Only fields you include in the request body will be modified.

Visibility & Approval

Non-admin submissions are created as private and require approval before appearing in public search results. The AICoach team is notified and will review your submission.

Admin submissions (via MCP_ADMIN_SECRET) are auto-approved and immediately visible as public.

For full API details, see the API Reference.