Skip to main content
Glama
SearchAPI MCP Server

SearchAPI MCP Server

README.md
# searchapi-mcp

Model Context Protocol (MCP) server for searchapi.io API

## 简介

`searchapi-mcp` 是一个 Model Context Protocol (MCP) 服务器,它为 Claude 等 AI 助手提供了访问 searchapi.io API 的能力。通过这个工具,AI 助手可以搜索 Google 地图、航班、酒店等信息。

## 功能

- 搜索 Google 地图上的地点或服务
- 搜索 Google 航班信息
- 搜索 Google 酒店信息
- 搜索 Google 地图评论
- 查询 Google 酒店详细信息
- 查询 Google 航班日历价格
- 获取当前系统时间和旅行日期建议
- 搜索 Google 搜索结果
- 搜索 Google 视频结果

## 安装

```bash
npm install -g searchapi-mcp
```

## 使用

### 环境变量

在使用之前,你需要设置 `SEARCHAPI_API_KEY` 环境变量:

```bash
export SEARCHAPI_API_KEY="your_api_key"
```

### 命令行使用

```bash
# 使用 stdio 传输启动服务器
searchapi-mcp

# 显示帮助信息
searchapi-mcp --help

# 显示版本信息
searchapi-mcp --version

# 指定传输类型
searchapi-mcp --transport stdio
```

### 在 Claude Desktop 中使用

在 `claude_desktop_config.json` 中添加以下配置:

```json
{
  "mcpServers": {
    "searchapi": {
      "command": "npx",
      "args": [
        "-y",
        "searchapi-mcp"
      ],
      "env": {
        "SEARCHAPI_API_KEY": "your_api_key",
        "MCP_TRANSPORT": "stdio"
      }
    }
  }
}
```

## 工具函数

### search_google_maps

搜索 Google 地图上的地点或服务。

参数:
- `query`:搜索查询
- `location_ll`(可选):位置坐标,格式为"纬度,经度"

### search_google_flights

搜索 Google 航班信息。

必填参数:
- `departure_id`:出发地 ID
- `arrival_id`:目的地 ID
- `outbound_date`:出发日期
- `flight_type`:航班类型(默认:round_trip)

对于往返航班(round_trip),还需要:
- `return_date`:返程日期

### search_google_hotels

搜索 Google 酒店信息。

必填参数:
- `q`:搜索查询
- `check_in_date`:入住日期
- `check_out_date`:退房日期

### search_google_maps_reviews

搜索 Google 地图上的评论数据。

必填参数(二选一):
- `place_id`:地点 ID
- `data_id`:数据 ID

### search_google_hotels_property

查询 Google 酒店详细信息。

必填参数:
- `property_token`:物业令牌
- `check_in_date`:入住日期
- `check_out_date`:退房日期

### search_google_flights_calendar

查询 Google 航班日历价格。

必填参数:
- `flight_type`:航班类型
- `departure_id`:出发地 ID
- `arrival_id`:目的地 ID
- `outbound_date`:出发日期

对于往返航班(round_trip),还需要:
- `return_date`:返程日期

### get_current_time

获取当前系统时间和旅行日期建议。

参数:
- `format`(可选):日期格式(默认:iso)
- `days_offset`(可选):日期偏移量(默认:0)
- `return_future_dates`(可选):是否返回未来日期(默认:false)
- `future_days`(可选):未来天数(默认:7)

### search_google

搜索 Google 搜索结果。

必填参数:
- `q`:搜索查询

### search_google_videos

搜索 Google 视频结果。

必填参数:
- `q`:搜索查询

## 致谢

本项目是基于 [RmMargt/searchAPI-mcp](https://github.com/RmMargt/searchAPI-mcp) Python 版本改编的 Node.js 实现。特别感谢 RmMargt 提供的原始 Python 实现和设计思路。

同时感谢:
- Model Context Protocol - 提供协议规范
- searchapi.io - 提供搜索服务 API

## 许可证

MIT 

TDQS

D1.8/5.0

Scored across 9 tools

Disambiguation3/5

Most tools are clearly distinct by their target resource (flights, hotels, maps, videos), but there is some ambiguity between search_google_flights and search_google_flights_calendar, and between search_google_hotels and search_google_hotels_property, which could cause confusion about when to use each. The get_current_time tool stands out as unrelated to the search domain, creating a minor disjunction.

Naming Consistency5/5

All tool names follow a consistent snake_case pattern with a clear verb_noun structure, primarily using 'search_google_' as a prefix for most tools. This predictability makes it easy for an agent to understand and navigate the tool set without confusion over naming conventions.

Tool Count4/5

With 9 tools, the count is reasonable for a search-focused API, though it feels slightly heavy due to the inclusion of get_current_time, which doesn't align with the core domain. The search tools are well-scoped, but the outlier tool slightly reduces the appropriateness.

Completeness3/5

The tool set covers various Google search domains (flights, hotels, maps, videos) but has notable gaps: there is no general web search tool (search_google is present but ambiguous without a description), and coverage is inconsistent (e.g., flights and hotels have multiple tools, while videos has only one). This may lead to agent failures for common search queries outside the specified categories.