docs

AgenticSource API.

One MCP connection, 12 tools, 16 verified upstream sources. License-aware results on every call. Drops into Claude, ChatGPT, Cursor, Codex, and any MCP-compatible agent in 30 seconds.

v1.0.0 JSON-RPC 2.0 over HTTP OAuth or API key MCP spec compatible

Quickstart.

Four steps to a working integration. Total time: about 30 seconds.

1. Sign up

Magic-link signup at agenticsource.dev/signup. Email only, no credit card required for the free tier.

2. Get your endpoint

Every account uses the same MCP endpoint:

https://agenticsource.dev/mcp

3. Configure your agent

Drop the MCP URL into your agent's configuration. For managed clients (Claude, ChatGPT, Codex) authenticate via OAuth. For local clients (Cursor, Continue, Cline, Zed, Windsurf) paste your API key. Full client-specific setup in Client setup.

4. Call any tool

Your agent now has 12 new tools available. The agent-side call (in pseudocode your AI client handles for you):

await mcp.search_images({
  query: "team meeting modern office",
  orientation: "landscape",
  commercial_safe_only: true
})

Under the hood, the MCP client sends a JSON-RPC 2.0 request over HTTP. If you're integrating directly without an MCP client, the wire format is:

POST https://agenticsource.dev/mcp
Authorization: Bearer sk_as_...
Content-Type: application/json

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "search_images",
    "arguments": {
      "query": "team meeting modern office",
      "orientation": "landscape",
      "commercial_safe_only": true
    }
  }
}
Tip Use tools/list to discover all available tools and their schemas dynamically. Most MCP-compatible clients do this automatically on connection.

Authentication.

Two paths supported. Pick whichever your client speaks.

OAuth 2.0 + PKCE

For managed AI clients (Claude, ChatGPT, Codex). Standard OAuth 2.0 with PKCE per RFC 7636 and discovery metadata per RFC 8414.

  • Discovery URL: https://agenticsource.dev/.well-known/oauth-authorization-server
  • Authorization endpoint: /oauth/authorize
  • Token endpoint: /oauth/token
  • Scopes: tools:read, tools:write

Your client handles the handshake. You click "Connect AgenticSource" inside the AI client; the magic-link flow signs you up if needed; the AI client receives an access token; from then on, all MCP calls are authenticated by header.

API key (Bearer)

For Cursor, scripts, and local MCP clients that don't support OAuth. Generate a key in the dashboard (agenticsource.dev/dashboard), then send it as a Bearer header:

Authorization: Bearer sk_as_XXXXXXXXXXXXXXXXXXXXXXXX

API keys are scoped to a single account and rotate freely. The dashboard supports up to 10 active keys per account.

Security note API keys are stored hashed at rest using bcrypt. The plaintext key is shown only once at creation time; you can't retrieve it later, only rotate or revoke it.

Client setup.

Drop-in configuration for the eight officially-tested MCP clients.

Claude (Desktop + claude.ai)
OAuth, no API key needed. Settings → Connectors → Add custom connector → paste:
https://agenticsource.dev/mcp
Click Connect. You'll be redirected to AgenticSource to authorize, then back to Claude. Done in 20 seconds.
ChatGPT
OpenAI is rolling MCP support out gradually. If you don't see the option below, your version doesn't have it yet. In the latest builds: Settings → Beta features → Custom MCP serversAdd server:
https://agenticsource.dev/mcp
Authorize via OAuth.
Cursor
Edit ~/.cursor/mcp.json (create if missing):
{
  "mcpServers": {
    "agenticsource": {
      "url": "https://agenticsource.dev/mcp",
      "headers": {
        "Authorization": "Bearer sk_as_YOUR_KEY_HERE"
      }
    }
  }
}
Replace sk_as_YOUR_KEY_HERE with a key from your dashboard. Restart Cursor.
Codex CLI
Edit ~/.codex/config.toml:
[mcp_servers.agenticsource]
url = "https://agenticsource.dev/mcp"

