Skip to main content
Glama
eason4kim-rocket

annolux-mcp

⚡ Annolux

AI 에이전트 및 RAG 시스템을 위한 큐레이션된 영어·중국어 검색 API 및 MCP

검색은 작업 과정을 보여줄 수 있습니다. 모든 결과에 명시적인 fetched_at 타임스탬프와 출처가 포함됩니다.

Go Version NPM Version MCP Protocol License Free Tier

🌐 웹사이트 • 📖 API 문서 • ⚡ MCP 빠른 시작 • 📊 고정 벤치마크 • 📁 예제 • 🇨🇳 중국어 문서


💡 왜 Annolux인가?

AI 에이전트를 위한 현재 웹 검색 API는 세 가지 치명적인 결함을 가지고 있습니다.

  1. 쓰레기가 들어가면 쓰레기가 나온다: 상용 검색 엔진은 수백만 개의 SEO 팜, 스크랩된 스팸, 그리고 LLM 컨텍스트 윈도우를 오염시키는 자동 생성 노이즈를 인덱싱합니다.

  2. 시간 출처 부재: LLM은 현재 상태를 환각합니다. 검색 API가 정확한 스냅샷 타임스탬프(fetched_at)를 생략하기 때문입니다.

  3. 약탈적 과금: 실패한 요청, 빈 출력, 또는 요율 제한된 재시도에 대해 정가를 지불해야 합니다.

Annolux는 에이전트 우선의 큐레이션된 접근 방식으로 이 문제를 해결합니다:

  • 🛡️ 큐레이션된 이중 언어 기술 인덱스: 신호가 높은 영어 및 중국어 코퍼스(Rust, Go, Python, AI/ML, 공식 문서, RFC, GitHub, arXiv).

  • 🕒 명시적인 fetched_at 타임스탬프: 모든 순위 결과는 인제스트된 정확한 초를 드러내어 근거 있는 인용과 시간적 추론을 가능하게 합니다.

  • 🎯 예측 가능한 회계 청구: 성공적인 2xx 응답마다 정확히 1 크레딧입니다. 오류, 타임아웃(504), 요율 제한(429), 그리고 잘못된 요청은 0 크레딧입니다.

  • 🧩 네이티브 MCP (Model Context Protocol): Claude Code, Cursor, Windsurf, Cline, Zed, 그리고 Claude Desktop에서 설정 없이 이용 가능합니다.

  • 🚀 1,000개의 영구 무료 크레딧: annolux.com에서 GitHub 또는 Google로 로그인하고 30초 안에 질의를 시작하세요.


Related MCP server: agent-web-search-mcp

🥊 비교: Annolux vs. 일반 검색 API

기능 / 지표

Annolux

Exa (Metaphor)

Tavily

Serper / Google

인덱스 품질

큐레이션된 기술 및 지식 (EN/ZH)

웹 전역 신경망

웹 전역 애그리게이터

전체 웹 (노이즈 SEO)

중국어(ZH) 기술 코퍼스

일급 네이티브 이중 언어 FTS

보통

약함 / 번역됨

콘텐츠 팜과 혼재

명시적 스냅샷 타임스탬프

✅ 모든 결과에 fetched_at

❌ 불안정

❌ 생략됨

❌ 스니펫 근사치뿐

청구 보장

✅ 2xx 성공 시에만 1 크레딧

요청 기반

요청 기반

요청 기반

실패 / 타임아웃 쿼리

🆓 크레딧 청구 없음

❌ 청구됨

❌ 청구됨

❌ 청구됨

MCP 도구 노출 영역

단일 슬림 search_web (최소 토큰 낭비)

다수의 부피 큰 도구

다단계 도구

맞춤 브리지 필요

도메인 제한

✅ 정확한 호스트네임 필터링 (domains)

✅ 지원

✅ 지원

제한된 site: 쿼리

무료 스타터 요금제

1,000개 영구 크레딧

제한된 체험

월 1,000개

2,500개 일회성


📦 빠른 설치

옵션 1: NPX (MCP 및 CLI에 가장 빠름)

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

옵션 2: Go CLI 및 서버

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

옵션 3: 사전 빌드 멀티 플랫폼 바이너리

GitHub Releases에서 독립형 바이너리를 다운로드하세요:

  • linux-amd64 / linux-arm64

  • darwin-amd64 (인텔 Mac) / darwin-arm64 (Apple Silicon M 시리즈)


🔌 MCP 통합

Annolux는 단일고효율 도구인 search_web로 공식 Model Context Protocol 사양을 구현합니다.

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크레딧, 이월 없음

  • 초과 부과 요금 없음.

  • 오류, 요율 제한, 타임아웃은 100% 무료입니다(크레딧 청구 없음).

  • 계정당 최대 3개의 활성 API 키.


📁 예제 및 레시피

프로덕션에서 사용 가능한 시작 예제를 보려면 examples/ 디렉터리를 확인하세요:


🤘 커뮤니티 및 지원

  • 버그 신고나 기능 요청은 GitHub Issues에 제출하세요.

  • 개인 보안 취약점 신고는 [SECURITY.md](SECURITY.md를 참조하세요.

  • 공개 OpenAPI 사양: annolux.com/openapi.json


📄 라이선스

Annolux는 Apache 라이선스 버전 2.0에 따라 배포되는 오픈소스 소프트웨어입니다.

Related MCP Connectors

Related MCP Servers