· The Mynahcast team
Agent-first publishing: one registry, three doors
How Mynahcast exposes the same operations through MCP, REST and (soon) a CLI, and why every one of them is safe to retry.
Most publishing tools were built for people clicking buttons, with an API added later. Mynahcast starts from the other end: the first user of every operation is an agent, and the dashboard is one more client.
One list of operations
Everything Mynahcast can do is defined once, in a single registry: create a post, validate it, reschedule it, ask for approval, list channels, read a channel's limits, upload media, read or update the brand voice. Each operation declares its input schema, the scopes it needs, and whether it changes anything.
From that one list we generate:
- the REST API under
/v1, with an OpenAPI 3.1 spec; - the MCP server at
POST https://api.mynahcast.xyz/mcp, where each operation becomes amynahcast_*tool; - the CLI (
myn <noun> <verb>), which is coming soon.
Because they share the registry, an agent gets the same validation errors, the same scope checks and the same approval rules whichever door it uses.
Safe to retry, by design
Agents retry. Networks drop. So every operation that changes data is built to be repeated:
- REST: send an
Idempotency-Keyheader. Repeat the request with the same key and you get the first response back, not a second post. Reuse a key with a different body and you get an error instead of a surprise. - MCP and REST: every mutating operation takes a dry run (
dry_run: truein MCP,?dry_run=truein REST) that validates and previews without saving. - Delivery: each send to a platform has its own key derived from the target and the content. If the result is unknown, Mynahcast looks the post up on the platform before deciding whether to send again.
Errors an agent can act on
Validation failures come back as application/problem+json with a short fix hint, for example a post that's over a channel's character limit, or a scheduled time in the past. An agent can read the hint and correct the draft without a human in between.
Humans decide
One operation is deliberately out of an agent's reach: deciding an approval. An agent can ask for approval, but only a person signed in to Mynahcast can approve. That line is enforced on the server, not left to the agent's good behaviour.
If you want to try it, connect your agent or start with the quickstart.