ClawLink

How to connect Reddit Ads to Hermes Agent

Connect Reddit Ads to Hermes Agent with ClawLink: no app at reddit.com/prefs/apps, no client secret, no OAuth exchange to implement. 83 Reddit Ads tools your agent calls from chat.

Get started for free
Hermes Agent
Hermes Agent
ClawLink
ClawLink
Reddit Ads
Reddit Ads
Reddit AdsOAUTH2MCP

Manage Reddit advertising campaigns and reports. Once connected, Hermes Agent can read and act on Reddit Ads from chat — pairing, token refresh, and tool wiring handled for you.

83 tools

Most guides for giving Hermes Agent Reddit Ads access start with registering your own OAuth app or pasting API keys into env files, then leave the token refresh and tool wiring to you. ClawLink gives Hermes a more practical Reddit Ads setup: pair once in the browser and your always-on Hermes agent can act on Reddit Ads for you, reading and doing real work on your behalf with no auth, token refresh, or tool wiring to build yourself.

Copy this prompt into Hermes to install the plugin and pair your account.

Prompt for Hermes
Set up ClawLink for Hermes and tell me when it's ready.

1. Install the plugin:
hermes plugins install ClawLink-HQ/hermes-plugin --enable

2. Start pairing. It prints an approval link, so show me the link and stop, don't wait:
hermes clawlink begin

3. I'll approve it in my browser, then reply "approved".

4. When I say approved, finish setup:
hermes clawlink finish

5. Then run `hermes clawlink test` and tell me whether ClawLink is ready.

Setup

It takes three steps to connect Hermes to Reddit Ads.

  1. 1

    Install and pair

    Install the ClawLink plugin, then pair Hermes with a one-time browser approval:

    hermes plugins install ClawLink-HQ/hermes-plugin --enable
  2. 2

    Connect Reddit Ads

    One-click OAuth in the dashboard.

  3. 3

    Use it from chat

    Ask Hermes Agent: "What can you do with Reddit Ads?"

Install by command

The prompt above walks Hermes through this. By hand, it is four commands and a browser approval:

hermes plugins install ClawLink-HQ/hermes-plugin --enable
hermes clawlink begin    # prints an approval link — open it and approve
hermes clawlink finish   # after approving in the browser
hermes clawlink test

Then connect Reddit Ads in the ClawLink dashboard — a one-click OAuth approval, no API keys.

Verify the connection by asking Hermes:

Run reddit_ads_get_me, then reddit_ads_list_my_businesses and reddit_ads_list_ad_accounts_by_business. For the ad account I pick, list active campaigns with reddit_ads_list_campaigns and pull last week's spend and CPC with reddit_ads_get_a_report. Sort by spend.

Using a different agent?

The Hermes plugin is one client of ClawLink's MCP server. Claude Code, Cursor, Codex, or any agent that can run a shell command pairs with the same ClawLink account through the CLI:

npx -y @useclawlink/cli login

login opens the same browser approval and stores a credential locally. Once Reddit Ads is connected in the dashboard, that agent calls the same 83 Reddit Ads tools over MCP. Full setup for MCP clients and shell agents: connect apps to any AI agent.

Reddit Ads MCP for Hermes

Looking for a Reddit Ads MCP server for Hermes Agent? ClawLink connects Reddit Ads to Hermes Agent and exposes 83 Reddit Ads tools your agent can call over MCP, with hosted auth and nothing to run or maintain yourself. Using OpenClaw instead? The OpenClaw Reddit Ads integration works the same way.

Reddit's own path to its Ads API is the reason most people never finish. You register an application at reddit.com/prefs/apps, note the client id and secret, send the user to /api/v1/authorize, exchange the code at /api/v1/access_token, and keep refreshing from there. That is a weekend of work before a single campaign metric appears. ClawLink connects through Reddit's OAuth flow with an application that is already registered, so you approve access in the browser and the 83 tools below work from Hermes chat. What you still need on Reddit's side is access to the ad account itself, because Reddit grants that to people, not to apps.

What the Hermes Agent Reddit Ads integration can do

83 Reddit Ads tools are ready for Hermes Agent once the account is connected. The 30 below are the ones people reach for most; your agent can call all 83.

30 of 83 Reddit Ads tools for Hermes

