Skip to main content
Glama
assafbar2

agentSwitchBoard

by assafbar2
README.md
# Agent Switchboard

**The curated directory for the agentic web** โ€” 300+ verified AI agents, MCP
servers, and agentic tools with real API, MCP, CLI, or browser-extension
access. Live at **[agentswitchboard.dev](https://agentswitchboard.dev)**.

## ๐Ÿ”Œ This directory is itself an MCP server

Point any MCP client at it and query the catalog with native tools:

```json
{
  "mcpServers": {
    "agentswitchboard": { "url": "https://agentswitchboard.dev/api/mcp" }
  }
}
```

Tools: `search_agents` ยท `get_agent` ยท `list_categories`. Streamable HTTP, no
auth. Stdio-only clients: `npx -y mcp-remote https://agentswitchboard.dev/api/mcp`

Prefer plain HTTP? There's a REST search too:

```bash
curl "https://agentswitchboard.dev/api/agents?q=video&access=mcp&limit=5"
curl "https://agentswitchboard.dev/api/agents/agentmail"
curl "https://agentswitchboard.dev/api/categories"
```

OpenAPI: [`/openapi.json`](https://agentswitchboard.dev/openapi.json).
Connector skill: [`/skill.md`](https://agentswitchboard.dev/skill.md).

Also machine-readable: [`/agents.json`](https://agentswitchboard.dev/agents.json)
(full catalog, CORS-open), in-browser tools via WebMCP (`document.modelContext`),
and an agent-optimized view on every page (the "For Agents" toggle).

**Full API reference: [docs/API.md](docs/API.md)** โ€” REST search/detail/categories, MCP, WebMCP, and the catalog dump.

## ๐Ÿ—‚ Git-as-CMS

The entire catalog lives in this repo:

```
content/
  agents/<slug>.json    one file per agent โ€” the source of truth
  categories.json       category definitions
  changelog.json        public audit log (rendered at /changelog)
```

There is no database and no CMS. Editing content = editing files. Merging to
`main` = publishing. Every entry is schema-validated in CI
([`scripts/validate-content.ts`](scripts/validate-content.ts)) โ€” a bad entry
cannot merge. A weekly job link-checks all ~480 URLs in the catalog.

**Want to add or fix a listing? See [CONTRIBUTING.md](CONTRIBUTING.md).**
Non-developers: [agentswitchboard.dev/submit](https://agentswitchboard.dev/submit).

## Development

```bash
npm install
npm run dev          # no env vars needed โ€” content is right here
```

| Command | |
|---|---|
| `npm run dev` | dev server |
| `npm run build` | production build (SSG, all pages) |
| `npm test` | unit tests |
| `npm run lint` / `npm run typecheck` | quality gates |
| `npx tsx scripts/validate-content.ts` | validate the catalog |
| `npx tsx scripts/check-links.ts` | link-rot sweep |
| `npx tsx scripts/cms.ts` | content ops: find / feature / update / unpublish |
| `npx tsx scripts/weekly-drop.ts` | batch-add agents (see file header) |

Stack: Next.js (App Router) ยท Tailwind ยท file-based catalog ยท deployed on Vercel.

## License

- **Code** (`app/`, `components/`, `lib/`, `scripts/`, config) โ€” [MIT](LICENSE)
- **Catalog data** (`content/`) โ€” [CC-BY-4.0](content/LICENSE.md): reuse freely with attribution to Agent Switchboard.