push_article_to_substack
Push Article To Substack. Push or update a WriteStack article as a Substack draft through the user's Chrome extension.
| Group | Access | MCP name |
|---|---|---|
| Articles | Irreversible | push_article_to_substack |
Description
The description the MCP server sends to the model, word for word. Its rules apply to every call.
Push or update a WriteStack article as a Substack draft through the user's Chrome extension. BEFORE calling this tool, you MUST call list_article_newsletters and ASK the user which newsletter to push the article to. Never assume. Pass the chosen publicationId — only enabled newsletters are accepted. If WriteStack is open, this usually finishes in seconds. Otherwise it is queued and syncs the next time WriteStack is open with the extension. Pushing an article that already has a Substack draft updates (overwrites) that draft.
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
articleId | string | Yes | |
publicationId | number | Yes | Enabled newsletter publicationId. BEFORE creating or pushing an article, call list_article_newsletters and ASK the user which newsletter to use. Never guess or pick a default. Only IDs returned by that tool are accepted — newsletters the user hid from Articles are rejected. |
Example call
The smallest valid request: required arguments only, with placeholder values.
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "push_article_to_substack",
"arguments": {
"articleId": "…",
"publicationId": 1
}
}
}Result
The result has structuredContent that matches this schema. The same data is also in content as JSON text.
| Field | Type | Required | Description |
|---|---|---|---|
articleId | string | Yes | |
message | string | Yes | |
queued | boolean | No | |
status | string | Yes | |
substackDraftUrl | string | null | No | |
substackScheduledAt | string | null | No |
Annotations
| Hint | Value |
|---|---|
readOnlyHint | false |
destructiveHint | true |
openWorldHint | true |
The full input and output JSON Schemas for every tool are in /mcp-tools.json.
create_article_image_upload
Create Article Image Upload. Get one-time upload URLs on writestack.io for an article image that has no public URL, such as a local file, an attachment you can read, or a private Google Drive file.
schedule_article_on_substack
Schedule Article On Substack. Schedule a WriteStack article on Substack.