How to connect Semrush to Hermes Agent
Connect Semrush to Hermes with ClawLink: paste your Semrush key once and 37 tools work from chat. No MCP server to run, nothing stored on your machine.


SEO, content marketing, and competitive research. Once connected, Hermes Agent can read and act on Semrush from chat — pairing, token refresh, and tool wiring handled for you.
Most guides for giving Hermes Agent Semrush 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 Semrush setup: pair once in the browser and your always-on Hermes agent can act on Semrush 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.
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 Semrush.
1Install and pair
Install the ClawLink plugin, then pair Hermes with a one-time browser approval:
hermes plugins install ClawLink-HQ/hermes-plugin --enable- 2
Connect Semrush
Paste your API key in the dashboard.
- 3
Use it from chat
Ask Hermes Agent: "What can you do with Semrush?"
ChatGPT has quoted these wrong before, so here they are exactly. Run them once, then connect Semrush in the dashboard:
hermes plugins install ClawLink-HQ/hermes-plugin --enable
hermes clawlink begin # approve the link in your browser
hermes clawlink finish
hermes clawlink testThe plugin repo is ClawLink-HQ/hermes-plugin, capital H-Q, not claw-link. The pairing subcommand is begin, not setup. hermes clawlink test is the one that tells you pairing actually worked; run it before connecting Semrush so you are not debugging two things at once. Start a new chat after connecting so Hermes reloads its tool catalog.
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 loginlogin opens the same browser approval and stores a credential locally. Once Semrush is connected in the dashboard, that agent calls the same 37 Semrush tools over MCP. Full setup for MCP clients and shell agents: connect apps to any AI agent.
Semrush MCP for Hermes
Looking for a Semrush MCP server for Hermes Agent? ClawLink connects Semrush to Hermes Agent and exposes 37 Semrush tools your agent can call over MCP, with hosted auth and nothing to run or maintain yourself. Using OpenClaw instead? The OpenClaw Semrush integration works the same way.
Semrush now ships its own MCP server, and Google's answer to most agent queries is that server plus a config file. This page is the other route: your Semrush API key pasted once into a hosted setup page, nothing run locally, and 37 tools callable from chat. The pairing above is the whole client-side story. The official server has one genuine advantage worth stating plainly: Semrush includes MCP access with paid plans, so a Semrush customer already paying can use it. What it does not do is put Semrush beside your other connected accounts under one pairing, or remove the key and config handling from your machine. The page that search results put next to ours advertises up to 15 tools; the count here is 37, and the table below is the list.
What the Hermes Agent Semrush integration can do
37 Semrush 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 37.
30 of 37 Semrush tools for Hermes
| Tool | What it does |
|---|---|
Account units balance semrush_account_units_balance | Check Semrush account units balance |
Authority score profile semrush_authority_score_profile | Get authority score for a domain |
Backlinks semrush_backlinks | List backlinks for a domain |
Backlinks overview semrush_backlinks_overview | Get backlink overview for a domain |
Batch keyword overview semrush_batch_keyword_overview | Get keyword overview for multiple keywords |
Broad match keyword semrush_broad_match_keyword | Find broad match keywords |
Competitors in organic search semrush_competitors_in_organic_search | Find organic search competitors |
Domain organic pages semrush_domain_organic_pages | List organic pages for a domain |
Domain organic search keywords semrush_domain_organic_search_keywords | List organic search keywords for a domain |
Domain vs domain semrush_domain_vs_domain | Compare two domains in Semrush |
Historical data semrush_historical_data | Get historical keyword data from Semrush |
Keyword difficulty semrush_keyword_difficulty | Check keyword difficulty in Semrush |
Keyword overview one database semrush_keyword_overview_one_database | Get keyword overview for a specific database |
Organic results semrush_organic_results | Get organic search results for a keyword |
Phrase questions semrush_phrase_questions | Find questions related to a keyword |
Ads copies semrush_ads_copies | Retrieves unique ad copies Semrush has observed for a specified domain from a regional |
Anchors semrush_anchors | Use this action to get a CSV report of anchor texts for backlinks pointing to a specified |
Batch comparison semrush_batch_comparison | Compares backlink profiles for multiple specified targets (domains, subdomains, or URLs) to |
Categories semrush_categories | Retrieves categories and their 0-1 confidence ratings for a specified domain, subdomain, or |
Categories profile semrush_categories_profile | Retrieves a profile of content categories from referring domains for a specified target |
Competitors semrush_competitors | Retrieves a CSV-formatted report of competitors for a specified target (root domain, domain, or |
Competitors in paid search semrush_competitors_in_paid_search | Retrieves a list of a domain's competitors in paid search results from a specified regional |
Domain ad history semrush_domain_ad_history | Retrieves a domain's 12-month advertising history from Semrush (keywords bid on, ad positions |
Domain organic subdomains semrush_domain_organic_subdomains | Retrieves a report on subdomains of a given domain that rank in Google's top 100 organic search |
Domain paid search keywords semrush_domain_paid_search_keywords | Fetches keywords driving paid search traffic to a specified, existing domain using a supported |
Domain pla search keywords semrush_domain_pla_search_keywords | Retrieves Product Listing Ad (PLA) search keywords for a specified domain from a Semrush |
Indexed pages semrush_indexed_pages | Retrieves a list of indexed pages from Semrush for a specified target (root domain, domain |
Keyword overview all databases semrush_keyword_overview_all_databases | Fetches a keyword overview from Semrush for a specified phrase, including metrics like search |
Keywords ads history semrush_keywords_ads_history | Fetches a historical report (last 12 months) of domains advertising on a specified keyword in |
Paid results semrush_paid_results | Fetches domains ranking in Google's paid search results (AdWords) for a specified keyword and |
Try it: find the Semrush tool you need
Browse the 30 Semrush tools
Click any tool to see exactly what Hermes can do and copy a ready-to-use prompt.
Example prompts
Start with semrush_account_units_balance, then use semrush_keyword_overview_one_database for <keyword> in the US database. Report the unit balance and the keyword metrics.
Run semrush_domain_organic_search_keywords for <domain> in the US database and semrush_domain_vs_domain comparing <domain> against <competitor>. Give me the top 10 keywords and where we trail the competitor.
Use semrush_batch_keyword_overview for <k1>, <k2>, <k3>, <k4>, <k5> in the US database, then semrush_keyword_difficulty for the same list. Table of volume, difficulty, and intent.
Call semrush_phrase_questions for <seed topic> in the US database and give me the 15 questions with the highest volume that could become content briefs.
How the Semrush tools behave
Details that decide whether a Semrush prompt is a quick answer or a unit-burning sweep.
- Most tools take a database argument. Reports like
semrush_domain_organic_search_keywordsandsemrush_keyword_overview_one_databaseneed the market code (US, UK, DE and so on), and the numbers change per market. An omitted database fails with a required-argument error. - Batch tools exist and should be used.
semrush_batch_keyword_overview,semrush_batch_comparison, andsemrush_organic_resultsare the multi-target shapes; single-keyword loops are the wasteful shape that triggers the rate card above. - The unit balance is readable by the agent.
semrush_account_units_balanceis in the tool set, so "check the balance before you start" is a real instruction, not a dashboard trip. - The database-specific and all-database tools are different.
semrush_keyword_overview_one_databasetakes one market;semrush_keyword_overview_all_databasessweeps every database Semrush supports in one response and costs accordingly. - Competitors come from two angles.
semrush_competitors_in_organic_searchandsemrush_competitors_in_paid_searchanswer the same question for different channels;semrush_competitorsandsemrush_competitors_in_organic_searchare not duplicates, one is the competitor list, the other the overlap report. - Read-only surface. Every tool reads Semrush data; nothing creates, edits, or deletes in the account, so the blast radius of a wrong prompt is wasted units, never a changed project.
ClawLink vs. building it yourself
The alternative to ClawLink is usually manual API key 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 Semrush working from chat.
| Manual | ClawLink | |
|---|---|---|
| Credential handling | Collect, validate, store, and rotate the Semrush API key yourself, then make sure every tool call uses the right account. | Users complete the hosted ClawLink setup once and the connected Semrush account becomes available to the agent without you building credential management. |
| Ongoing maintenance | You own refresh logic, permission debugging, environment config, and every provider-specific edge case for Semrush. | ClawLink handles the repetitive integration plumbing so your team can focus on the workflow instead of the infrastructure. |
| Agent usability | You still need to expose the right Semrush actions to the runtime in a format your agent can reliably use. | 37 tools for Semrush are already exposed through ClawLink, so the agent can read and act from chat immediately. |
ClawLink vs. Composio
Composio also exposes Semrush 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 Semrush in the browser, and the 37 tools above work from chat. There is no SDK and no config file, and the Semrush key you paste at setup is stored server-side rather than kept in your environment. Choosing between them? Read the full Composio alternatives comparison.
Troubleshooting
Hermes paired but still can't use Semrush
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 Semrush 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 Semrush tools
Semrush 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 Semrush 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.
Semrush 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.
Semrush returns 403 "insufficient permissions" although the account shows as connected
The causes search results teach for this provider are plan tier, an invalid or expired key, and depleted units: some endpoints require Guru or Business tier, a rotated key fails everything from that moment, and a unit pool that is spent refuses calls regardless of the key. The causes this page's card already names remain real and are the ones only a hosted flow produces: a placeholder value such as YOUR_ID reaching the API as a literal argument, and calls that ask for data the connected Semrush account's plan cannot see. Start by checking the account's unit balance and tier, then confirm the key pasted in the dashboard is the current one from Semrush, then re-run the failed call with real arguments. Reconnecting is the last move, not the first.
Ask the agent to diagnose it:
Call semrush_account_units_balance and tell me the unit balance, then quote the exact error from the failed call. Do not retry the failed call yet.Semrush starts returning 429 or the agent stalls partway through a keyword sweep
Semrush limits request rates and charges units per endpoint, and an agent walking many keywords is the shape that meets both: one call per keyword, one call per database, one call per metric family. The fix is to change the shape of the work, not to retry it. semrush_batch_keyword_overview pulls many keywords in one call, so ask for batches instead of loops. If the account's unit pool is the constraint, no retry changes it and the balance call makes that visible.
Ask the agent to diagnose it:
Tell me how many Semrush calls you have made in the last few minutes and what you were sweeping. Quote any error text from the last response. Do not call Semrush again until I reply.Semrush tools are missing, or one tool name is not found
Two failures share this symptom. If no Semrush tools appear at all, the connection or pairing is incomplete: confirm the plugin was installed with --enable, that hermes clawlink begin and hermes clawlink finish both ran, and that Semrush shows as connected in the dashboard. If most tools work and one name fails, the name is wrong rather than missing and the error lists the closest real ones. There is also a first-call timing case: schemas load on demand, so the opening Semrush call in a fresh session can arrive before the catalog and needs one retry. The frame most search results teach, a wrong config path in a client config file or a stale MCP session, does not apply to a hosted setup.
Ask the agent to diagnose it:
List the Semrush tools you actually have access to. If there are none, say so plainly and tell me whether Semrush shows as connected. Do not guess tool names.API key setup works but results look incomplete
Double-check that the API key for Semrush has the right scopes or account access. A valid key can still be too limited for some reads or writes.
FAQ
Is there a Hermes Agent Semrush integration?
Yes. ClawLink is the fastest way to connect Hermes to Semrush: link your Semrush account once in the browser and Hermes Agent can call the Semrush API through 37 ready-made tools — no custom code or token handling.
How do I connect Semrush 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 Semrush in the dashboard and Hermes can use it from the next message — no config files, and the Semrush key you paste is stored server-side instead of in your environment.
How long does it take to connect Semrush to Hermes Agent?
About two minutes. Sign in, click Connect next to Semrush in the dashboard, authenticate, and Hermes Agent can use it from the next chat message.
Why use ClawLink instead of wiring Semrush up myself?
The alternative to ClawLink is usually manual API key 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 Semrush working from chat.
Which key does this need, and what plan does it require?
A Semrush API key from your Semrush profile, pasted once on the hosted setup page and held server-side. Search results teach that API access comes with the paid tiers and that creating a key means buying API units, so the key itself is the part of Semrush you cannot skip. If a tool call returns a permission or quota error, the first thing to check is the account's plan and unit balance rather than the connection: some endpoints sit behind higher tiers, and every call draws from the purchased unit pool. semrush_account_units_balance reads the unit balance directly, which makes it the natural first call in a fresh session.
How is this different from Semrush's official MCP server?
Semrush's server is a hosted MCP endpoint included with paid plans, and the setup search results teach is pasting its URL into a client config. ClawLink also runs hosted, but you never touch the MCP layer: the key goes into the dashboard once, and Hermes gets 37 named tools it can reason about individually rather than one opaque endpoint. The official route is the right choice if you already use another MCP client and want Semrush there verbatim. This route is the right choice if Hermes is your agent and you want Semrush alongside every other connection, with one place to revoke it.
What can the agent do in Semrush?
The research surface: organic and paid keyword positions, competitors in organic and paid search, domain versus domain comparisons, keyword overviews across one or all databases, keyword difficulty, phrase and question research, broad-match expansion, organic pages and subdomains, indexed pages, ads copies and history, backlinks and anchors, categories, and the account unit balance. It is a read-only surface: nothing in Semrush is written by the agent.
Is it safe to let the agent use my Semrush key?
The safety answer search results give is that Semrush connections are generally secure through official channels, with the risks being a compromised token draining units and shared master keys. Here the key is stored server-side rather than in an environment file on your machine, it is never pasted into chat, and disconnecting Semrush in the dashboard revokes the agent's use of it immediately. The remaining consideration is unit burn: agent calls draw from the same purchased unit pool your own calls use, so a long audit prompt costs real units and it is worth telling the agent to check semrush_account_units_balance before a big sweep.
Hermes paired but still can't use Semrush
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.
Related
Metabase
Metabase is an open-source business intelligence tool that lets you ask questions about your data and visualize answers as charts, graphs, and dashboards.
Hermes Twelve Data integration
Twelve Data provides a comprehensive financial data API offering real-time and historical market data for stocks, forex, cryptocurrencies, ETFs, and indices.
Gosquared
GoSquared provides real-time web analytics and customer engagement tools to help businesses understand and interact with their website visitors.