Pinafly

How to publish a remote MCP server in Smithery

Go to smithery.ai/new, sign in, enter a Server ID and the public HTTP URL of your MCP server, then skip connection settings. Smithery reads your server and lists it within a minute; you need an account and a server that is already online.

For a developer who already runs a remote (HTTP) MCP server and wants it listed on Smithery. You end with a public Smithery page that shows your server's tools.

Verified 15 Oct 2026 6 steps Checked against the current interface
Guide me Steps show on your own Smithery page. Needs the free Pinafly extension.

Before you start

A remote MCP server reachable over HTTPS. If it needs OAuth, serve a server card at /.well-known/mcp/server-card.json so Smithery can list its tools.

Time
About 5 minutes
Account
Free Smithery account (sign in with GitHub, Google or email)
  1. 1

    Open the publish page and sign in

    Go to smithery.ai/new. If you are signed out you are sent to a sign-in page. Choose Continue with GitHub (or Google, or enter an email and press Continue with email).

    You should see: You land on a page titled **Publish an MCP Server**.

  2. 2

    Pick the Server ID

    Leave the Namespace dropdown as it is (Smithery fills one in for you). In the Server ID box type a short slug, for example pinafly-uat.

    You should see: A green tick appears at the right of the Namespace / Server ID box when the slug is free.

  3. 3

    Enter the server URL

    In MCP Server URL paste the public HTTP address of your server, for example https://pinafly.com/mcp/uat. Press Continue.

    You should see: The page changes to **Configure connection settings**.

  4. 4

    Skip connection settings

    Only add a parameter if users must supply a value such as an API key. A server that signs people in with OAuth needs none, so press Skip.

    You should see: You land on your server's **Releases** tab with a release marked QUEUED.

  5. 5

    Wait for the release to succeed

    Stay on the Releases tab. Open the release row to read the log.

    You should see: Within about 10 seconds the status reads **SUCCESS** and the log ends with **Metadata generated**. For an OAuth server it says OAuth required and shows how many tools it found.

  6. 6

    Check the public page

    Open smithery.ai/servers/<namespace>/<server-id>.

    You should see: The page shows your tools and a Published date. It also shows a score out of 100 and the words **No description** until you add one with **Edit**.

If it does not work

The log warns that no config schema was provided. This is expected for an OAuth server with nothing to configure. Only add a configSchema if users must enter keys.

The Publish button on the Releases tab opens a dialog titled Publish via URL asking for the URL again. That dialog starts another release from a URL. The server is already listed after the first SUCCESS, so close it unless you want a new release.

Questions

Does the form ask for a repository?

No. The publish form asks for a Namespace, a Server ID and an MCP Server URL only.

Do I need to write a config schema?

Not for a server that uses OAuth and has no keys to enter. Smithery warns that none was provided and carries on.

Why does the page say No description?

The listing starts without one. Use the Edit link on your server page to add it, since the score on the page is out of 100.

How we checked

Verified 15 Oct 2026 against the live interface on free Smithery account (sign in with GitHub, Google or email).

What we observed

  • Opening smithery.ai/new while signed out redirects to a page titled Continue to your workspace, with email, Continue with Google and Continue with GitHub.
  • After sign in the form is titled Publish an MCP Server with a Namespace and Server ID pair, an MCP Server URL field and an orange Continue button.
  • The next screen is titled Configure connection settings with an Add Parameter button, a Back button and an orange Skip button.
  • The release log said: Server metadata discovered (OAuth required, server card: 6 tools), then Using .well-known/mcp/server-card.json, then Metadata generated, and the release status changed from QUEUED to SUCCESS.

Something changed or looks wrong?

Ready to do it?

Run these 6 steps on your own Smithery page. Each step shows in a panel on the page, Next when you are ready.

Guide me