Skip to content

publishing

Know you're ready before you submit

Six categories of checks mapped to marketplace requirements, each failure with fix guidance and an autofix flow, plus live end-to-end runs inside the real clients.

Our open source tools are used by developers at top companies

NorthwindApertureCogentLumenBrightpathSundialMeridianIroncladBlue HarborKestrel

How it runs

From first build to an accepted listing

  1. 1

    Audit

    Run all six check categories.

  2. 2

    Fix

    Apply guided fixes or autofix.

  3. 3

    Verify

    End-to-end runs in real clients.

  4. 4

    Submit

    Ship with a generated submission pack.

Six check categories

Protocol and discovery, tool conformance, security and policy, metadata, domain/TLS/CSP, and assets.

Publishing checks3 / 4 passing
  • Protocol & discovery
  • Tool conformance
  • Security & policy
  • !Domain / TLS / CSP

Submission pack

End-to-end verification

Your server runs live inside ChatGPT and Claude to confirm tool calls and widget rendering.

Cloud Inspectorsession #4f2a

San Francisco, CA

72°F

Partly cloudy · H 74° L 58°

now72°
2pm74°
3pm73°
4pm70°
5pm66°
6pm63°

tools/call

{
  "name": "display_weather",
  "arguments": { "city": "San Francisco" }
}

result20041ms

{ "content": [{ "type": "resource" }] }

GPT-5.2

18/18

Claude

18/18

Gemini

17/18

Submission pack

Listing copy, tool justifications, screenshots and reviewer test cases, generated for you.

acme-mcp · zsh

npx create-mcpfy-app

✓ tools/chart-sales.ts

✓ widgets/Chart.tsx

✓ mcpfy.config.ts

mcpfy dev

ready on :4141 · 6 tools registered

tools/chart-sales.ts

export const chartSales = tool({
  name: "chart_sales",
  input: z.object({ period: z.string() }),
});

In the box

Everything reviewers look for

1

Protocol & discovery

Correct handshakes and capability lists.

2

Tool conformance

Schemas that match real behaviour.

3

Security & policy

Scopes, consent and data handling.

4

Assets & metadata

Icons, copy and configuration.

Get through review on the first attempt