[mcp_servers.agenticsource.headers]
Authorization = "Bearer sk_as_YOUR_KEY_HERE"
Continue.dev
In ~/.continue/config.json, add under mcpServers:
{
  "mcpServers": {
    "agenticsource": {
      "transport": "http",
      "url": "https://agenticsource.dev/mcp",
      "headers": {
        "Authorization": "Bearer sk_as_YOUR_KEY_HERE"
      }
    }
  }
}
Cline (VS Code)
Command palette → Cline: Open MCP Settings. Paste:
{
  "agenticsource": {
    "url": "https://agenticsource.dev/mcp",
    "headers": {
      "Authorization": "Bearer sk_as_YOUR_KEY_HERE"
    }
  }
}
Zed
In ~/.config/zed/settings.json, add under context_servers:
"context_servers": {
  "agenticsource": {
    "command": null,
    "url": "https://agenticsource.dev/mcp",
    "headers": {
      "Authorization": "Bearer sk_as_YOUR_KEY_HERE"
    }
  }
}
Windsurf
Settings → Cascade → MCP → Add server. Endpoint https://agenticsource.dev/mcp, header Authorization: Bearer sk_as_YOUR_KEY_HERE. Or paste into ~/.codeium/windsurf/mcp_config.json:
{
  "mcpServers": {
    "agenticsource": {
      "url": "https://agenticsource.dev/mcp",
      "headers": {
        "Authorization": "Bearer sk_as_YOUR_KEY_HERE"
      }
    }
  }
}

Tools.

12 MCP tools across 11 visible categories plus two legacy categories still callable through the API.

search_images 7 sources

Search across Unsplash, Pexels, Pixabay, OpenVerse, Wikimedia, NASA, and Met Museum. ~800M+ images. License metadata on every result.

Parameters
NameTypeDefaultDescription
querystringrequiredSearch query, freeform text.
orientationstring"any""landscape", "portrait", "square", or "any".
colorstringnullHex color or descriptor (e.g. "blue", "#3B82F6").
commercial_safe_onlybooleanfalseFilter out CC-BY-NC and other non-commercial licenses.
include_open_culturebooleantrueInclude results from Wikimedia, NASA, and Met Museum.
limitinteger35Max results across all sources (1-50).
Response
{
  "count": 35,
  "results": [{
    "source": "unsplash",
    "id": "...",
    "url_full": "https://...",
    "url_thumbnail": "https://...",
    "photographer": "J. Doe",
    "photographer_url": "https://...",
    "license_name": "Unsplash License",
    "license_url": "https://...",
    "commercial_use": true,
    "attribution_required": false,
    "width": 5472,
    "height": 3648
  }],
  "sources_responded": ["unsplash", "pexels", "pixabay", "openverse"]
}

search_videos 3 sources

Pexels, Pixabay, Coverr. ~150k HD/4K clips. Returns MP4 (H.264) with preview and full-quality download URLs, plus duration_seconds, fps, width, height, and file_size_bytes per result.

Parameters
NameTypeDefaultDescription
querystringrequiredSearch query.
min_durationinteger0Minimum duration in seconds.
max_durationintegernullMaximum duration in seconds.
resolutionstring"any""4k", "hd", "sd", or "any".
commercial_safe_onlybooleanfalseFilter for commercial-safe results.
limitinteger20Max results (1-50).

search_audio 2 sources

Freesound (~600k CC sounds) and Pixabay Music. Ambient, SFX, music tracks. Returns MP3 previews plus original-format downloads (typically WAV, FLAC, or OGG from Freesound; MP3 from Pixabay), with duration_seconds, sample_rate_hz, and bit_depth.

Parameters
NameTypeDefaultDescription
querystringrequiredSearch query.
kindstring"any""sfx", "music", "ambient", "voice", or "any".
sourcesstring[]["freesound","pixabay"]Which sources to query.
commercial_safe_onlybooleanfalseFilter for commercial use.
limitinteger20Max results (1-50).

search_icons 200k+ icons

Iconify aggregator across 150+ libraries: Lucide, Heroicons, Phosphor, Tabler, Material, FontAwesome, and more.

Parameters
NameTypeDefaultDescription
querystringrequiredIcon name or descriptor.
prefixstringnullRestrict to a library prefix (e.g. "lucide").
stylestring"any""outline", "solid", "duotone", or "any".
limitinteger24Max results (1-100).

search_illustrations 2 sources

unDraw static SVG illustrations and Lottiefiles animations. ~300k+ assets, mostly free for commercial use.

Parameters
NameTypeDefaultDescription
querystringrequiredSearch query or theme.
kindstring"any""static" (unDraw), "animated" (Lottie), or "any".
colorstringnullHex color to recolor unDraw illustrations (ignored for Lottie).
limitinteger20Max results (1-50).