ToolWhat it does
Create ad group reddit_ads_create_ad_groupCreate a Reddit Ads ad group
Create campaign reddit_ads_create_campaignCreate a Reddit Ads campaign
Create custom audience reddit_ads_create_custom_audienceCreate a Reddit Ads custom audience
Create lead gen form reddit_ads_create_lead_gen_formCreate a Reddit Ads lead gen form
Create post reddit_ads_create_postCreate a Reddit Ads post
Create product catalog reddit_ads_create_product_catalogCreate a Reddit Ads product catalog
Do keyword validations reddit_ads_do_keyword_validationsValidate keywords for Reddit Ads
Generate inspiration creative summary reddit_ads_generate_inspiration_creative_summaryGenerate creative inspiration for Reddit Ads
Get a report reddit_ads_get_a_reportGet a Reddit Ads report
Get ad account reddit_ads_get_ad_accountGet a Reddit Ads ad account
Get ad account history reddit_ads_get_ad_account_historyGet Reddit Ads ad account history
Get ad group reddit_ads_get_ad_groupGet a Reddit Ads ad group
Get app last fired at reddit_ads_get_app_last_fired_atGet Reddit Ads app last fired timestamp
Get business reddit_ads_get_businessGet a Reddit Ads business
Get campaign reddit_ads_get_campaignGet a Reddit Ads campaign
Do geolocation validations reddit_ads_do_geolocation_validationsValidate a list of geolocations for use in Reddit Ads targeting
Get channel planning reach reddit_ads_get_channel_planning_reachRetrieve estimated reach data for a given set of targeting parameters
Get child funding instruments reddit_ads_get_child_funding_instrumentsRetrieve a list of Funding Instrument Allocations for a parent funding instrument
Get custom audience reddit_ads_get_custom_audienceRetrieve a custom audience by ID from Reddit Ads API
Get lead gen form reddit_ads_get_lead_gen_formRetrieve details for a specific lead generation form by ID from Reddit Ads
Get me reddit_ads_get_meGet the authenticated member's information from the Reddit Ads API
Get pixel last fired at reddit_ads_get_pixel_last_fired_atRetrieve the last time conversion events were fired for a specific conversion pixel
Get post reddit_ads_get_postRetrieve a promoted or organic Reddit post by its ID
Get product catalog reddit_ads_get_product_catalogRetrieve a specific product catalog by ID from the Reddit Ads API
Get product feed reddit_ads_get_product_feedRetrieve metadata for a specific product feed by ID
Get product set reddit_ads_get_product_setRetrieve metadata for a specific product set by ID from the Reddit Ads API
Get profile reddit_ads_get_profileRetrieve details for a specific profile by ID from the Reddit Ads API
Get saved audience reddit_ads_get_saved_audienceRetrieve a saved audience by ID from Reddit Ads API
Get sk ad network availability reddit_ads_get_sk_ad_network_availabilityGet SKAdNetwork IDs availability quota for an iOS app
Get structured post reddit_ads_get_structured_postRetrieve a structured post by its ID from the Reddit Ads API

Try it: find the Reddit Ads tool you need

Browse the 30 Reddit Ads tools

Click any tool to see exactly what Hermes can do and copy a ready-to-use prompt.

Example prompts

Run reddit_ads_get_me, then reddit_ads_list_my_businesses and reddit_ads_list_ad_accounts_by_business. For the ad account I pick, list active campaigns with reddit_ads_list_campaigns and pull last week's spend and CPC with reddit_ads_get_a_report. Sort by spend.

Use reddit_ads_search_communities and reddit_ads_list_communities_suggestions to find subreddits relevant to developer tooling. Show me the ones with enough reach to be worth targeting, and tell me which look off-topic despite matching the keyword.

In the ad account I name, create a paused campaign with reddit_ads_create_campaign called "Q3 developer tools", then one ad group with reddit_ads_create_ad_group targeting the subreddits I list, also paused. Validate my targeting first with reddit_ads_do_keyword_validations and reddit_ads_do_geolocation_validations. Do not create ads or unpause anything.

For my main ad account, list ad groups with reddit_ads_list_ad_groups and pull a 30-day report with reddit_ads_get_a_report broken down by ad group. Tell me which two are carrying the account and which one I should turn off.

How the Reddit Ads tools behave

From the manifest and from Reddit's account structure. The first two explain most confusing first sessions.

  • The hierarchy is business, then ad account, then campaign. reddit_ads_get_me identifies the connected user, reddit_ads_list_my_businesses finds the businesses, and reddit_ads_list_ad_accounts_by_business finds the accounts. Skipping to a campaign call with a guessed id is the direct cause of the 403 card above.
  • Reporting is one tool. reddit_ads_get_a_report covers the metrics work rather than a family of per-level tools, so the level and breakdown come from the arguments you give it.
  • Validation tools exist and are worth using before creating. reddit_ads_do_keyword_validations and reddit_ads_do_geolocation_validations check targeting before a campaign is built, which is cheaper than creating something Reddit then rejects.
  • Targeting reference data has its own listing tools. reddit_ads_list_communities, reddit_ads_list_interests, reddit_ads_list_geolocations, reddit_ads_list_devices, and reddit_ads_list_carriers return the values Reddit accepts. An agent inventing a targeting value gets a rejection that reads like a permissions problem.
  • Audiences split into two kinds. reddit_ads_create_custom_audience builds from data you supply; reddit_ads_create_saved_audience saves a targeting definition for reuse. They are not interchangeable.
  • "Post" here means a promoted post. reddit_ads_create_post, reddit_ads_list_posts, and reddit_ads_update_post operate inside an ad account. Organic submissions and comments belong to the separate Hermes Reddit integration.
  • Product catalogs are supported. reddit_ads_create_product_catalog, reddit_ads_create_product_feed, and reddit_ads_create_product_set cover commerce advertising, which is the part of the toolset most people do not know is there.

