Skip to main content
Glama
eason4kim-rocket

annolux-mcp

⚡ Annolux

面向 AI Agent 与 RAG 系统的英文和中文精选搜索 API 与 MCP

搜索有据可查。每条结果都带有明确的 fetched_at 时间戳和溯源信息。

Go Version NPM Version MCP Protocol License Free Tier

🌐 网站 • 📖 API 文档 • ⚡ MCP 快速入门 • 📊 冻结基准测试 • 📁 示例 • 🇨🇳 中文文档


💡 为什么选择 Annolux?

当前面向 AI Agent 的网络搜索 API 存在三个致命缺陷:

  1. 垃圾进,垃圾出:商业搜索引擎收录了数百万的 SEO 农场、抓取的垃圾内容和自动生成的噪声,污染了 LLM 的上下文窗口。

  2. 缺少时间溯源:LLM 会凭空捏造最新状态,因为搜索 API 省略了精确的快照时间戳(fetched_at)。

  3. 掠夺式计费:失败的请求、空输出或被限流后的重试都要按全额付费。

Annolux 通过一套 Agent 优先的精选方案解决了这些问题:

  • 🛡️ 精选双语技术索引:高信号的中英文语料库(Rust、Go、Python、AI/ML、官方文档、RFC、GitHub、arXiv)。

  • 🕒 显式 fetched_at 时间戳:每一条被排序命中的结果都会显示它被收录的精确时刻——从而实现有据可依的引用和时序推理。

  • 🎯 可预测的积分计费:每次成功的 2xx 响应恰好消耗 1 个积分;错误、超时(504)、限流(429)和错误请求消耗 0 积分。

  • 🧩 本地原生 Model Context Protocol (MCP):在 Claude Code、Cursor、Windsurf、Cline、Zed 和 Claude Desktop 中零配置可用。

  • 🚀 1,000 个永久免费积分:在 annolux.com 使用 GitHub 或 Google 登录,30 秒内即可开始查询。


Related MCP server: agent-web-search-mcp

🥊 对比:Annolux 与通用搜索 API

功能 / 指标

Annolux

Exa (Metaphor)

Tavily

Serper / Google

索引质量

精选技术 & 知识(EN/ZH)

全网神经搜索

全网聚合器

全网(含噪声 SEO)

中文(ZH)技术语料

顶级原生双语 FTS

一般

较弱 / 依赖翻译

与内容农场混杂

明确快照时间戳

✅ 每条结果都带 fetched_at

❌ 不一致

❌ 缺失

❌ 仅摘要近似

计费保证

✅ 仅在 2xx 成功时扣 1 积分

按请求计费

按请求计费

按请求计费

失败 / 超时查询

0 积分

❌ 照常计费

❌ 照常计费

❌ 照常计费

MCP 工具暴露面

单一精简 search_web(token 消耗最小)

多个冗余工具

多步骤工具

需自定义桥接

域名限定

✅ 精确宿主过滤(domains)

✅ 支持

✅ 支持

site: 查询受限

免费初始级

1,000 个永久积分

有限试用

1,000 / 月

2,500 一次性


📦 快速安装

方式一:NPX(MCP 与 CLI 最快入门)

# Run instantly via Node.js (zero installation)
npx -y annolux-mcp -key ann_live_YOUR_API_KEY

方式二:Go CLI 与服务器

go install github.com/eason4kim-rocket/annolux/cmd/annolux-mcp@latest

方式三:预编译多平台二进制

从 GitHub Releases 下载独立二进制:

  • linux-amd64 / linux-arm64

  • darwin-amd64(Intel Mac)/ darwin-arm64(Apple Silicon M 系列)


🔌 MCP 集成

Annolux 实现了官方 Model Context Protocol(MCP) 规范,并提供一个高效单一工具:search_web。

1. Claude Code

claude mcp add annolux npx -y annolux-mcp -- -key ann_live_YOUR_API_KEY

2. Cursor / Windsurf

将以下内容添加到项目的 .cursor/mcp.json 或全局配置中:

{
  "mcpServers": {
    "annolux": {
      "command": "npx",
      "args": ["-y", "annolux-mcp", "-key", "ann_live_YOUR_API_KEY"]
    }
  }
}

3. Claude Desktop

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

{
  "mcpServers": {
    "annolux": {
      "command": "annolux-mcp",
      "env": {
        "ANNOLUX_API_URL": "https://api.annolux.com",
        "ANNOLUX_API_KEY": "ann_live_YOUR_API_KEY"
      }
    }
  }
}

🚀 HTTP API 快速上手

标准搜索端点

