annolux-mcp
Searches arXiv papers and academic resources through Annolux's curated search index.
Searches GitHub-hosted content in Annolux's curated technical index, enabling discovery of repositories and documentation with optional domain filtering.
Searches the curated Python technical corpus in Annolux's bilingual index, covering Python documentation, articles, and Python-related resources.
Searches the curated Rust technical corpus in Annolux's bilingual index, covering documentation, crates, and Rust-related resources.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@annolux-mcpSearch the web for recent Rust async runtime performance benchmarks and show fetched_at timestamps"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
β‘ Annolux
Curated English & Chinese Search API and MCP for AI Agents & RAG Systems
Search that can show its work. Every result carries an explicit fetched_at timestamp and provenance.
π Website β’ π API Docs β’ β‘ MCP Quickstart β’ π Frozen Benchmarks β’ π Examples β’ π¨π³ δΈζζζ‘£
π‘ Why Annolux?
Current web search APIs for AI agents suffer from three fatal flaws:
Garbage in, garbage out: Commercial search engines index millions of SEO farms, scraped spam, and auto-generated noise that pollute LLM context windows.
Missing time-provenance: LLMs hallucinate current state because search APIs omit the exact snapshot timestamp (
fetched_at).Predatory billing: Paying full price for failed requests, empty outputs, or rate-limited retries.
Annolux solves this with an agent-first curated approach:
π‘οΈ Curated Bilingual Technical Index: High-signal English & Chinese corpus (Rust, Go, Python, AI/ML, Official Docs, RFCs, GitHub, arXiv).
π Explicit
fetched_atTimestamp: Every ranked hit reveals the exact second it was ingestedβenabling grounded citations and temporal reasoning.π― Predictable Ledger Billing: Exactly 1 credit per successful 2xx response. Errors, timeouts (504), rate limits (429), and bad requests cost 0 credits.
π§© Native Model Context Protocol (MCP): Zero setup across Claude Code, Cursor, Windsurf, Cline, Zed, and Claude Desktop.
π 1,000 Free Permanent Credits: Sign in with GitHub or Google at annolux.com and start querying in 30 seconds.
Related MCP server: Kimi Coding MCP
π₯ Comparison: Annolux vs. Generic Search APIs
Feature / Metric | Annolux | Exa (Metaphor) | Tavily | Serper / Google |
Index Quality | Curated Tech & Knowledge (EN/ZH) | Web-wide neural | Web-wide aggregator | Entire Web (noisy SEO) |
Chinese (ZH) Tech Corpus | First-class native bilingual FTS | Moderate | Weak / Translated | Mixed with content farms |
Explicit Snapshot Timestamp | β
| β Inconsistent | β Omitted | β Snippet approximate only |
Billing Guarantee | β 1 credit only on 2xx success | Request-based | Request-based | Request-based |
Failed / Timeout Queries | π 0 Credits charged | β Billed | β Billed | β Billed |
MCP Tool Surface | Single lean | Multiple bulky tools | Multi-step tools | Needs custom bridge |
Domain Restriction | β
Exact hostname filtering ( | β Supported | β Supported | Limited |
Free Starter Tier | 1,000 permanent credits | Limited trial | 1,000 / mo | 2,500 one-time |
π¦ Quick Installation
Option 1: NPX (Fastest for MCP & CLI)
# Run instantly via Node.js (zero installation)
npx -y annolux-mcp -key ann_live_YOUR_API_KEYOption 2: Go CLI & Server
go install github.com/eason4kim-rocket/annolux/cmd/annolux-mcp@latestOption 3: Pre-built Multi-Platform Binaries
Download standalone binaries from GitHub Releases:
linux-amd64/linux-arm64darwin-amd64(Intel Mac) /darwin-arm64(Apple Silicon M-series)
π MCP Integration
Annolux implements the official Model Context Protocol (MCP) specification with a single, high-efficiency tool: search_web.
1. Claude Code
claude mcp add annolux npx -y annolux-mcp -- -key ann_live_YOUR_API_KEY2. Cursor / Windsurf
Add to your project .cursor/mcp.json or global configuration:
{
"mcpServers": {
"annolux": {
"command": "npx",
"args": ["-y", "annolux-mcp", "-key", "ann_live_YOUR_API_KEY"]
}
}
}3. Claude Desktop
Add to 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 Quickstart
Standard Search Endpoint
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 .ποΈ Architecture & Mechanics
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 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 ]π Search Quality & Frozen Benchmarks
Annolux evaluates search retrieval performance against an immutable, frozen blind set of 40 complex bilingual queries. The ranking weights are never tuned on the test set.
Metric | First Gate Baseline | Prelaunch Verification Gate |
Hit@1 |
|
|
Hit@3 |
|
|
Hit@10 |
|
|
MRR@10 |
|
|
P95 Latency |
|
|
5xx Error Rate |
|
|
All benchmarks are evaluated client-side under full concurrency load.
π³ Transparent Pricing
Plan | Price | Credits | Rate Limits | Billing Rules |
Free | $0 | 1,000 (Permanent) | 5 RPS / Burst 10 | Free forever, no credit card required |
Pro | $29 / mo | 20,000 / mo | 5 RPS / Burst 10 | 1 success = 1 credit, no rollover |
Scale | $99 / mo | 100,000 / mo | 5 RPS / Burst 10 | 1 success = 1 credit, no rollover |
No overage charges.
Errors, rate-limits, and timeouts are 100% free (0 credit charged).
Up to 3 active API keys per account.
π Examples & Recipes
Check the examples/ directory for production-ready starters:
01-claude-code-literature-research: Automated technical survey agent with timestamped citations.02-cursor-authority-domain-refactor: Restrict search to official doc domains (react.dev,go.dev) for zero-hallucination refactoring.03-production-rag-temporal-pipeline: Production RAG hybrid search pipeline with fallback retrieval.
π€ Community & Support
File bug reports or feature requests on GitHub Issues.
Review SECURITY.md for private vulnerability reporting.
Public OpenAPI specification: annolux.com/openapi.json.
π License
Annolux is open-source software licensed under the Apache License, Version 2.0.
This server cannot be installed
Maintenance
Related MCP Servers
- AlicenseBqualityCmaintenanceEnables web search and site-specific search capabilities through the Deepsearch model. Provides unified access to broad web retrieval and targeted site search functionality within the MCP ecosystem.2115Apache 2.0
- FlicenseNot gradedqualityDmaintenanceWraps the Kimi Coding Search and Fetch APIs into MCP tools for web searching and content retrieval. It enables LLMs to perform targeted searches and crawl web pages using standardized interfaces.1
- AlicenseAqualityBmaintenanceEnables AI agents to perform multi-engine web search, fetch web pages, and extract clean Markdown content via MCP, with no API keys required.35MIT
- AlicenseAqualityBmaintenanceEnables web fetching, web search, and Metis verification for AI agents via a single MCP endpoint.31MIT
Related MCP Connectors
LLM-ready web search + instant answers + URL-to-clean-text fetch for agents and RAG.
Web search for AI agents β one tool across 6 engines, routed to the cheapest + cached.
The best web search for your AI Agent
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/eason4kim-rocket/annolux'
If you have feedback or need assistance with the MCP directory API, please join our Discord server