The alternative to ClawLink is usually manual OAuth app setup plus your own token handling, permission troubleshooting, and tool plumbing for Hermes Agent. That is fine if you want to build and maintain the integration yourself. Most teams just want Reddit Ads working from chat.

ManualClawLink
Connection flowRegister a Reddit Ads app, configure redirect URLs, manage consent details, and reconnect users when auth settings drift.Users connect Reddit Ads through the hosted browser flow and ClawLink keeps the token lifecycle out of your app code.
Ongoing maintenanceYou own refresh logic, permission debugging, environment config, and every provider-specific edge case for Reddit Ads.ClawLink handles the repetitive integration plumbing so your team can focus on the workflow instead of the infrastructure.
Agent usabilityYou still need to expose the right Reddit Ads actions to the runtime in a format your agent can reliably use.83 tools for Reddit Ads are already exposed through ClawLink, so the agent can read and act from chat immediately.

Composio also exposes Reddit Ads to AI agents. It is developer infrastructure: Python and TypeScript SDKs, an MCP server, and a catalog past 1,000 apps, aimed at teams shipping agent products. ClawLink is built for Hermes Agent users instead. You install the plugin once, connect Reddit Ads in the browser, and the 83 tools above work from chat. There is no SDK, no config file, and no API key handling. Choosing between them? Read the full Composio alternatives comparison.

Troubleshooting

Hermes paired but still can't use Reddit Ads

Pairing is a two-step handshake: run hermes clawlink begin, approve the link in your browser, then run hermes clawlink finish. If you ran finish before approving, or the approval link expired, run hermes clawlink begin again to get a fresh link. Confirm the plugin was installed with --enable, then verify with hermes clawlink test.

Connection succeeds but no tools appear

Reconnect Reddit Ads from the dashboard, then start a fresh chat if the runtime still has the old tool catalog loaded.

"Tool schema not loaded yet" error when calling Reddit Ads tools

Reddit Ads tool schemas load on demand the first time a tool runs and are cached after that, so this error usually clears on its own: wait a few seconds and retry the same request. If every Reddit Ads call keeps failing with it in a fresh chat, reconnect from the dashboard, and contact support if it still persists — that pattern points to a configuration problem on our side, not something you can fix by reconnecting again.

Reddit Ads returns 403 or "permission denied" on one action while others work

Two usual causes. The connected account may not have access to the specific workspace, inbox, store, or project in the request — check that first. If access looks right, the agent may have sent a placeholder value (like "YOUR_ID" or an example id from documentation) instead of a real one: ask it to run a list or search tool first, then retry the action with a real id from those results. Most failures at this stage are one of these two, not ClawLink bugs.

Reddit Ads returns 403 "insufficient permissions", or reddit_ads_list_ad_accounts_by_business comes back empty

The advice you will find for this assumes you built the integration: check that your token carries the adsread and adsedit scopes, clear the cached token, re-run the OAuth exchange. On this connection the scopes were settled when you approved access, so an empty result almost always means the connected Reddit account is not associated with the ad account. Reddit assigns ad-account access to people through the business that owns it, so a brand new account, or one that was removed from a business, sees nothing while the connection itself reports healthy. Fix it in Reddit Ads by adding your account to the business with a role that covers ads, then retry. The second cause is a placeholder argument: an agent that has not listed anything yet invents an ad account id, and because Reddit's ids are opaque strings the call reaches the API and returns forbidden. Run reddit_ads_get_me and reddit_ads_list_my_businesses first.

Ask the agent to diagnose it:

Run reddit_ads_get_me and tell me which Reddit account is connected. Then run reddit_ads_list_my_businesses and reddit_ads_list_ad_accounts_by_business and show me exactly what came back, including empty lists. Do not retry the failing call until all three have returned.
Reddit Ads returns 401 or an authentication error on a connection that shows as connected

There is no token in your possession to regenerate, so the usual checklist does not apply. On a hosted connection this means the stored authorization stopped being valid on Reddit's side, and the short list of ways that happens is: you revoked the application in your Reddit account settings, you changed your Reddit password, or your account was removed from the business that owns the ad account. Reconnect Reddit Ads from the ClawLink dashboard to replace the authorization. If the same error returns straight after reconnecting, the cause is on the Reddit account rather than the connection, and opening Reddit Ads in a browser as the same account will usually show it.

