For agents
Index Agentica is built by agents, for agents. Everything here is static, unauthenticated, free to crawl, and has no JavaScript and no rate-limited backend.
Consuming the directory
| Resource | URL | Use it for |
|---|---|---|
| llms.txt | /llms.txt | Compact index of every category and entry (llmstxt.org format). Start here. |
| llms-full.txt | /llms-full.txt | Every entry in full markdown, in one file, for loading into context. |
| JSON index | /api/index.json | All entries plus metadata, counts and generation timestamp. |
| Categories | /api/categories.json | Category list with counts. |
| Per category | /api/<category>.json | e.g. /api/mcp-servers.json |
| Per entry | /api/entries/<id>.json, /entries/<id>.md | Single entry as JSON or markdown. |
| OpenAPI | /openapi.json | OpenAPI 3.1 description of the read-only JSON endpoints. |
| Schema | /schema/entry.schema.json | JSON Schema for one entry (human-readable). |
| Contribute | /contribute.json | How to submit entries: rules, template, PR and issue paths. |
| Sitemap | /sitemap.xml | Every HTML page. |
Base URL: https://indexagentica.com. All responses are static files served by GitHub Pages; please cache and use conditional requests. Crawling is explicitly welcome; see robots.txt.
Contributing
Add or fix entries via a pull request (preferred) or a structured GitHub issue. Agents are first-class contributors; say that you are an agent and who you act for. Merges are always done by a human maintainer. Machine-readable version of this section: /contribute.json (also embedded in /api/index.json as contribute).
Rules
- One entry per file at content/{category}/{id}.json; id is kebab-case, unique across all categories, and equals the filename.
- category equals the folder name.
- Required fields: id, name, category, summary, url, added. Unknown fields are rejected (additionalProperties: false).
- summary is one neutral line, 10-200 characters; no marketing copy.
- List the URLs you used to verify facts in sources; omit any field you cannot verify.
- Every id in related must already exist.
Categories: skills, harnesses, mcp-servers, tools, protocols, apis, information, finance-payments, directories, infrastructure, evals-observability. Schema: /schema/entry.schema.json (field reference).
Path A: pull request (preferred)
- Fork https://github.com/Drudley/indexagentica and create a branch.
- Copy entry_template to content/{category}/{id}.json and fill it in (delete optional fields you cannot verify; set added to today, YYYY-MM-DD).
- Run: node scripts/validate.mjs (Node >= 18, zero dependencies; must print a check mark and exit 0).
- Open a pull request against main using the PR template. CI validates and posts file/line annotations with fixes.
Guide: CONTRIBUTING.md. Fixing an existing entry: edit its file and set updated.
Entry template (copy, then delete what you can't verify)
{
"id": "example-tool",
"name": "Example Tool",
"category": "tools",
"summary": "One neutral line (10-200 chars) saying what it does for agents.",
"description": "Optional longer **markdown** description. Delete fields you cannot verify.",
"url": "https://example.com",
"repo": "https://github.com/example/example-tool",
"docs": "https://example.com/docs",
"tags": [
"example",
"web-search"
],
"license": "MIT",
"pricing": "freemium",
"status": "active",
"agent_access": {
"llms_txt": "https://example.com/llms.txt",
"openapi": "https://example.com/openapi.json",
"mcp_endpoint": "https://example.com/mcp",
"auth": "api-key",
"notes": "Send the key as a Bearer token."
},
"related": [
"model-context-protocol"
],
"sources": [
"https://example.com",
"https://github.com/example/example-tool"
],
"added": "2026-10-02",
"last_verified": "2026-10-02",
"submitted_by": "ExampleAgent (agent) for @username"
}
Path B: structured issue
- Humans: open the New entry form.
- Agents via API:
POST https://api.github.com/repos/Drudley/indexagentica/issueswith title[New entry]: <name>and the body below (sections### <Label>;_No response_for empty optional fields), e.g.gh issue create -R Drudley/indexagentica --title "[New entry]: <name>" --body-file body.md. - A maintainer reviews the issue. Adding the `approved` label (write access required) runs a workflow that writes content/{category}/{id}.json, validates it, and opens a pull request that closes the issue. If validation fails, the workflow comments the errors on the issue instead. A human merges the PR.
Issue body template
### Entry id
<id>
### Name
<name>
### Category
<category>
### Summary
<summary>
### Homepage URL
<url>
### Repository URL
_No response_
### Docs URL
_No response_
### Description
_No response_
### Tags
_No response_
### License
_No response_
### Pricing
_No response_
### Status
_No response_
### llms.txt URL
_No response_
### OpenAPI URL
_No response_
### MCP endpoint
_No response_
### Auth
_No response_
### Agent access notes
_No response_
### Related entry ids
_No response_
### Sources
<sources>
### Last verified
_No response_
### Maintainer
_No response_
### Submitted by
_No response_
Corrections and removals
Use the Correction / removal form, or edit the JSON in a pull request.
Inclusion policy
- Useful to AI agents or people building them.
- Publicly reachable; facts verifiable from the listed sources.
- No spam, affiliate links, or SEO-only pages. Summaries are neutral, not marketing copy.