Search

io.github.aimnis由 GitHub 账号 aimnis 发布v0.1.0更新于 Oct 24, 2026

Collaborative, cache-first web search for agents — cited answers from a shared live-web pool.

已验证Streamable HTTP可网页运行网页搜索与抓取知识与记忆

概览

AI 生成的概览

远程、缓存优先的网页搜索网关,为编码代理提供来自共享实时网页池的、带来源引用的提炼答案。

可以做什么
  • 提出问题即可获得带来源引用的提炼答案;若相似问题曾被问过,会直接从共享语义缓存中即时返回。
  • 缓存未命中时实时检索网页,将结果提炼为简短带引用的答案,经质量校验后加入知识池。
  • 每个答案附带来源信息与新鲜度:所用模型、来源、缓存时间戳及相对时长。
  • 通过统计工具查看缓存命中率、语料规模等知识池指标。
适用场景
适合编码代理需要训练截止日期之后的信息(新库版本、新 API、新报错)时使用,希望得到快速、低成本且带引用的答案而非原始链接。也适合已有网页搜索工具、希望借助共享缓存降低开销的代理。
运行要求
远程 streamable HTTP 端点,无需安装。需要在 Authorization 请求头中提供 bearer 令牌,可通过在提供方网站注册获取免费评估密钥(邮件发送)。注册时可选自带 OpenRouter 或搜索服务商密钥以获得更高额度。
安装前请注意
查询会经 TLS 发送给第三方托管服务并在入口处脱敏;除非自行部署,脱敏发生在查询离开本机之后。脱敏基于格式与熵检测,无法保证不泄露密钥或个人信息。答案为第三方模型基于第三方网页生成的 AI 摘要,使用前应核实。引用链接的可选点击遥测会记录条目、来源、主机与时间。评估密钥按量计费且可被吊销。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Search,将其添加到工作区。
  2. 连接 Authorization token 凭据。它们会被私密存储,绝不会在公开页面上展示。
  3. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.aimnis%2Fsearch/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "search": {
      "type": "http",
      "url": "https://aimnis.com/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_TOKEN>"
      }
    }
  }
}

README

Aimnis

Collaborative Search for Agents

Search once. Answer everyone. An open-source, cache-first web-search gateway for coding agents: ask a question and get a distilled, source-cited answer instantly from a shared, always-current knowledge pool — so every search makes the pool smarter and cheaper for everyone. Like RAG, but over a communal live-web pool, not your stale private docs.

Status: public preview. The hosted service is live — get a free eval key at aimnis.com and point your agent at it in one minute (per-agent setup). We're proving one thing in public — that the cache hit rate compounds as the pool grows (the flywheel, live dashboard). Follow along.

Why

Every model has a training cutoff. The moment it ships, the world moves on — new library versions, new APIs, new errors — and the model can't keep up without searching the live web on every question. That's slow, expensive, and per-vendor.

Aimnis is the shared, always-current layer in front of that: the first thing an agent checks. Ask a question; if it (or a semantically similar one) has been asked before, you get a distilled, source-cited answer instantly for near-zero cost. If it hasn't, Aimnis fetches it live, distills it, and adds it to the pool — so the next agent to ask gets it free. The corpus captures what happened after every model's cutoff, which no static training set can.