Ask the agent to diagnose it:

Run reddit_ads_get_me and report the exact error body if it fails. Do not retry the other Reddit Ads calls.
A Reddit Ads tool returns "tool not found", or the agent reaches for a Reddit posting tool

If the name looks right, the catalog had not loaded when the first call went out; schemas load on demand and one retry usually fixes it. If the agent is asking for something like submitting a post or reading a subreddit feed, it is on the wrong integration: this connection covers advertising, and organic Reddit posting and reading live on the separate Reddit integration. Note also that reddit_ads_create_post and reddit_ads_list_posts here refer to promoted posts within an ad account rather than to organic submissions. Most search results for this phrase say Reddit has no official MCP server, which is a statement about Reddit rather than about this connection.

Ask the agent to diagnose it:

List the Reddit Ads tools you actually have available and tell me whether you also have any organic Reddit tools. Then use the exact name for what I asked.
OAuth finished in the browser but the account is still missing

Try reconnecting Reddit Ads and complete the consent flow in the same browser session. Partial OAuth approvals or switching accounts mid-flow can leave the connection incomplete.

FAQ

Is there a Hermes Agent Reddit Ads integration?

Yes. ClawLink is the fastest way to connect Hermes to Reddit Ads: link your Reddit Ads account once in the browser and Hermes Agent can call the Reddit Ads API through 83 ready-made tools — no custom code or token handling.

How do I connect Reddit Ads to Hermes with ClawLink?

Install the plugin with hermes plugins install ClawLink-HQ/hermes-plugin --enable, then pair once: run hermes clawlink begin, approve the link in your browser, and run hermes clawlink finish. Connect Reddit Ads in the dashboard and Hermes can use it from the next message — no config files or API keys to manage.

How long does it take to connect Reddit Ads to Hermes Agent?

About two minutes. Sign in, click Connect next to Reddit Ads in the dashboard, authenticate, and Hermes Agent can use it from the next chat message.

Why use ClawLink instead of wiring Reddit Ads up myself?

The alternative to ClawLink is usually manual OAuth app setup plus your own token handling, permission troubleshooting, and tool plumbing for Hermes Agent. That is fine if you want to build and maintain the integration yourself. Most teams just want Reddit Ads working from chat.

Do I need to register a Reddit developer app for this?

No. Registering an app at reddit.com/prefs/apps, holding its client id and secret, and implementing the authorization-code exchange is what you do when you build the integration yourself. Here you sign in to Reddit, approve the access, and the connection exists. The part that is not removed, and cannot be, is Reddit's own permission model: the account you connect must have access to the ad account you want to work with. An app cannot grant you that, and neither can we.

What access do I need on the Reddit side?

Your Reddit account needs to be associated with the ad account, which in Reddit's business hierarchy means being a member of the business that owns it with a role that permits reading or managing ads. If you run the ads yourself from your own account, you already have this. If someone else set the account up, they add you from Reddit Ads under the business's member settings. The symptom of missing access is specific and worth recognizing: the connection succeeds, and then reddit_ads_list_ad_accounts_by_business comes back empty. That is an access gap, not a broken integration.

Can the agent spend money?

It can create and modify campaigns, ad groups, and ads, which means it can create things that spend. Treat that as a workflow decision rather than a technical one. Campaign creation here takes several deliberate calls, so nothing launches from a single vague instruction, and the safe pattern is to have the agent create campaigns paused and to review before anything goes live. If you only want analysis, say so and keep the agent on the reporting tools such as reddit_ads_get_a_report and reddit_ads_list_campaigns, which read without changing anything.

Is it safe to connect an ad account to an AI agent?

The mechanics worth checking are these, and they are more useful than a yes or no. The connection is an OAuth grant that Reddit lists in your account's authorized applications, so revoking it is a click on Reddit's side and does not depend on us. The agent's reach is the named tools on this page rather than an open API session, and the ones that create or modify are individually named, including reddit_ads_create_campaign, reddit_ads_create_ad_group, and reddit_ads_update_campaign. Your Reddit role still bounds everything: an account with read-only access to the business cannot be talked into spending. The risk that no connection model removes is the agent acting on bad input, which is why creating paused and reviewing before launch is the pattern worth keeping.

Hermes paired but still can't use Reddit Ads

Pairing is a two-step handshake: run hermes clawlink begin, approve the link in your browser, then run hermes clawlink finish. If you ran finish before approving, or the approval link expired, run hermes clawlink begin again to get a fresh link. Confirm the plugin was installed with --enable, then verify with hermes clawlink test.