- name
- anysearch-mcp-server
- description
- Unified real-time search MCP server with general web search, 23 vertical domains, batch queries, and URL content extraction
- triggers
- ["search the web for information","find recent news about a topic","look up stock information or financial data","search academic papers or research","extract content from this URL","search multiple queries in parallel","search for CVE security vulnerabilities","find code examples or repositories"]
# AnySearch MCP Server Skill
> Skill by [ara.so](https://ara.so) — MCP Skills collection.
AnySearch MCP Server is a unified real-time search engine for AI agents, providing general web search, 23 vertical domain searches (finance, academic, security, legal, code, etc.), parallel batch search, and full-page URL content extraction via the MCP protocol.
## What It Does
- **General Web Search**: Natural language queries across the web
- **Vertical Domain Search**: Structured queries in 23 specialized domains
- **Batch Search**: Execute up to 5 independent queries in parallel
- **URL Extraction**: Fetch and convert full page content to Markdown
- **Anonymous Access**: Works without API key (lower rate limits)
## Installation
### Streamable HTTP (Recommended - No Proxy)
For agents supporting MCP spec 2025-03-26+ (OpenCode, Claude Desktop 2025.6+):
**OpenCode** (`~/.opencode/config.json` or `opencode.json`):
```json
{
"mcp": {
"anysearch": {
"type": "streamable-http",
"url": "https://api.anysearch.com/mcp",
"headers": {
"Authorization": "Bearer ${ANYSEARCH_API_KEY}"
}
}
}
}
```
**Claude Desktop** (`claude_desktop_config.json`):
```json
{
"mcpServers": {
"anysearch": {
"type": "streamable-http",
"url": "https://api.anysearch.com/mcp",
"headers": {
"Authorization": "Bearer ${ANYSEARCH_API_KEY}"
}
}
}
}
```
### stdio Transport (Via mcp-remote Proxy)
**Claude Desktop** (`claude_desktop_config.json`):
```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`):
```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):
```json
{
"mcpServers": {
"anysearch": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.anysearch.com/mcp",
"--header",
"Authorization: Bearer ${ANYSEARCH_API_KEY}"
]
}
}
}
```
### SSE Transport (Via supergateway Proxy)
Start the proxy server:
```bash
npx -y supergateway \
--streamableHttp https://api.anysearch.com/mcp \
--outputTransport sse \
--port 8000 \
--oauth2Bearer ${ANYSEARCH_API_KEY}
```
**Cursor** (`.cursor/mcp.json`):
```json
{
"mcpServers": {
"anysearch": {
"type": "sse",
"url": "http://localhost:8000/sse"
}
}
}
```
**Windsurf** (`~/.codeium/windsurf/mcp_config.json`):
```json
{
"mcpServers": {
"anysearch": {
"serverUrl": "http://localhost:8000/sse"
}
}
}
```
### API Key Configuration
**Optional but recommended**. Get a free key at: https://anysearch.com/console/api-keys
Priority order:
1. `Authorization` header / `--api_key` flag
2. `ANYSEARCH_API_KEY` environment variable
3. `.env` file with `ANYSEARCH_API_KEY=<key>`
4. Anonymous access (lower rate limits)
Set environment variable:
```bash
export ANYSEARCH_API_KEY="your-api-key-here"
```
Or create `.env` file:
```
ANYSEARCH_API_KEY=your-api-key-here
```
## Available Tools
### `search` - General or Vertical Domain Search
Execute a search query. For vertical searches, you MUST call `list_domains` first.
**Parameters:**
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `query` | string | Yes | Search query (format depends on domain) |
| `domain` | string | No | Vertical domain (e.g., `finance`, `academic`) |
| `sub_domain` | string | No | Sub-domain routing key (required for vertical) |
| `sub_domain_params` | object | No | Extra params per sub_domain schema |
| `content_types` | array | No | Filter: `web`, `news`, `code`, `doc`, etc. |
| `zone` | string | No | `cn` or `intl` (required when sub_domain requires) |
| `max_results` | integer | No | 1-100, default 10 |
| `freshness` | string | No | `day`, `week`, `month`, `year` |
**General Web Search Example:**
```json
{
"query": "quantum computing breakthroughs 2025",
"max_results": 5,
"freshness": "month"
}
```
**Vertical Search Example (Stock):**
First, call `list_domains`:
```json
{
"domain": "finance"
}
```
Then use the discovered `sub_domain` and `query_format`:
```json
{
"query": "AAPL",
"domain": "finance",
"sub_domain": "finance.us_stock",
"max_results": 5
}
```
**News Search Example:**
```json
{
"query": "artificial intelligence",
"content_types": ["news"],
"freshness": "week",
"max_results": 10
}
```
**Academic Search Example:**
```json
{
"query": "10.1038/s41586-019-1666-5",
"domain": "academic",
"sub_domain": "academic.doi"
}
```
### `list_domains` - Query Vertical Domain Directory
**MUST be called before vertical search** to discover available sub_domains and their query formats.
**Parameters:**
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `domain` | string | One of | Single domain to query |
| `domains` | array | One of | Batch up to 5 domains |
**Single Domain Example:**
```json
{
"domain": "finance"
}
```
**Multiple Domains Example:**
```json
{
"domains": ["finance", "academic", "security"]
}
```
**Returns Markdown table with:**
- `sub_domain`: Routing key for search
- `description`: What the sub_domain searches
- `query_format`: Exact format required (e.g., raw ticker, DOI)
- `params_schema`: JSON schema for optional parameters
- `zone`: If `CN`, must set `zone: "cn"` in search
### `batch_search` - Parallel Search Execution
Execute 2-5 independent search queries in parallel. Single failure doesn't block others.
**Parameters:**
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `queries` | array | Yes | 1-5 query objects, each with same fields as `search` |
**Example:**
```json
{
"queries": [
{
"query": "AAPL",
"domain": "finance",
"sub_domain": "finance.us_stock"
},
{
"query": "python async http client",
"domain": "code",
"sub_domain": "code.general"
},
{
"query": "CVE-2024-1234",
"domain": "security",
"sub_domain": "security.cve"
}
]
}
```
### `extract` - URL Content Extraction
Fetch full page content from a URL and return as Markdown. HTML pages only, truncated at 50,000 characters.
**Parameters:**
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | Yes | Target URL (`http://` or `https://`) |
**Example:**
```json
{
"url": "https://en.wikipedia.org/wiki/Quantum_computing"
}
```
## Supported Domains
**23 vertical domains available:**
- `code` - Code repositories, packages, documentation
- `tech` - Technology news, products, reviews
- `fashion` - Fashion trends, brands, products
- `travel` - Flights, hotels, destinations
- `home` - Home improvement, furniture, decor
- `ecommerce` - Products, prices, reviews
- `gaming` - Games, platforms, news
- `film` - Movies, reviews, showtimes
- `music` - Songs, artists, albums
- `finance` - Stocks, crypto, markets, companies
- `academic` - Papers, patents, research
- `legal` - Laws, regulations, cases
- `business` - Companies, industries, markets
- `ip` - Patents, trademarks, copyrights
- `security` - CVEs, vulnerabilities, threats
- `education` - Courses, schools, materials
- `health` - Medical, wellness, drugs
- `religion` - Religious texts, organizations
- `geo` - Geographic data, maps, places
- `environment` - Climate, conservation, ecology
- `energy` - Energy sources, efficiency, policy
- `ugc` - User-generated content, forums
## Common Usage Patterns
### Pattern 1: General Web Search
When user asks an open-ended question:
```json
{
"query": "best practices for microservices architecture",
"max_results": 10
}
```
### Pattern 2: Recent News
When user wants current information:
```json
{
"query": "SpaceX launches",
"content_types": ["news"],
"freshness": "week",
GitHub에서 보기