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


Models, datasets, spaces, and AI inference APIs. Once connected, Hermes Agent can read and act on Hugging Face from chat — pairing, token refresh, and tool wiring handled for you.
Most guides for giving Hermes Agent Hugging Face 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 Hugging Face setup: pair once in the browser and your always-on Hermes agent can act on Hugging Face 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 Hugging Face.
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 Hugging Face
Paste your API key in the dashboard.
- 3
Use it from chat
Ask Hermes Agent: "What can you do with Hugging Face?"
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 testThen connect Hugging Face in the ClawLink dashboard — paste your Hugging Face API key once.
Verify the connection by asking Hermes:
Use hugging_face_get_model_info on <model name>, then hugging_face_get_model_tags_by_type on the same name, and tell me what it does, who made it, and what tags it carries.
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 Hugging Face is connected in the dashboard, that agent calls the same 135 Hugging Face tools over MCP. Full setup for MCP clients and shell agents: connect apps to any AI agent.
Hugging Face MCP for Hermes
Looking for a Hugging Face MCP server for Hermes Agent? ClawLink connects Hugging Face to Hermes Agent and exposes 135 Hugging Face tools your agent can call over MCP, with hosted auth and nothing to run or maintain yourself. Using OpenClaw instead? The OpenClaw Hugging Face integration works the same way.
Two different connections get called "connecting Hugging Face to Hermes", and search results answer mostly the first one. The model reading: Hermes runs its chat on Hugging Face inference, which means putting an HF_TOKEN in an environment file and pointing hermes chat --provider hf at a model. The tool reading, which is what this page is: Hermes Agent gets tools that act on Hugging Face, reading models, datasets, spaces, and collections with your account's access. That is where the token question gets interesting. You paste a Hugging Face access token once on a hosted setup page, and it is held server-side by ClawLink, not by Hermes on your machine. The agent calls the 135 Hugging Face tools below through that hosted connection, and the secret never appears in a ~/.hermes/.env or in the agent's own config.
What the Hermes Agent Hugging Face integration can do
135 Hugging Face 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 135.
30 of 135 Hugging Face tools for Hermes
| Tool | What it does |
|---|---|
Check dataset validity hugging_face_check_dataset_validity | Check whether a dataset is valid |
Check models upload method hugging_face_check_models_upload_method | Check upload method for model files |
Create ask access hugging_face_create_ask_access | Request access to a gated repository |
Create collection hugging_face_create_collection | Create a new collection on Hugging Face |
Filter dataset rows hugging_face_filter_dataset_rows | Filter rows in a dataset split |
Generate chat completion hugging_face_generate_chat_completion | Generate a chat completion response |
Generate embeddings hugging_face_generate_embeddings | Convert text into vector embeddings |
Get daily papers hugging_face_get_daily_papers | Retrieve daily papers from Hugging Face |
Check spaces upload method hugging_face_check_spaces_upload_method | Check if files should be uploaded through the Large File mechanism or directly to Hugging Face |
Create datasets preupload hugging_face_create_datasets_preupload | Check if files should be uploaded via Large File Storage (LFS) or directly to a Hugging Face |
Get dataset croissant hugging_face_get_dataset_croissant | Get Croissant metadata about a Hugging Face dataset |
Get dataset first rows hugging_face_get_dataset_first_rows | Get the first 100 rows of a dataset split along with column data types and features |
Get dataset info hugging_face_get_dataset_info | Get general information about a dataset including description, citation, homepage, license, and |
Get dataset repo info hugging_face_get_dataset_repo_info | Retrieve detailed information about a Hugging Face dataset repository |
Get dataset rows hugging_face_get_dataset_rows | Retrieve a slice of rows from a Hugging Face dataset split at any given location (offset) |
Get dataset size hugging_face_get_dataset_size | Get the size of a Hugging Face dataset including number of rows and size in bytes |
Get dataset statistics hugging_face_get_dataset_statistics | Get comprehensive statistics about a dataset split including column statistics and data |
Get datasets compare hugging_face_get_datasets_compare | Get a comparison (diff) between two revisions of a Hugging Face dataset |
Get datasets jwt hugging_face_get_datasets_jwt | Generate a JWT token for accessing a Hugging Face dataset repository |
Get datasets leaderboard hugging_face_get_datasets_leaderboard | Retrieve evaluation results ranked by score for a dataset's leaderboard |
Get datasets notebook hugging_face_get_datasets_notebook | Get a Jupyter notebook URL from a Hugging Face dataset repository |
Get datasets resolve hugging_face_get_datasets_resolve | Resolve and download a file from a Hugging Face dataset repository |
Get datasets scan hugging_face_get_datasets_scan | Retrieve the security scan status of a Hugging Face dataset repository |
Get datasets tags by type hugging_face_get_datasets_tags_by_type | Retrieve all possible tags used for datasets on Hugging Face, grouped by tag type |
Get datasets treesize hugging_face_get_datasets_treesize | Get the total size of a Hugging Face dataset repository at a specific revision and path |
Get datasets xet read token hugging_face_get_datasets_xet_read_token | Get a read short-lived access token for XET from Hugging Face datasets |
Get discussion hugging_face_get_discussion | Get detailed information about a specific discussion or pull request on Hugging Face Hub |
Get jobs hardware hugging_face_get_jobs_hardware | Retrieve available hardware configurations for Hugging Face Jobs with their specifications and |
Get model info hugging_face_get_model_info | Retrieve detailed information about a Hugging Face model repository |
Get model tags by type hugging_face_get_model_tags_by_type | Retrieve all possible tags used for Hugging Face models, grouped by tag type |
Try it: find the Hugging Face tool you need
Browse the 30 Hugging Face tools
Click any tool to see exactly what Hermes can do and copy a ready-to-use prompt.
Example prompts
Use hugging_face_get_model_info on <model name>, then hugging_face_get_model_tags_by_type on the same name, and tell me what it does, who made it, and what tags it carries.
Call hugging_face_get_dataset_info and hugging_face_get_dataset_statistics on <dataset name> and give me its row count, column types, and whether it looks clean enough to train on.
Use hugging_face_get_dataset_first_rows on <dataset name> and show me the first three rows and the column names.
Pull today's papers with hugging_face_get_daily_papers and tell me which three are most relevant to <research topic>, with one line each.
How the Hugging Face tools behave
Details that decide whether a Hugging Face prompt returns clean data or a scope-shaped error.
- Model, dataset, and space tools are separate families.
hugging_face_get_model_infois for models,hugging_face_get_dataset_infofor datasets,hugging_face_check_spaces_upload_methodfor spaces. An id from the wrong family fails like a typo. - Reads dominate; writes are deliberate. Creating collections, asking for gated access, and dataset uploads are the write surface. Everything else is research traffic.
- Ask for access is a real action.
hugging_face_create_ask_accessfiles a request with a repo owner. An agent should never fire it without saying so, because it emails a human. - Statistics are cheaper than rows.
hugging_face_get_dataset_statisticsandhugging_face_get_dataset_sizeanswer most sizing questions without streaming data. - The token defines the ceiling. Read, write, and fine-grained tokens see different surfaces; a gated repo 403s regardless of token type until access is granted.
- Inference tools exist too.
hugging_face_generate_chat_completionandhugging_face_generate_embeddingscall the inference API under your token, which spends your account's inference allowance.
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 Hugging Face working from chat.
| Manual | ClawLink | |
|---|---|---|
| Credential handling | Collect, validate, store, and rotate the Hugging Face API key yourself, then make sure every tool call uses the right account. | Users complete the hosted ClawLink setup once and the connected Hugging Face 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 Hugging Face. | 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 Hugging Face actions to the runtime in a format your agent can reliably use. | 135 tools for Hugging Face are already exposed through ClawLink, so the agent can read and act from chat immediately. |
ClawLink vs. Composio
Composio also exposes Hugging Face 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 Hugging Face in the browser, and the 135 tools above work from chat. There is no SDK and no config file, and the Hugging Face 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 Hugging Face
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 Hugging Face 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 Hugging Face tools
Hugging Face 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 Hugging Face 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.
Hugging Face 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.
Hugging Face returns 401 Unauthorized: Invalid Token
The engine-taught causes for this error are manual-token causes: a missing token, a misformatted one, an expired one, or one with too little permission. In the hosted flow two of those still apply and two change shape. If the token was deleted, rotated, or expired on Hugging Face after you pasted it, every tool fails from that moment and re-pasting the current token in the dashboard is the fix. If the token is fine but the account shows connected and the tool still 401s, the usual hosted-flow culprit is a token of the wrong type or scope for what you asked: a read token cannot call a write tool, and a fine-grained token hits 401 on repos outside its allowed list. Ask the agent to quote the exact error and which tool produced it before touching the connection.
Ask the agent to diagnose it:
Call hugging_face_get_model_info on a public model I name and quote the exact error string. Then tell me which token type you believe this connection uses. Do not retry the failing tool yet.Hugging Face returns 403 Forbidden: Insufficient Permissions
Hugging Face's permission model is two things: token scope and repo access. A token with read scope 403s on write actions, and a fine-grained token 403s outside the repos it names. Separately, gated repos return 403 to any token that has not been granted access: the fix there is hugging_face_create_ask_access, which files the request with the repo owner, not a re-paste of the token. The hosted-toolkit causes still apply on top: a placeholder id from documentation fails like a real permission error, and a model or dataset in a private org the token was not issued for is a genuine access boundary. Have the agent distinguish "this token lacks scope" from "this repo is gated" by quoting the error, because the two fixes are opposite.
Ask the agent to diagnose it:
Call hugging_face_get_model_info on the exact model that failed, then hugging_face_get_model_tags_by_type on the same name. Quote both errors and say whether the repo looks gated or the scope looks wrong. Do not create any access requests yet.Hugging Face returns 429 Too Many Requests
Hugging Face rate limits by tier, and an agent enumerating a large dataset or fanning out inference calls is the traffic shape that meets the limit: many calls, one allowance. The response is not to retry in a tight loop, which digs the hole deeper, but to change the work's shape: read dataset statistics instead of rows, page through results instead of pulling everything, and spread a long inference job across turns. The 429 response usually carries the retry timing, so have the agent report it and wait rather than guess.
Ask the agent to diagnose it:
Tell me how many Hugging Face calls you made in the last minute and what you were iterating over. Quote the 429 body. Do not call Hugging Face again until I reply.Hugging Face tools are missing, or one tool name is not found
The engine-taught causes for this symptom are all self-hosted MCP mechanics: a stale client, a missing token in a config file, a transport failure. None of those can happen here, because there is no local MCP server to go stale. The real causes are the two hosted ones: the connection or pairing is incomplete (confirm the plugin installed with --enable, both pairing commands ran, and Hugging Face shows as connected), or schemas loaded on demand, so the first Hugging Face call in a fresh session can arrive before the catalog and needs one retry. If most tools work and one name fails, that name is wrong rather than missing, and the error lists the closest real ones.
Ask the agent to diagnose it:
List the Hugging Face tools you actually have access to. If there are none, say so plainly. If there are, tell me which one returns a model's info and use that exact name.API key setup works but results look incomplete
Double-check that the API key for Hugging Face 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 Hugging Face integration?
Yes. ClawLink is the fastest way to connect Hermes to Hugging Face: link your Hugging Face account once in the browser and Hermes Agent can call the Hugging Face API through 135 ready-made tools — no custom code or token handling.
How do I connect Hugging Face 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 Hugging Face in the dashboard and Hermes can use it from the next message — no config files, and the Hugging Face key you paste is stored server-side instead of in your environment.
How long does it take to connect Hugging Face to Hermes Agent?
About two minutes. Sign in, click Connect next to Hugging Face in the dashboard, authenticate, and Hermes Agent can use it from the next chat message.
Why use ClawLink instead of wiring Hugging Face 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 Hugging Face working from chat.
Who holds the token, and does the agent ever see it?
You paste a Hugging Face access token once on the hosted setup page, and ClawLink stores and uses it server-side. The agent calls the Hugging Face tools through the hosted connection, so the token value never lands in Hermes's environment, its config, or its logs, and never sits in a .env file on a machine you happen to have used. This is the exact "backend token broker" arrangement that ChatGPT independently describes as the ideal answer to using Hugging Face without managing your own token, applied to a page that ships it. Rotating the token on Hugging Face and re-pasting it in the dashboard is the whole maintenance story.
Does connecting through ClawLink let Hermes run models on Hugging Face?
No, and it is worth being clear about the split. This integration gives the agent tools that act on the Hub: reading model cards and tags, dataset statistics and rows, spaces metadata, collections, discussions, and daily papers, plus asking for access to gated models. Running inference is a different connection: that is the model-provider reading of "Hermes + Hugging Face", configured in Hermes itself with an inference token. The two can coexist, but they are not the same integration, and the error that follows a wrong assumption is usually a token error on one side while the other works fine.
What can the agent do with the Hugging Face tools?
The Hub's research surface, mostly read-first: model info and tags, dataset validity, statistics, first rows, and size, collections, discussions, and the daily papers feed, plus embeddings and chat completions through the inference side of the API. The write surface is where to be careful: creating collections, asking for access to gated models (hugging_face_create_ask_access), and dataset uploads are real actions on shared objects. A research workflow barely touches the writes; a publishing workflow should confirm each one before the agent does it.
What access do the tools carry?
Whatever your token carries. Hugging Face access tokens come in three flavors: read, write, and fine-grained, where fine-grained tokens can be limited to specific repos or scopes. The tools act as your token, so a read token cannot create a collection or upload dataset rows, and a token without access to a gated repo gets the same 403 the repo's gate produces. Pasting a fine-grained token scoped to what the agent should touch is the least-privilege setup, and it is fully supported here since the token is passed through as-is.
Is it safe to connect Hugging Face to an agent through ClawLink?
The safety answer is a credential-scope answer. The secret is held server-side and never written to a machine-local file, which removes the environment-file leak path that most Hugging Face agent guides teach. What is left is normal token hygiene: use a fine-grained token limited to the repos the agent genuinely needs, keep a read token for research-only work, and revoke or rotate from the ClawLink dashboard the moment you stop trusting a session. None of this stops an agent from being told to read something it has access to, so scope the token to the smallest surface that does the job.
Hermes paired but still can't use Hugging Face
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
DataRobot
DataRobot is a machine learning platform that automates model building, deployment, and monitoring, enabling organizations to derive predictive insights from large datasets.
Hermes Chatbotkit integration
ChatBotKit is a platform that enables developers to build and manage AI-powered chatbots, offering comprehensive APIs and SDKs for seamless integration into applications.
ElevenLabs tools
Generate speech and voice cloning