POST https://api.annolux.com/api/v1/search
Authorization: Bearer ann_live_YOUR_API_KEY
Content-Type: application/json
{
  "query": "tokio async runtime memory model",
  "domains": ["tokio.rs", "docs.rs", "github.com"],
  "deduplicate": true,
  "limit": 5,
  "timeout": 10,
  "ranking": "default"
}

Python

import os
import requests

response = requests.post(
    "https://api.annolux.com/api/v1/search",
    headers={"Authorization": f"Bearer {os.environ.get('ANNOLUX_API_KEY')}"},
    json={
        "query": "DeepSeek R1 architecture reinforcement learning",
        "limit": 5,
        "deduplicate": True
    },
    timeout=15
)

data = response.json()
for result in data.get("results", []):
    print(f"[{result['fetched_at']}] {result['title']} -> {result['url']}")

TypeScript / Node.js

const res = await fetch("https://api.annolux.com/api/v1/search", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.ANNOLUX_API_KEY}`,
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    query: "vLLM PagedAttention implementation details",
    limit: 5,
    deduplicate: true
  })
});

const data = await res.json();
console.log(`Credits Remaining: ${res.headers.get("X-Annolux-Credits-Remaining")}`);
console.log(data.results);

cURL

curl -s -X POST https://api.annolux.com/api/v1/search \
  -H "Authorization: Bearer ann_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "Go sync.Pool benchmark best practices",
    "limit": 3
  }' | jq .

🏛️ 架构与原理

┌─────────────────────────────────────────────────────────────┐
│                 AI Agent / RAG Application                  │
│       (Claude Code / Cursor / LangChain / Custom LLM)       │
└──────────────────────────────┬──────────────────────────────┘
                               │
               Stdio MCP / HTTPS REST Request
                               │
                               ▼
┌─────────────────────────────────────────────────────────────┐
│                  Annolux Gateway API Engine                 │
│  ┌─────────────────────────┐     ┌───────────────────────┐  │
│  │ 1. Account & Rate Limit │ ──► │ Reserve 1 Credit      │  │
│  │    (5 RPS, Burst 10)    │     │ in /data/accounts.db  │  │
│  └─────────────────────────┘     └───────────────────────┘  │
│                                              │              │
│                                              ▼              │
│  ┌───────────────────────────────────────────────────────┐  │
│  │ 2. Bilingual FTS Ranker (/data/index.db)              │  │
│  │    • Curated English & Chinese Corpus                 │  │
│  │    • SimHash Content-Deduplication Engine             │  │
│  │    • Domain Filter & Exact Substring Match            │  │
│  └───────────────────────────────────────────────────────┘  │
│                                              │              │
│                                              ▼              │
│  ┌───────────────────────────────────────────────────────┐  │
│  │ 3. Atomic Response & Ledger Settlement                │  │
│  │    • 2xx Success ──► Commit 1 Credit & Attach Timing  │  │
│  │    • 4xx/5xx Err ──► Release Reservation (0 Cost)     │  │
│  └───────────────────────────────────────────────────────┘  │
└──────────────────────────────┬──────────────────────────────┘
                               │
          JSON with exact `fetched_at` & verified URL
                               │
                               ▼
                     [ Grounded LLM Response ]

📊 搜索质量与冻结基准

Annolux 在 40 个复杂双语查询的冻结盲集上评估搜索检索性能。排序权重从未在这些测试数据上做过调参。

指标

第一道门槛基线

前瞻验证门槛

Hit@1

72.5%

72.5%

Hit@3

82.5%

82.5%

Hit@10

85.0%

85.0%

MRR@10

0.78125

0.78125

P95 时延

532 ms

356 ms

5xx 错误率

0.00%

0.00%

所有基准均在客户端侧、完全并发的负载下进行评测。


💳 透明定价

套餐

价格

积分

速率限制

计费规则

免费

$0

1,000(永久)

5 RPS / 突发 10

永久免费,无需绑定信用卡

Pro

$29 / 月

20,000 / 月

5 RPS / 突发 10

1 次成功 = 1 积分,不结转

Scale

$99 / 月

100,000 / 月

5 RPS / 突发 10

1 次成功 = 1 积分,不结转

  • 无额外超额费用。

  • 错误、限流和超时完全免费(0 积分)。

  • 每个账户最多支持 3 个有效 API 密钥。


📁 示例与 Recipes

请查看 examples/ 目录中的生产级开端:


🐯 社区与支持


📄 许可证

Annolux 依据 Apache License, Version 2.0 的许可将代码开源。

Related MCP Connectors

Related MCP Servers