Expand description
App Store Connect MCP contract.
Defines the canonical tool set exposed by asc --mcp. Each name is
supplied by the embedder through crate::ascapi_mcp_tools, so the
standalone binary and any host that re-exposes this contract share one
implementation and one public surface. Same arrangement xcrs uses in
smbcloud-cli.
§Two rules this server is built around
stdout belongs to the protocol. The stdio transport carries
JSON-RPC on stdout, so a stray println! anywhere beneath a tool call
corrupts the stream, and the failure surfaces as a parse error in the
client a long way from its cause. Nothing in this path may write to
stdout; diagnostics go to stderr.
Tool results are read by a model. Private keys and raw certificate
bodies never appear in a result; see
smbcloud_ascapi_frontend for where that is enforced.
§What is deliberately absent
Certificate revocation. asc certificates revoke exists on the
command line and is intentionally not a tool: revoking a distribution
certificate invalidates every provisioning profile embedding it, for
every teammate and every CI job, at once and irreversibly. That is not
an action a language model should take from a prompt, and no
confirmation string typed by the model rather than the human makes it
safer. Deletes that are scoped and recreatable (a version, a
localization, a screenshot) are exposed, annotated destructive.
Re-exports§
pub use server::serve;pub use server::AscapiMcpServer;pub use requests::*;