Hermes Agent: Create and Publish Social Posts
Hermes Agent is a good fit for social media work because it is built to keep running: it remembers, it learns skills, and it can sit on a server and answer you through a messaging app. Give it a media generator and a publishing tool, and it can go from “post about the new menu” to a drafted Instagram post with a generated photo.
The flow is the same one I describe in the Claude guide. What is different with Hermes is that you configure it in YAML, it may run where no browser exists, and it lets you filter tools per server, which is the best safety feature of the lot.
Three MCP servers in config.yaml
Hermes reads MCP servers from the mcp_servers map in ~/.hermes/config.yaml. Remote servers take a url, plus either auth: oauth or headers.
On a laptop or desktop, use OAuth for all three. No keys in files:
mcp_servers:
postsider:
url: https://mcp.postsider.com/mcp
auth: oauth
fal:
url: https://mcp.fal.ai/mcp-relay
auth: oauth
higgsfield:
url: https://mcp.higgsfield.ai/mcp
auth: oauth
Then sign in to each once:
hermes mcp login postsider
hermes mcp login fal
hermes mcp login higgsfield
The same can be done from the CLI with hermes mcp add --url https://mcp.postsider.com/mcp --auth oauth postsider, according to the Hermes MCP docs. Tokens land in ~/.hermes/mcp-tokens/. Keep only one of the two generators if you like; for Higgsfield, its help center also offers a CLI that Hermes can install as a skill.
On a headless server, use keys from the environment
A VPS has no browser to finish an OAuth login. For PostSider and fal, switch to their key-based endpoints and read the keys from environment variables.
mcp_servers:
postsider:
url: https://api.postsider.com/mcp
headers:
Authorization: "Bearer ${POSTSIDER_API_KEY}"
fal:
url: https://mcp.fal.ai/mcp
headers:
Authorization: "Bearer ${FAL_KEY}"
The PostSider key comes from Settings, then Developers, then Public API. It can publish to every connected account, so treat it like a password: environment variable or secrets manager, never a committed file. Hermes also documents a device-code OAuth flow for headless gateways, which is worth trying with services that support it.
Filter out the tools a social media agent never needs
This is where Hermes is better than most clients. Each MCP server can take a tools block with include or exclude, so dangerous tools never reach the model at all.
PostSider exposes a full workspace toolset, including deleting posts, pausing all publishing and disconnecting channels. A content agent needs none of those. Hide them:
mcp_servers:
postsider:
url: https://mcp.postsider.com/mcp
auth: oauth
tools:
exclude:
- postsider_delete_post
- postsider_delete_media
- postsider_pause_publishing
- postsider_disconnect_channel
A confirmation prompt can be clicked through at 11 pm. A tool the agent cannot see cannot be called. For an unattended Hermes, I would go one step further and use include with only the tools the flow below needs.
The seven-step flow Hermes runs
Every post goes through the same calls. Hermes can learn the sequence as a skill, so after the first run you just say “make Thursday’s post”.
In words:
- Brief. What the post is about, which networks, when.
- Generate. fal.ai or Higgsfield returns a URL to the finished file.
- Review. You look at it. If you talk to Hermes from a messaging app, it can send you the link to check on your phone.
- Store.
postsider_upload_media_from_urlcopies the file into PostSider and returns anidandpath. Do not skip this: generator links are temporary, and fal’s results come with a note that source URLs may expire. - Rules.
postsider_get_channel_rulesreturns what each network requires:post_typeon Instagram, a privacy level on TikTok, a title on YouTube,who_can_reply_poston X. - Draft.
postsider_create_postwithtype: draftand the stored media inimages. Add anidempotencyKey, so a retry after a timeout cannot create a second post. - Read back.
postsider_get_postconfirms what was saved.
For file limits (images up to 10 MB, MP4 up to 500 MB) and a fal.ai cost chart, see the Claude guide.
A brief Hermes understands
Hermes works best with a clear, reusable instruction. After the first good run, ask it to save the steps as a skill so the next brief can be one line.
For each post in this list, generate one 4:5 image with fal.ai
(1080x1350, black and white, soft light, no text in the image).
Send me the image links and wait for "ok" or "redo N".
For approved images: store them in PostSider, check the rules for
Instagram and LinkedIn, find the next free slot for each channel,
and create DRAFTS with an idempotency key per post.
Read every draft back and send me a short summary.
Then save this procedure as a skill called "weekly-social-drafts".
POSTS:
1. TOPIC A
2. TOPIC B
3. TOPIC C
Two notes from experience with agents in general. First, 4:5 at 1080x1350 can come back as 1072x1344, because many image models round to multiples of 16; it is still 4:5 and Instagram accepts it. Second, TikTok is direct posting in PostSider, so a scheduled TikTok post goes live when it fires. Let Hermes draft TikTok posts, never schedule them on its own.
Start with one draft
Add the three servers, run hermes mcp login, exclude the destructive tools, and get one draft with a generated image into your calendar. Then turn it into a skill.
You can start with PostSider for free and connect your first social media account in a few minutes. The full tool list is in the PostSider MCP docs.
Frequently asked questions
How do I add PostSider to Hermes Agent?
Add it under mcp_servers in ~/.hermes/config.yaml with url https://mcp.postsider.com/mcp and auth oauth, then run hermes mcp login postsider. On a headless server without a browser, use the key-based endpoint https://api.postsider.com/mcp with an Authorization Bearer header that reads your PostSider API key from an environment variable.
Can I stop Hermes from deleting posts or pausing publishing?
Yes. Hermes supports a tools block per MCP server with include and exclude lists. Exclude destructive PostSider tools such as postsider_delete_post, postsider_pause_publishing and postsider_disconnect_channel, so the agent never sees them.
Does Higgsfield work with Hermes Agent?
Yes. Higgsfield's help center says agents like Hermes can install the Higgsfield CLI, and its hosted MCP server at mcp.higgsfield.ai/mcp works with MCP clients that support OAuth sign-in. Generations use your Higgsfield plan credits.
Where does Hermes keep the OAuth tokens?
In ~/.hermes/mcp-tokens/, one file per server. If a login gets stuck or returns invalid_client, remove the server, delete its token file and add it again.