Skip to main content
Glama
lianshuang-photo

SearchAPI MCP Server

searchapi-mcp

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

简介

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

Related MCP server: Scrapeless MCP Server

功能

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

  • 搜索 Google 航班信息

  • 搜索 Google 酒店信息

  • 搜索 Google 地图评论

  • 查询 Google 酒店详细信息

  • 查询 Google 航班日历价格

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

  • 搜索 Google 搜索结果

  • 搜索 Google 视频结果

安装

npm install -g searchapi-mcp

使用

环境变量

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

export SEARCHAPI_API_KEY="your_api_key"

命令行使用

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

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

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

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

在 Claude Desktop 中使用

claude_desktop_config.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 Python 版本改编的 Node.js 实现。特别感谢 RmMargt 提供的原始 Python 实现和设计思路。

同时感谢:

  • Model Context Protocol - 提供协议规范

  • searchapi.io - 提供搜索服务 API

许可证

MIT

Available Tools

9 tools
get_current_timeD
ParametersJSON Schema
NameRequiredDescriptionDefault
formatNo日期格式iso
days_offsetNo日期偏移量0
return_future_datesNo是否返回未来日期false
future_daysNo未来天数7

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_googleD
ParametersJSON Schema
NameRequiredDescriptionDefault
qYes搜索查询
deviceNo设备类型desktop
locationNo位置
uuleNo位置编码
google_domainNoGoogle域名google.com
glNo地理位置us
hlNo语言en
lrNo语言限制
crNo国家限制
nfprNo不进行拼写检查0
filterNo过滤结果1
safeNo安全搜索off
time_periodNo时间段
time_period_minNo最小时间段
time_period_maxNo最大时间段
numNo结果数量10
pageNo页码1

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_google_flightsD
ParametersJSON Schema
NameRequiredDescriptionDefault
departure_idYes出发地ID
arrival_idYes目的地ID
outbound_dateYes出发日期
flight_typeNo航班类型round_trip
return_dateNo返程日期
glNo地理位置
hlNo语言
currencyNo货币
travel_classNo舱位等级
stopsNo中转次数
sort_byNo排序方式
adultsNo成人数量
childrenNo儿童数量
multi_city_jsonNo多城市行程JSON
show_cheapest_flightsNo显示最便宜航班
show_hidden_flightsNo显示隐藏航班
max_priceNo最高价格
carry_on_bagsNo随身行李
checked_bagsNo托运行李
included_airlinesNo包含的航空公司
excluded_airlinesNo排除的航空公司
outbound_timesNo出发时间范围
return_timesNo返程时间范围
emissionsNo排放量
included_connecting_airportsNo包含的中转机场
excluded_connecting_airportsNo排除的中转机场
layover_duration_minNo最短中转时间
layover_duration_maxNo最长中转时间
max_flight_durationNo最长飞行时间
separate_ticketsNo分开的机票
infants_in_seatNo占座婴儿数量
infants_on_lapNo不占座婴儿数量
departure_tokenNo出发令牌
booking_tokenNo预订令牌

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_google_flights_calendarD
ParametersJSON Schema
NameRequiredDescriptionDefault
flight_typeYes航班类型
departure_idYes出发地ID
arrival_idYes目的地ID
outbound_dateYes出发日期
return_dateNo返程日期
outbound_date_startNo出发日期开始
outbound_date_endNo出发日期结束
return_date_startNo返程日期开始
return_date_endNo返程日期结束
glNo地理位置
hlNo语言
currencyNo货币
adultsNo成人数量
childrenNo儿童数量
travel_classNo舱位等级
stopsNo中转次数

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_google_hotelsD
ParametersJSON Schema
NameRequiredDescriptionDefault
qYes搜索查询
check_in_dateYes入住日期
check_out_dateYes退房日期
glNo地理位置
hlNo语言
currencyNo货币
property_typeNo物业类型
sort_byNo排序方式
price_minNo最低价格
price_maxNo最高价格
property_typesNo物业类型列表
amenitiesNo设施
ratingNo评分
free_cancellationNo免费取消
special_offersNo特别优惠
for_displaced_individualsNo为流离失所的个人
eco_certifiedNo生态认证
hotel_classNo酒店等级
brandsNo品牌
bedroomsNo卧室数量
bathroomsNo浴室数量
adultsNo成人数量
children_agesNo儿童年龄
next_page_tokenNo下一页令牌

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_google_hotels_propertyD
ParametersJSON Schema
NameRequiredDescriptionDefault
property_tokenYes物业令牌
check_in_dateYes入住日期
check_out_dateYes退房日期
glNo地理位置
hlNo语言
currencyNo货币
adultsNo成人数量
childrenNo儿童数量
children_agesNo儿童年龄

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_google_mapsD
ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes搜索查询
location_llNo位置坐标,格式为"纬度,经度"

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_google_maps_reviewsD
ParametersJSON Schema
NameRequiredDescriptionDefault
place_idNo地点ID
data_idNo数据ID
topic_idNo主题ID
next_page_tokenNo下一页令牌
sort_byNo排序方式
ratingNo评分
hlNo语言
glNo地理位置
reviews_limitNo评论数量限制

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_google_videosD
ParametersJSON Schema
NameRequiredDescriptionDefault
qYes搜索查询
deviceNo设备类型desktop
locationNo位置
uuleNo位置编码
google_domainNoGoogle域名google.com
glNo地理位置us
hlNo语言en
lrNo语言限制
crNo国家限制
nfprNo不进行拼写检查0
filterNo过滤结果1
safeNo安全搜索off
time_periodNo时间段
time_period_minNo最小时间段
time_period_maxNo最大时间段
numNo结果数量10
pageNo页码1

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 9 tool updates
    • First observedget_current_time
    • First observedsearch_google
    • First observedsearch_google_flights
    • First observedsearch_google_flights_calendar
    • First observedsearch_google_hotels
    • First observedsearch_google_hotels_property
    • First observedsearch_google_maps
    • First observedsearch_google_maps_reviews
    • First observedsearch_google_videos

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.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    A
    maintenance
    A Model Context Protocol server that provides Google Maps API integration, allowing users to search locations, get place details, geocode addresses, calculate distances, obtain directions, and retrieve elevation data through LLM processing capabilities.
    7
    504
    450
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol (MCP) based search API server that provides standardized access to Google Maps, Google Flights, Google Hotels and other services. This server enables AI assistants to access various search services through a unified interface.
    73
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol server that enables AI assistants to perform web searches using Google Search API, returning up to 20 search results in JSON format.
    2
    Apache 2.0