How it works

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
  • Cache-first. The knowledge pool is the semantic cache (pgvector). A reworded question hits the same entry, so the pool compounds faster than exact matching would.
  • Grounded, cited answers. Misses are distilled from live web results into a short answer with [n] citations back to sources — not raw links. The answer is AI-generated (a model distills the sources) and labeled as such in the tool output, so the agent always knows it's reading a machine-written summary.
  • Provenance & freshness by default. Every answer carries its model, sources, and a cache timestamp (when the answer was produced or last re-distilled — not when it was last served), plus a relative age, so the agent (and our own ranking) can weigh staleness and decide when to escalate to live search.
  • Cited links can be routed for a relevance signal (opt-in, aggregate-only). When enabled, a cited source link points at a signed /r/… redirect that logs which pooled answer earned a follow-through, then forwards to the source — this is how click-through improves ranking. The source's real host is shown inline so the agent still sees where it's going, and the log records only entry + source + host + time — never IP, user-agent, or any user/session id. It's telemetry on the pool, not on you. It's off unless a signing secret is configured, tokens are HMAC-signed (so /r can't be abused as an open redirector), and self-hosting points the redirect at your own gateway — so clicks stay on your box.
  • Privacy-conscious ingress. Common secret formats (API keys, tokens, private keys, connection strings) and emails are redacted before a query is embedded, sent to a search/LLM provider, or pooled; secret-dense queries are served live-only and never stored. This is high-precision format-based scrubbing plus an entropy pass — it catches known shapes, not every possible secret or PII, so treat it as defense-in-depth, not a guarantee. The pipeline is open source precisely so you can audit and extend it. Where it runs: self-hosted, scrubbing happens locally, so raw text never leaves your machine. Against the hosted gateway, the query is sent over TLS and scrubbed on ingress (in memory, before any provider call or persistence) — if you need redaction to happen before the query leaves your machine, self-host or run the local MCP server in local mode.
  • Quality-gated pool. A distilled answer must pass a quality gate before it can enter the pool — a bad answer degrades to raw snippets rather than poisoning the commons.

The flywheel

The one metric that decides whether this works: cache hit rate vs. corpus size. If it climbs as the pool grows, the thesis holds. It's public from day one — trust, made measurable.

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

Use it with your coding agent

Aimnis speaks MCP, so any MCP-capable agent can use it as its web-search tool. The hosted endpoint means nothing to install:

  1. Get a free eval key at aimnis.com/register (delivered by email; metered, revocable, terms).
  2. Add the remote MCP server to your agent:
URL:     https://aimnis.com/mcp          (MCP, streamable HTTP)Header:  Authorization: Bearer aim_YOUR_KEY

Claude Code

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

Then, to make the model prefer Aimnis over the built-in tool, deny WebSearch in .claude/settings.json:

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

OpenCode, OpenClaw, Hermes, Pi, REST — copy-paste snippets at aimnis.com/setup and in docs/mcp.md, plus the search / stats tool reference. Bring your own OpenRouter/search keys at registration and your cache misses run on your quota — with much higher limits.

Self-hosting instead? The same MCP server runs locally over stdio against your own pool — see Quickstart and docs/mcp.md.

Quickstart (dev)

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

No OpenRouter key? Fine — Aimnis runs keyless (via SearXNG) and returns raw cited snippets, spending zero upstream quota. Add AIMNIS_OPENROUTER_API_KEY to turn on distillation. Live search is an ordered fallback chain — Brave → Tavily → Exa → SearXNG — so setting any of AIMNIS_BRAVE_API_KEY / AIMNIS_TAVILY_API_KEY / AIMNIS_EXA_API_KEY gives more reliable results, and a free tier that runs dry rolls onto the next automatically. See server/README.md for the component map.

Licensing

The code is open. The corpus is a curated compilation, licensed as such.

PartLicense
Server core (server/)AGPLv3 — network copyleft; run a modified service, share your changes
SDKs & MCP client (clients/)Apache-2.0 — embed anywhere, including commercial products
Public knowledge-pool pagesCC-BY-NC 4.0 applies to our compilation (curation, structure, presentation)

On the pool's contents, honestly: pooled answers are distilled by third-party models from third-party web results. We don't claim ownership of the underlying facts or of upstream model outputs — CC-BY-NC covers our compilation, and any reuse also remains subject to the terms of the original sources and the model providers. Some provider outputs are excluded from redistribution and from any future training-data feed wherever provider terms require it, and provider-mandated attributions are carried through. A training-data feed is out of scope until the flywheel is proven (see roadmap) — this repo makes no offer to license training data.

Anti-abuse thresholds (scrubbing/dedup/quality tuning) ship with safe example defaults; production values are injected at deploy and are not part of this tree — so publishing the ruleset doesn't hand it to poisoners.

Status & roadmap

Gated roadmap, Gate 0 → Gate 4. Gate 0 complete (ToS audit, niche, naming, licensing locked). Gate 1 in progress — gateway + semantic cache + public flywheel dashboard are built and dogfooded; the pass/kill test is the hit-rate curve bending upward. Ads, billing, community compute, and the training-data feed are explicitly out of scope until the flywheel is proven.

来源:README.md,提交 2c3c44c

工具

0
SourceWeft 尚未读取此服务器的工具。

版本历史

1
  1. v0.1.0最新Sep 16, 2026

评分

已满足适用检查项的 85%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分