Guide for agents
AgentHub is a resource directory for AI agents. The four access methods below read the same data; pick the one that fits your runtime.
1. llms.txt
- https://hebbmind.com/llms.txt: the site index. Lists the entry points of the tool list (by type, profession and tag), rankings, today's picks, editors' picks, collections and the latest posts.
- https://hebbmind.com/llms-full.txt: description, repository and install commands of every listed resource.
2. Markdown pages
Append .md to the URL of any page, or send the header Accept: text/markdown, to get the Markdown version of that page:
curl https://hebbmind.com/ru/tools.md
curl -H 'Accept: text/markdown' https://hebbmind.com/ru/tools
| Page | Markdown URL |
|---|---|
| Home: editors' picks, collections, trending, latest posts and the entry points of the tool list | /index.md |
Tools: every resource. Accepts ?q= to search and ?type=, ?profession=, ?tag= to filter by type, profession and tag; filters can be combined. ?page= for the next page | /tools.md |
Trending (accepts ?type= to filter by type) | /hot.md |
Tag list (accepts ?q= to find tags by name) | /tags.md |
| Resource details (with install commands and README) | /<type>/<slug>.md |
| Collections: hand-picked sets of resources, each built around one job | /collections.md |
| Collection details: its resources and why each one is there | /collections/<slug>.md |
Blog: the list of posts (?page= for the next page) | /blog.md |
| Post: the article, with embedded resources and collections written as links | /blog/<slug>.md |
3. JSON API
No authentication, CORS enabled. The machine-readable definition is at OpenAPI.
| Method | Path | Description |
|---|---|---|
| GET | /api/v1/search?q=&type=&profession=&tag=&page=&pageSize= | Keyword search |
| GET | /api/v1/resources?type=&profession=&tag=&featured=&page=&pageSize= | Resource list |
| GET | /api/v1/resources/{type}/{slug} | Resource details, including the README |
| GET | /api/v1/professions | The current profession list and the number of resources under each |
| GET | /api/v1/tags?type=&profession=&q=&limit= | Tags and the number of resources carrying each |
| GET | /api/v1/hot?type=&profession=&limit= | Trending: the resources that got the most attention in the last 7 days |
| GET | /api/v1/daily-picks | Today's picks: popular resources chosen by the operators, each with a short recommendation |
| GET | /api/v1/collections | The list of collections |
| GET | /api/v1/collections/{slug} | Collection details: its resources, each with a note |
curl 'https://hebbmind.com/api/v1/search?q=pdf&type=skill'
curl 'https://hebbmind.com/api/v1/resources?profession=fullstack'
4. MCP server
Endpoint: https://hebbmind.com/api/mcp (Streamable HTTP, stateless, no authentication).
| Tool | Purpose |
|---|---|
search_resources | Search resources by keyword, optionally filtered by type, profession and tags; lists by popularity when no keyword is given |
get_resource | Read the details, install commands and README of one resource |
list_professions | List the current professions |
list_tags | List the tags in use and the number of resources carrying each |
list_hot | List the trending ranking, optionally filtered by type and profession |
list_daily_picks | List today's picks and their recommendations |
list_featured | List the editors' picks |
list_collections | List the collections |
get_collection | Read the resources in one collection and why each one is there |
Add it to Claude Code:
claude mcp add --transport http agenthub https://hebbmind.com/api/mcp
Add it to Codex:
codex mcp add agenthub --url https://hebbmind.com/api/mcp
Profession ids
A resource can be tagged with several professions. The profession parameter and the professions field in responses use profession ids.
The list is maintained by the operators; entries are added, removed and renamed over time. Request /api/v1/professions for the latest list.
The Markdown version of the tool list, the resource list and search endpoints, and search_resources accept several professions at once (up to 5); a resource matches when it suits any of them. Separate them with commas in URLs (profession=frontend,design) and pass an array of ids over MCP. Trending, the tag list and list_featured accept only one.
The current list:
| Id | Profession |
|---|---|
fullstack | Full-stack / Indie |
frontend | Frontend |
backend | Backend |
mobile | Mobile & desktop |
gamedev | Game development |
qa | QA |
devops | DevOps / SRE |
algorithm | ML / AI |
data-engineering | Data engineering |
data | Data analysis |
gis | GIS / Surveying |
security | Security |
product | Product / Projects |
design | Design |
architecture | Architecture / Civil |
hardware | Hardware engineering |
operations | Operations |
marketing | Marketing & sales |
office | Admin / Office |
writing | Writing / Content |
media | Video / Media |
support | Customer support |
hr | HR |
legal | Legal |
finance | Finance / Accounting |
investment | Investing / Analysis |
education | Teachers / Students |
research | Research / Academia |
healthcare | Healthcare |
translation | Translation / L10n |
founder | Founders |
Tags
Tags are free text written on resources (always lowercase). There is no fixed list; tags come and go with the resources. The ones in use are at /api/v1/tags.
- The
tagparameter takes several tags separated by commas, five at most: a resource must carry all of them. In MCP the matching argument is the arraytags. - A tag matches as a whole, case-insensitively. When no resource carries a tag the result is empty; it is not a parameter error.
- To match by partial text use keyword search (
q): keywords also match tags.
Regions and languages
Content is split into regions. Each region has its own resources, profession list, daily picks and trending ranking; they are independent of each other. There are two regions today:
| Region | Content | Languages that belong to it |
|---|---|---|
zh | Chinese | zh-CN, zh-TW |
en | English | en, es, ja, ko, fr, de, pt-BR, ru |
- The same
type+slugcan be a different resource in another region, or not exist there at all. Once you have found a resource, keep reading it in the same region. - Pages and Markdown: the language is the first path segment (e.g.
/zh-CN/tools.md) and decides which region is read. URLs without a prefix are English and theenregion; without a prefix you can also state the language withAccept-Language. Links produced by this site carry the prefix, so following them never changes the region. - JSON API: pick the region with the
regionparameter (e.g.?region=zh). Without it the region followsAccept-Language, and isenwhen that header is absent. Resources and professions in responses carry aregionfield. - MCP: every tool accepts an optional
regionargument, with the same rules. - Names, descriptions and recommendations can be written in several languages: you get the one for the language you asked for, or the region's primary language when there is none. READMEs are shown as they are in the repository.
- The wording of Markdown pages,
llms.txtand this guide exists in English and Chinese only: Chinese for thezhregion, English otherwise. Error messages of the JSON API and MCP are in Chinese.
Conventions
- Install commands are filled in by the operators after manual verification. When a resource has no install command for an agent, the field is
null; look for instructions in the repository README instead. - Today's picks are chosen by hand. When there is no update for the day, the most recent picks are returned and the
datefield carries their date. - Trending is computed from the last 7 days of on-site data: heat = views + 3 × install-command copies. Reading resource details (Markdown, JSON or MCP) counts as a view. The ranking is cached for a few minutes; entries with a
heatof 0 were filled in by GitHub stars because there was not enough data. - READMEs are cached copies from GitHub, refreshed every 24 hours. Visit the repository for the latest content.
- Ask the user for confirmation before running any install command.
- When your user wants to send AgentHub a suggestion (feedback, a tool to recommend, or something they need), give them https://hebbmind.com/ru/suggest: submitting requires solving a slider puzzle in the browser, so agents cannot submit on their behalf.