get_color_palette generative

Colormind generative palettes and The Color API scheme builder. Seedable, deterministic.

Parameters
NameTypeDefaultDescription
seedstringnullHex color or descriptor (e.g. "fintech", "#3B82F6").
modestring"analogous""analogous", "complementary", "triadic", "monochromatic".
lengthinteger5Number of colors to return (3-8).

search_fonts 1,800+ families

Google Fonts and FontShare. Returns embed CSS, weights/variants, subsets, license info.

Parameters
NameTypeDefaultDescription
querystringnullFont name or category.
categorystring"any""sans-serif", "serif", "monospace", "display", "handwriting".
weightsinteger[]nullRequired weights (e.g. [400, 700]).
limitinteger20Max results.

search_3d_assets Poly Haven

~2,000+ CC0 3D models, HDRIs, and PBR textures. All public-domain, all commercial-use safe. Models ship as GLB (web-ready) and FBX (DCC tools), HDRIs as HDR, textures as ZIP bundles with albedo, normal, roughness, displacement, and AO maps in PNG/JPG.

Parameters
NameTypeDefaultDescription
querystringrequiredSearch query.
kindstring"any""hdri", "texture", "model", or "any".
limitinteger15Max results.

search_mockups 25+ templates

Curated mockup templates. Phones, laptops, apparel, packaging, billboards, social frames. Returns template URL plus a screen_bbox to composite into.

Parameters
NameTypeDefaultDescription
categorystringrequired"device", "apparel", "packaging", "outdoor", "social".
devicestringnullSpecific device (e.g. "iphone-15-pro", "macbook-pro-16").
backgroundstring"transparent""transparent" or color name.

search_motion 5,000+ motion

Lottie animations and AE/Premiere motion-design templates. Kinetic typography, transitions, loops, lower-thirds, intro/outro sequences.

Parameters
NameTypeDefaultDescription
querystringrequiredSearch query or motion type.
kindstring"any""transition", "title", "loop", "intro", "lower-third", or "any".
formatstring"any""lottie", "ae", "premiere", or "any".
duration_maxintegernullMax duration in seconds.
limitinteger15Max results (1-50).

list_sources meta

Returns the full catalog of available tools, their underlying upstream sources, and current operational status.

Response
{
  "tools": [
    {
      "name": "search_images",
      "category": "photos",
      "sources": ["unsplash","pexels","pixabay","openverse","wikimedia","nasa","met"],
      "status": "operational"
    },
    ...
  ]
}

License model.

Every search result carries four normalized license fields, regardless of source:

FieldTypeDescription
license_namestringCanonical license name (e.g. "CC0", "CC-BY-4.0", "Unsplash License").
license_urlstringLink to the full license text.
commercial_usebooleanTrue if commercial use is permitted.
attribution_requiredbooleanTrue if attribution must be given.

Common license types you'll see

  • CC0: public domain, no restrictions. Examples: Poly Haven, parts of OpenVerse.
  • CC-BY: free to use commercially, attribution required.
  • CC-BY-NC: non-commercial only. Filtered out by commercial_safe_only: true.
  • Unsplash License: free commercial use, no attribution required (though appreciated).
  • Pexels License: similar to Unsplash; free commercial use, no attribution.
  • Pixabay License: free for most commercial use with some restrictions (no selling without modification).
Best practice Pass commercial_safe_only: true on any search where the agent's output will be published, sold, or used in marketing. AgenticSource filters NC-licensed results out of the response entirely, so your agent doesn't need its own license-checking logic.

Enterprise (multi-tenant, webhooks, sub-accounts).

Embedding AgenticSource for your own users? We can issue scoped API keys per end-user, surface per-sub-account usage in your dashboard, and send webhooks on usage milestones. This is part of the upcoming Enterprise plan and currently in preview.

Email hello@agenticsource.dev to discuss your use case.

Rate limits & quotas.

Per-minute rate limits

PlanSearch
Free30/min
Pro120/min
Stock+600/min

Monthly quotas

PlanSearches/moOverage
Free500hard-block until reset
Pro25,000soft-cap + boost packs
Stock+250,000soft-cap + boost packs

Hitting rate limits a lot? Email hello@agenticsource.dev and we can usually raise your bucket for a specific workload.

Errors.

AgenticSource follows JSON-RPC 2.0 error response shape. Each error has a code and a message you can show to the user.

See changelog for the latest tool list and source coverage.