mcpField
S
search

search

远程服务
aimnis.com搜索与检索012 周前更新

关于 search

Aimnis 是面向编码 Agent 的开源、缓存优先型网页搜索网关。它从共享的实时网页池返回简洁且带引用的答案;语义缓存未命中时执行搜索,并在结果通过质量检查后纳入共享池。

主要功能

  1. 01基于共享搜索池的语义缓存
  2. 02缓存未命中时搜索实时网页
  3. 03简洁且带来源引用的答案
  4. 04答案入池前进行质量检查
  5. 05密钥和电子邮件脱敏
  6. 06答案来源与新鲜度信息

适用场景

  1. 01查询最新 API 和库版本
  2. 02复用此前搜索的引用答案
  3. 03搜索时避免存储含密钥的查询
  4. 04自托管共享搜索网关

MCP 相关

通过托管远程 MCP 服务或本地 stdio 服务提供 search 和 stats 工具。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://aimnis.com/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

全部服务地址
Streamable HTTPhttps://aimnis.com/mcp需要授权

工具

详细介绍

Aimnis

面向 Agent 的协作式搜索

搜索一次,人人受益。 一个开源、缓存优先的 Web 搜索网关,专为编码 Agent 打造:提出问题,即可从共享且持续更新的知识池中即时获得经过提炼、附有来源引用的答案——每次搜索都会让知识池变得更智能,让所有人的搜索成本更低。就像 RAG,但使用的是共享的实时 Web 知识池,而不是过时的个人文档。

状态:公开预览。 托管服务已上线——在 aimnis.com 获取免费评估密钥,并在一分钟内将 Agent 接入服务 (按 Agent 配置)。我们正在公开验证一件事——随着知识池不断扩大,缓存命中率会不断提升(飞轮效应,实时仪表板)。欢迎关注。

为什么

每个模型都有训练数据截止日期。模型一经发布,世界就会继续变化——新的库版本、新的 API、新的错误——如果不针对每个问题搜索实时 Web,模型就无法跟上。这种方式既慢又昂贵,而且因服务提供商而异。

Aimnis 是位于前端的共享、持续更新层:Agent 检查的第一站。提出问题;如果这个问题(或语义相似的问题)以前有人问过,你就能以近乎零成本即时获得经过提炼、附有来源引用的答案。如果没人问过,Aimnis 就会实时获取答案、提炼内容并将其加入知识池——这样下一个提出相同问题的 Agent 就能免费获得答案。这个语料库记录了每个模型训练数据截止日期之后发生的事情,而静态训练集无法做到这一点。

工作原理

query
  └─ scrub secrets/PII (redacted before embed, search, distill, or storage)
       └─ local embed + normalize
            └─ semantic cache lookup (exact hash → vector nearest-neighbour)
                 ├─ HIT  → return the pooled, cited answer instantly (no upstream cost)
                 └─ MISS → live search → distill into a cited answer → quality-gate → pool it
  • 缓存优先。 知识池本身就是语义缓存(pgvector)。改写后的问题也能命中同一条记录,因此知识池的增长速度比精确匹配更快。
  • 有依据且带引用的答案。 未命中时,会将实时网络搜索结果提炼成简短答案,并附上指向来源的 [n] 引用,而不是原始链接。答案由模型提炼来源生成,属于 AI 生成内容,并会在工具输出中标明,让 Agent 始终知道自己读取的是机器撰写的摘要。
  • 默认提供来源信息和时效性。 每个答案都附带模型、来源和缓存时间戳(答案生成或最近一次重新提炼的时间,而非最近一次提供的时间),以及相对时长,让 Agent(以及我们自己的排序系统)能够评估内容是否过时,并决定何时升级为实时搜索。
  • 可为带引用的链接配置路由,以获取相关性信号(自愿启用,仅收集汇总数据)。 启用后,引用来源链接会指向带签名的 /r/… 重定向地址,记录是哪条池中答案促成了后续访问,然后转发到来源——点击率由此用于改进排序。来源的实际主机名会内联显示,因此 Agent 仍能看到链接的去向;日志仅记录条目 + 来源 + 主机名 + 时间——绝不记录 IP、user-agent 或任何用户/会话 ID。这是针对知识池的遥测,而非针对你的追踪。除非配置了签名密钥,否则该功能默认关闭;令牌使用 HMAC 签名(因此 /r 无法被滥用为开放重定向器);自托管时,重定向会指向你自己的网关,因此点击记录留在你的设备上。
  • 注重隐私的输入处理。 常见的机密格式(API 密钥、令牌、私钥、连接字符串)和电子邮件地址会在查询嵌入、发送给搜索/LLM 提供商或加入知识池之前进行脱敏;包含大量机密信息的查询仅进行实时处理,绝不存储。这是基于格式的高精度清理,并辅以熵检测——它能识别已知格式,但无法涵盖所有可能的机密信息或个人身份信息,因此应将其视为纵深防御,而非保证。处理流程开源,正是为了让你能够审查并扩展它。**运行位置:**自托管时,清理会在本地进行,因此原始文本永远不会离开你的设备。使用托管网关时,查询会通过 TLS 发送,并在入口处进行清理(在内存中、任何提供商调用或持久化之前)——如果你需要在查询离开设备前完成脱敏,请选择自托管,或以本地模式运行本地 MCP 服务。
  • 质量门控的知识池。 提炼后的答案必须通过质量门槛,才能进入知识池;质量不佳的答案会降级为原始片段,而不会污染共享知识池。

