Tavily Proxy — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Tavily Proxy (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A Cloudflare Worker that acts as an MCP (Model Context Protocol) proxy for the Tavily API. It provides the same tools as the official Tavily MCP server, but with an API key pool — automatically rotating through multiple Tavily keys and selecting the one with the most remaining credit.
POST /mcp, compatible with any MCP clienttavily-search, tavily-extract, tavily-crawl, tavily-mapx-api-key header| Method | Path | Description |
|---|---|---|
POST | /mcp | MCP Streamable HTTP endpoint (tool calls) |
POST | /api/keys | Add a Tavily API key to the pool |
DELETE | /api/keys | Remove a Tavily API key from the pool |
GET | /api/keys | List all keys and their remaining credits |
GET | / | Health check (no auth required) |
All endpoints except GET / require the x-api-key header matching your configured AUTH_KEY.
npm install -g wrangler)# Install dependencies
npm install
# Set your auth key for local dev (already in .dev.vars)
# AUTH_KEY=test-secret-key
# Start local server
npm run devWrangler simulates KV locally — no Cloudflare account needed for development.
npx wrangler kv namespace create KVYOUR_KV_NAMESPACE_ID with the real ID from step 1. npx wrangler secret put AUTH_KEY npm run deploy curl -X POST https://your-worker.workers.dev/api/keys \
-H "Content-Type: application/json" \
-H "x-api-key: your-auth-key" \
-d '{"apiKey": "tvly-xxx"}'With mcp-remote (for clients like Cursor, Claude Desktop, etc.):
{
"mcpServers": {
"tavily-proxy": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://your-worker.workers.dev/mcp",
"--header", "x-api-key:${AUTH_KEY}"
],
"env": {
"AUTH_KEY": "your-auth-key"
}
}
}
}# Add a key (auto-queries remaining credit from Tavily)
curl -X POST https://your-worker.workers.dev/api/keys \
-H "Content-Type: application/json" \
-H "x-api-key: your-auth-key" \
-d '{"apiKey": "tvly-xxx"}'
# List all keys and credits
curl https://your-worker.workers.dev/api/keys \
-H "x-api-key: your-auth-key"
# Delete a key
curl -X DELETE https://your-worker.workers.dev/api/keys \
-H "Content-Type: application/json" \
-H "x-api-key: your-auth-key" \
-d '{"apiKey": "tvly-xxx"}'KV.list() retrieves all stored API keysapi.tavily.com using that key/api/keys, its real remaining credit is fetched from Tavily's /usage endpointISC
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.