by anysearch-ai
Unified real-time search engine skill for AI agents.
# Add to your Claude Code skills
git clone https://github.com/anysearch-ai/anysearch-mcp-serverGuides for using ai agents skills like anysearch-mcp-server.
Last scanned: 5/22/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-05-22T07:44:15.558Z",
"semgrepRan": false,
"npmAuditRan": true,
"pipAuditRan": true
}anysearch-mcp-server is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by anysearch-ai. Unified real-time search engine skill for AI agents. It has 1,383 GitHub stars.
Yes. anysearch-mcp-server passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/anysearch-ai/anysearch-mcp-server" and add it to your Claude Code skills directory (see the Installation section above).
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh anysearch-mcp-server against similar tools.
No comments yet. Be the first to share your thoughts!
Unified real-time search MCP server supporting general web search, vertical domain search, parallel batch search, and full-page URL content extraction.
An API key is optional but recommended. Without a key, all features still work via anonymous access with lower rate limits.
Visit https://anysearch.com/console/api-keys to create a free API key.
| Priority | Source |
|---|---|
| 1 (highest) | --api_key CLI flag / Authorization header |
| 2 | Environment variable ANYSEARCH_API_KEY |
| 3 | .env file (ANYSEARCH_API_KEY=<key>) |
| 4 | Anonymous access (lower rate limits) |
| Scenario | Behavior |
|---|---|
| No key | Proceed with anonymous access (lower rate limits) |
| Has key | Sent via Authorization: Bearer <key> header, higher rate limits |
| Key exhausted, auto-registered key returned | Agent should ask user for confirmation, then persist the new key |
| Key exhausted, no new key | Inform user and suggest configuring a new API key |
AnySearch MCP server natively supports Streamable HTTP transport (MCP spec 2025-03-26). SSE and stdio clients can connect via proxy.
| Transport | Native? | Best for |
|---|---|---|
| Streamable HTTP | Yes | OpenCode, Claude Desktop (2025.6+), web-based clients |
| SSE | Via proxy | Cursor, Windsurf |
| stdio | Via proxy | Claude Desktop (legacy), VS Code Copilot, Cline |
For agents that support the Streamable HTTP transport (MCP spec 2025-03-26+):
OpenCode (~/.opencode/config.json or project opencode.json):
{
"mcp": {
"anysearch": {
"type": "remote",
"url": "https://api.anysearch.com/mcp",
"headers": {
"Authorization": "Bearer ${ANYSEARCH_API_KEY}"
}
}
}
}
Claude Desktop (2025.6+, claude_desktop_config.json):
{
"mcpServers": {
"anysearch": {
"type": "streamable-http",
"url": "https://api.anysearch.com/mcp",
"headers": {
"Authorization": "Bearer ${ANYSEARCH_API_KEY}"
}
}
}
}
Without an API key, omit the
headerssection. The server will use anonymous access automatically.
For agents that only support stdio transport. Two proxy options:
mcp-remote — auto-detects Streamable HTTP, simplest config:
Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"anysearch": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.anysearch.com/mcp",
"--header",
"Authorization: Bearer ${ANYSEARCH_API_KEY}"
]
}
}
}
VS Code Copilot (.vscode/mcp.json):
{
"servers": {
"anysearch": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.anysearch.com/mcp",
"--header",
"Authorization: Bearer ${ANYSEARCH_API_KEY}"
]
}
}
}
Cline (VS Code settings):
{
"mcpServers": {
"anysearch": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.anysearch.com/mcp",
"--header",
"Authorization: Bearer ${ANYSEARCH_API_KEY}"
]
}
}
}
Without an API key, omit the
"--header"and"Authorization: Bearer ..."args.
supergateway — more transport options, supports SSE output:
Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"anysearch": {
"command": "npx",
"args": [
"-y",
"supergateway",
"--streamableHttp",
"https://api.anysearch.com/mcp",
"--oauth2Bearer",
"${ANYSEARCH_API_KEY}"
]
}
}
}
Without an API key, omit the
"--oauth2Bearer"and key args.
For agents that only support SSE transport (Cursor, Windsurf). Requires running a local SSE proxy server:
npx -y supergateway \
--streamableHttp https://api.anysearch.com/mcp \
--outputTransport sse \
--port 8000 \
--oauth2Bearer <your_api_key>
Without an API key, omit the
--oauth2Bearerflag.
Then configure your agent:
Cursor (.cursor/mcp.json):
{
"mcpServers": {
"anysearch": {
"type": "sse",
"url": "http://localhost:8000/sse"
}
}
}
Windsurf (~/.codeium/windsurf/mcp_config.json):
{
"mcpServers": {
"anysearch": {
"serverUrl": "http://localhost:8000/sse"
}
}
}
The SSE proxy must remain running while the agent is active. Consider running it as a background service.
| Agent | Transport | Config Location | Needs Proxy? | Proxy Tool |
|---|---|---|---|---|
| OpenCode | Streamable HTTP | opencode.json |
No | — |
| Claude Desktop (2025.6+) | Streamable HTTP | claude_desktop_config.json |
No | — |
| Claude Desktop (legacy) | stdio | claude_desktop_config.json |
Yes | mcp-remote |
| Cursor | SSE | .cursor/mcp.json |
Yes | supergateway |
| VS Code Copilot | stdio | .vscode/mcp.json |
Yes | mcp-remote |
| Windsurf | SSE | mcp_config.json |
Yes | supergateway |
| Cline | stdio | VS Code settings | Yes | mcp-remote |
searchExecute a search query — general or vertical domain.
| Parameter | Type | Required | Description |
|---|---|---|---|
query |
string | Yes | Natural language search query. ONE intent per call |
domain |
string | No | Vertical domain (e.g. finance, academic, security). Must come from get_sub_domains enum |
sub_domain |
string | No | Sub-domain routing key (e.g. finance.us_stock). Must come from get_sub_domains output |
sub_domain_params |
object | No | Structured params from get_sub_domains params column. NEVER invent values |
max_results |
integer | No | 1–10, default 10 |
get_sub_domainsQuery the vertical domain directory. Required before any search that uses a domain — returns valid sub_domains and their parameter schemas.
| Parameter | Type | Required | Description |
|---|---|---|---|
domain |
string | One of | Single domain to query |
domains |
string[] | One of | Batch up to 5 domains (preferred — covers more ground) |
Returns a Markdown table: sub_domain | description | params
batch_searchExecute 1–5 independent search queries in parallel. Single failure does not block others.
| Parameter | Type | Required | Description |
|---|---|---|---|
queries |
object[] | Yes | 1–5 query objects, each with same fields as search |
extractFetch full page content from a URL and return as Markdown. Truncated at 50,000 characters. HTML pages only.
| Parameter | Type | Required | Description |
|---|---|---|---|
url |
string | Yes | Target URL (http:// or https://) |