mcpField
M
mcp-exa

mcp-exa

本地服务
github.com/daedalus搜索与检索027 周前更新

关于 mcp-exa

mcp-exa 是面向需要 Exa 搜索能力的客户端的 Python MCP 服务,可搜索网页、查找代码示例并获取 URL 内容。它使用 Exa 公共 MCP 端点,无需 API 密钥。

主要功能

  1. 01网页搜索
  2. 02带筛选条件的高级搜索
  3. 03查找代码上下文
  4. 04获取 URL 内容

适用场景

  1. 01搜索某个主题的信息
  2. 02查找 GitHub 或 Stack Overflow 代码示例
  3. 03获取指定 URL 的完整内容

MCP 相关

通过网页搜索、高级搜索、代码上下文查询和 URL 抓取这四种工具,向 MCP 客户端提供 Exa 搜索能力。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"daedalus-mcp-exa": {
"command": "uvx",
"args": [
"mcp-exa"
]
}
}
}
启动命令uvx mcp-exa

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypimcp-exa0.1.1

工具

9

收录的工具列表 · 更新于 2 周前

参数类型必填说明
typeany否搜索类型——'auto'、'fast'、'deep'、'deep-reasoning' 或 'instant'。
flagsany否用于 Exa 的实验性标志。
querystring是搜索查询字符串。
categoryany否要聚焦的数据类别(例如,'company'、'news'、'research_paper')。
contentsany否用于获取页面内容的选项。使用 False 可禁用。
moderationany否如果为 True,则对搜索结果进行安全审核。
num_resultsany否要返回的搜索结果数量(默认值:10)。
exclude_textany否页面文本中不得出现的字符串。
include_textany否页面文本中必须出现的字符串。
output_schemaany否深度搜索结构化输出的 JSON 架构。
user_locationany否用户所在位置的两字母 ISO 国家/地区代码。
end_crawl_dateany否仅包含在此日期(YYYY-MM-DD)之前抓取的链接。
exclude_domainsany否搜索时要排除的域名。
include_domainsany否搜索时要包含的域名。
start_crawl_dateany否仅包含在此日期(YYYY-MM-DD)之后爬取的链接。
additional_queriesany否用于深度搜索的替代查询表述。
end_published_dateany否仅包含在此日期(YYYY-MM-DD)之前发布的链接。
start_published_dateany否仅包含在此日期(YYYY-MM-DD)之后发布的链接。

详细介绍

MCP Exa

一个 Python MCP 服务,可提供 Exa 搜索功能(无需 API 密钥)

PyPI Python Coverage Ruff

mcp-name: io.github.daedalus/mcp-exa

安装

pip install mcp-exa

使用

无需 API 密钥。该服务使用 Exa 的公共 MCP 端点。

运行 MCP 服务:

mcp-exa

或作为模块使用:

python -m mcp_exa

配置

可用工具

该服务提供以下 MCP 工具:

工具描述
web_search_exa搜索任意主题的网页
get_code_context_exa从 GitHub、Stack Overflow 查找代码示例
crawling_exa获取特定 URL 的完整内容
web_search_advanced_exa使用筛选条件进行高级搜索

MCP 客户端配置

Claude Desktop

将以下内容添加到配置文件中:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "exa": {
      "command": "mcp-exa"
    }
  }
}
OpenCode

将以下内容添加到 opencode.json:

{
  "mcp": {
    "exa": {
      "type": "stdio",
      "command": "mcp-exa",
      "enabled": true
    }
  }
}

开发

git clone https://github.com/daedalus/mcp-exa.git
cd mcp-exa
pip install -e ".[test]"

# run tests
pytest

# format
ruff format src/ tests/

# lint
ruff check src/ tests/

# type check
mypy src/

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。