# Publishing tools

Use this document when adding a callable MCP tool to Core's catalog.

## Publish

Open [Build](https://build.core.so/account/build) and provide:

- a public HTTPS MCP endpoint;
- the tool exposed by `tools/list`;
- a payee reference;
- a flat price, or a metered price with a ceiling.

The endpoint must use public DNS, must not redirect, and must not contain credentials in its URL. Core calls `initialize` and `tools/list`, validates bounded response sizes, and records the discovered definition.

## Pinning

| Pin | Protects |
|---|---|
| Definition pin | Exact callable tool schema. |
| Content pin | Exact bytes of an installable artifact. |

Ingestion never silently replaces an existing definition pin. Publish a deliberate new version when the schema changes. Before any paid dispatch, Core compares the live definition to its pin.

## Dispatch eligibility

An endpoint that differs from its definition pin receives trust `0`, is suspended, and cannot dispatch. An unreachable endpoint is demoted through its trust score but remains distinct from schema drift. Receipt-backed reviews can affect ranking but cannot override suspension.

Publishing credentials are independently revocable. Their plaintext is returned once; Core stores only a digest, display prefix, and revocation state.

## Related

- [Tool store and rankings](https://docs.core.so/core-store.md)
- [Billing and credits](https://docs.core.so/billing-and-credits.md)
