API v1

ToolHund API documentation

REST endpoints and MCP tools for AI agents, product teams, and developers who need reliable AI tool data.

Introduction

The ToolHund API returns curated AI-tool intelligence: profiles, categories, alternatives, editorial benchmarks, deals, launches, and pricing signals. All responses are JSON. All endpoints are versioned under /api/v1.

Base URL: https://toolhund.com

Plans & pricing →

Authentication

All authenticated endpoints require a Bearer token. Get one from your API dashboard.

Authorization: Bearer th_live_xxxxxxxxxxxxxxxx

Keep keys server-side. Never ship them in browser bundles or mobile apps.

Errors

Errors return standard HTTP status codes and a JSON body:

{
  "error": {
    "code": "rate_limit_exceeded",
    "message": "Too many requests. Please try again later."
  }
}
  • 401 — invalid_api_key
  • 403 — revoked_api_key
  • 404 — resource not found
  • 429 — rate_limit_exceeded or monthly_limit_exceeded
  • 5xx — transient upstream error, safe to retry with backoff

Rate limits

Every key has a per-minute burst limit and a monthly cap. Both are enforced atomically at the database layer. Limits scale with your plan — see pricing.

Endpoints

GET/api/v1/tools

List / search tools with filters.

Parameters
  • q (string) — Full-text query
  • category (string) — Category slug
  • limit (int) — Max 100, default 20
  • offset (int) — Pagination offset
curl -H "Authorization: Bearer $TH_KEY" \
  "https://toolhund.com/api/v1/tools?q=agents&limit=10"
Try it
GET https://toolhund.com/api/v1/tools?q=agents&limit=10
curl -H "Authorization: Bearer $TH_KEY" \
  "https://toolhund.com/api/v1/tools?q=agents&limit=10"
GET/api/v1/tools/{slug}

Full profile for one tool.

curl -H "Authorization: Bearer $TH_KEY" \
  https://toolhund.com/api/v1/tools/cursor
Try it
GET https://toolhund.com/api/v1/tools/cursor
curl -H "Authorization: Bearer $TH_KEY" \
  "https://toolhund.com/api/v1/tools/cursor"
GET/api/v1/tools/{slug}/alternatives

Ranked alternatives to a tool.

curl -H "Authorization: Bearer $TH_KEY" \
  https://toolhund.com/api/v1/tools/cursor/alternatives
Try it
GET https://toolhund.com/api/v1/tools/cursor/alternatives
curl -H "Authorization: Bearer $TH_KEY" \
  "https://toolhund.com/api/v1/tools/cursor/alternatives"
GET/api/v1/tools/{slug}/reviews

User reviews with rating breakdown.

Parameters
  • limit (int) — Max 100
  • offset (int) — Pagination
curl -H "Authorization: Bearer $TH_KEY" \
  https://toolhund.com/api/v1/tools/cursor/reviews
Try it
GET https://toolhund.com/api/v1/tools/cursor/reviews?limit=10
curl -H "Authorization: Bearer $TH_KEY" \
  "https://toolhund.com/api/v1/tools/cursor/reviews?limit=10"
GET/api/v1/tools/{slug}/benchmarks

Editorial ToolHund Score + sub-scores.

curl -H "Authorization: Bearer $TH_KEY" \
  https://toolhund.com/api/v1/tools/cursor/benchmarks
Try it
GET https://toolhund.com/api/v1/tools/cursor/benchmarks
curl -H "Authorization: Bearer $TH_KEY" \
  "https://toolhund.com/api/v1/tools/cursor/benchmarks"
GET/api/v1/categories

All categories.

curl -H "Authorization: Bearer $TH_KEY" https://toolhund.com/api/v1/categories
Try it
GET https://toolhund.com/api/v1/categories
curl -H "Authorization: Bearer $TH_KEY" \
  "https://toolhund.com/api/v1/categories"
GET/api/v1/deals

Active verified deals.

curl -H "Authorization: Bearer $TH_KEY" https://toolhund.com/api/v1/deals
Try it
GET https://toolhund.com/api/v1/deals
curl -H "Authorization: Bearer $TH_KEY" \
  "https://toolhund.com/api/v1/deals"
GET/api/v1/news

Recent market events (launches, pricing, funding).

curl -H "Authorization: Bearer $TH_KEY" https://toolhund.com/api/v1/news
Try it
GET https://toolhund.com/api/v1/news
curl -H "Authorization: Bearer $TH_KEY" \
  "https://toolhund.com/api/v1/news"
POST/api/v1/stacks/build

Build a task-based AI stack given a budget.

curl -X POST -H "Authorization: Bearer $TH_KEY" \
  -H "Content-Type: application/json" \
  -d '{"task":"marketing content","budget_usd":100}' \
  https://toolhund.com/api/v1/stacks/build
Try it
POST https://toolhund.com/api/v1/stacks/build
curl -X POST -H "Authorization: Bearer $TH_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "task": "marketing content",
  "budget_usd": 100
}' \
  "https://toolhund.com/api/v1/stacks/build"
GET/api/v1/map

Complete tool catalog map (light payload).

curl https://toolhund.com/api/v1/map
Try it
GET https://toolhund.com/api/v1/map
curl "https://toolhund.com/api/v1/map"
GET/api/v1/demo/recommendations

Public demo endpoint — no auth required.

curl "https://toolhund.com/api/v1/demo/recommendations?task=coding"
Try it
GET https://toolhund.com/api/v1/demo/recommendations?task=coding
curl "https://toolhund.com/api/v1/demo/recommendations?task=coding"

MCP integration

ToolHund is an MCP (Model Context Protocol) server. Point any MCP-compatible client (Claude Desktop, Cursor, custom agents) at:

https://toolhund.com/mcp

Discovery metadata: /.well-known/oauth-authorization-server and /.well-known/openid-configuration.

SDK examples

JavaScript / TypeScript
const r = await fetch("https://toolhund.com/api/v1/tools?q=agents", {
  headers: { Authorization: `Bearer ${process.env.TH_KEY}` },
});
const data = await r.json();
Python
import os, httpx
r = httpx.get(
    "https://toolhund.com/api/v1/tools",
    params={"q": "agents"},
    headers={"Authorization": f"Bearer {os.environ['TH_KEY']}"},
)
print(r.json())
Ready to build?
Start free — 1,000 requests/month, no card.
Get your API key →