MCP server
Give Claude (or any MCP client) the ability to brief accounts, queue content and read results. Two transports: an HTTP JSON-RPC endpoint at /api/mcp, and a stdio bridge in mcp/server.mjs for desktop clients.
Claude Code
claude mcp add postfield \ -e POSTFIELD_API_KEY=pf_test_demo_summit_0000000000 \ -e POSTFIELD_API_URL=http://localhost:3477 \ -- node ./mcp/server.mjs
Claude Desktop
{
"mcpServers": {
"postfield": {
"command": "node",
"args": ["/absolute/path/to/human-posting/mcp/server.mjs"],
"env": { "POSTFIELD_API_KEY": "pf_test_...", "POSTFIELD_API_URL": "http://localhost:3477" }
}
}
}Tools
| list_campaigns | List your Postfield campaigns. |
| create_campaign | Create a draft campaign. |
| get_campaign | Campaign details, accounts and headline stats. |
| add_account | Add an account brief. Brand-affiliated bios must state the relationship. |
| add_content | Add an approved video (by URL) with hook and caption. #ad is added automatically. |
| launch_campaign | Launch a draft campaign: creates account, warm-up, post and comment tasks for human posters. |
| list_tasks | Task board for a campaign (status of every human task). |
| get_metrics | Views, engagement, daily series, experiments and top posts. |
| get_usage | Current billing period usage and invoice estimate. |
| hook_score | Score a short-form video hook 0-100 with fixes. |
Raw HTTP
curl -s localhost:3477/api/mcp -H "Authorization: Bearer $KEY" -H "content-type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_usage","arguments":{}}}'Status: stub. Stateless JSON-RPC (initialize, tools/list, tools/call, ping). Before launch, move to the official MCP SDK with Streamable HTTP and OAuth.