飞轮效应

决定这套方案是否有效的唯一指标是:缓存命中率与语料库规模的关系。 如果知识池增长时命中率也随之上升,那么这一设想就成立。从第一天起,这项指标就会公开——让信任变得可衡量。

# run the live dashboard locally (see Quickstart)
aimnis-dashboard      # → http://127.0.0.1:8080   (hit-rate curve, corpus size, storage)

与编码 Agent 搭配使用

Aimnis 使用 MCP,因此任何支持 MCP 的 Agent 都可以将其用作网络搜索工具。托管端点意味着无需安装任何东西:

  1. 在 aimnis.com/register 获取免费的评估密钥 (通过电子邮件发送;按使用量计费,可撤销,参见条款)。
  2. 将远程 MCP 服务添加到你的 Agent:
URL:     https://aimnis.com/mcp          (MCP, streamable HTTP)
Header:  Authorization: Bearer aim_YOUR_KEY

Claude Code

claude mcp add --transport http aimnis https://aimnis.com/mcp \
    --header "Authorization: Bearer aim_YOUR_KEY"

然后,要让模型优先使用 Aimnis,而非内置工具,请在 .claude/settings.json 中禁用 WebSearch:

{ "permissions": { "deny": ["WebSearch"] } }

OpenCode、OpenClaw、Hermes、Pi、REST — 在 aimnis.com/setup 和 docs/mcp.md 中复制并粘贴配置片段, 并参阅 search / stats 工具参考。注册时使用你自己的 OpenRouter/搜索密钥,这样缓存未命中时就会使用你的配额——可获得高得多的限额。

想改为自托管?同一个 MCP 服务可以通过 stdio 在本地运行,并使用你自己的知识池——请参阅快速入门和 docs/mcp.md。

快速开始(开发)

cd server
docker compose up -d                    # Postgres+pgvector (:5432)
# want the keyless search path too? add SearXNG (:8888):
#   docker compose --profile keyless up -d
uv venv .venv && . .venv/bin/activate
uv pip install -e ".[dev]"              # editable install (required — see docs)
python -m aimnis.migrate                # apply migrations/*.sql
cp .env.example .env                    # then fill in keys if you have them
pytest                                  # full suite against the compose DB

没有 OpenRouter 密钥?没关系——Aimnis 可无密钥运行(通过 SearXNG),并返回带引用的原始片段,不消耗任何上游配额。添加 AIMNIS_OPENROUTER_API_KEY 即可启用提炼。实时搜索采用有序回退链——Brave → Tavily → Exa → SearXNG——因此设置 AIMNIS_BRAVE_API_KEY / AIMNIS_TAVILY_API_KEY / AIMNIS_EXA_API_KEY 中的任意一个,都能获得更可靠的结果;某个免费层额度用尽后,会自动切换到下一个。组件概览请参阅 server/README.md。

许可

代码是开源的。语料库是经过策划整理的汇编,按汇编作品授权。

部分许可
服务端核心(server/)AGPLv3 — 网络 copyleft;运行修改后的服务时,需分享你的更改
SDK 和 MCP 客户端(clients/)Apache-2.0 — 可嵌入任何产品,包括商业产品
公开知识池页面CC-BY-NC 4.0 适用于我们的汇编作品(策划、结构、呈现)

**坦诚说明知识池内容:**知识池中的答案由第三方模型根据第三方网页结果提炼而成。我们不主张拥有底层事实或上游模型输出的所有权——CC-BY-NC 适用于我们的汇编作品,任何再利用也仍须遵守原始来源和模型提供商的条款。凡提供商条款要求排除的输出,均不会用于再分发或未来的训练数据供稿;提供商要求的署名也会一并保留。训练数据供稿在飞轮得到验证之前不在范围内(见路线图)——本仓库不提供训练数据许可。

反滥用阈值(清理 / 去重 / 质量调优)随安全的示例默认值一同发布;生产环境中的值由部署时注入,不属于此代码库——因此,公开规则集不会让投毒者有机可乘。

状态与路线图

路线图分阶段设门槛,从 Gate 0 到 Gate 4。Gate 0 已完成(服务条款审计、细分领域、命名和许可均已敲定)。Gate 1 进行中——网关、语义缓存和公开飞轮仪表板均已构建并经过内部试用;通过 / 终止测试的标准是命中率曲线是否开始上扬。在飞轮得到验证之前,广告、计费、社区计算和训练数据供稿均明确不在范围内。

评论

支持 Markdown

第一次接触 MCP?

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

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