Use Codex, Claude, and OpenCode with EZPost
Connect an AI agent to your blog through one secure MCP endpoint. Draft in Markdown, update posts, manage categories, and publish without writing an API client.
Connect an AI agent to your blog through one secure MCP endpoint. Draft in Markdown, update posts, manage categories, and publish without writing an API client.
Yes, EZPost supports MCP today. The production API exposes a stateless Streamable HTTP server at /api/v1/mcp, protected by the same API keys as the External API.
MCP lets a compatible agent discover EZPost's tools and input schemas at runtime. The agent chooses a tool, asks for approval when its client requires it, and sends the request under your account. There is no separate SDK or generated client to maintain.
list-postsSearch and filter drafts or published postsget-post-by-slugRead a published post and related postscreate-postCreate a Markdown or BlockNote draftupdate-postEdit an existing post by IDdelete-postDelete a post by IDpublish-postPublish a draftunpublish-postReturn a post to draftlist-categoriesList categories and subcategoriescreate-categoryCreate a categorycreate-subcategoryCreate a nested categoryCodex reads MCP servers from ~/.codex/config.toml. Theenv_http_headers mapping keeps the key outside the file.
Start a new Codex session, then verify with codex mcp get ezpost.
Claude Code supports remote HTTP servers in .mcp.json and expands environment variables in headers.
Run claude mcp list or open /mcp inside Claude Code to confirm the connection.
OpenCode describes HTTP MCP connections as remoteservers. Disable OAuth discovery because EZPost uses an API key header.
Run opencode mcp list to inspect its connection status.
Other MCP clients use the same endpoint and header, but their config envelope differs. For Cursor, add an HTTP server namedezpost in its MCP settings. In VS Code, run MCP: Add Server, choose HTTP, then keep the key in a secure input variable rather than source control. The complete client-specific guide stays at /docs/mcp.
Start with a draft and review it before publishing. For example:
After review, ask the agent to update the draft or publish it. Keep destructive actions such as delete-post behind your client's approval prompt.
x-api-key header is missing, invalid, inactive, or expired.