tavily-pool-mcp
A local Model Context Protocol server that exposes a Tavily search tool and rotates across multiple Tavily API keys.
Features
- Exposes
tavily_searchas an MCP tool - Rotates across multiple Tavily API keys
- Retries with another key on
401,403, or429 - Works with OpenCode and other MCP-compatible clients
Requirements
- Node.js 18+
- Tavily API keys
Install
npm install
Configuration
Set TAVILY_API_KEYS as a space, comma, or semicolon separated list:
export TAVILY_API_KEYS="tvly-dev-key-1 tvly-dev-key-2 tvly-dev-key-3"
On Windows PowerShell:
$env:TAVILY_API_KEYS="tvly-dev-key-1 tvly-dev-key-2 tvly-dev-key-3"
Run
npm start
npm start starts a stdio MCP server, so the terminal will wait for MCP input. This is expected.
OpenCode Config
Add this to your OpenCode opencode.json:
{
"mcp": {
"tavily-pool": {
"type": "local",
"enabled": true,
"command": ["node", "C:/path/to/tavily-pool-mcp/src/index.mjs"],
"environment": {
"TAVILY_API_KEYS": "{env:TAVILY_API_KEYS}"
}
}
}
}
Tool
tavily_search
Arguments:
query: search querymax_results: 1-20, default 5search_depth:basicoradvanced, defaultbasicinclude_answer: boolean, default falseinclude_raw_content: boolean, default false
Security
Do not commit real API keys. Use environment variables or a secret manager.
License
MIT