Skip to main content

Commercial-grade search quality. Zero keys. Zero bills.

Project description

English | 简体中文

Searchpin

PyPI version Python License Docker

Self-hosted web search for AI agents — zero API keys, zero cost. In 2026, the center of gravity in AI development is shifting from "chatting" to "autonomous task execution" — locally deployed, long-running agents are becoming the norm. When an agent runs 24/7, every web search must not be interrupted by API quotas or billing. Searchpin was designed for this from day one: zero external dependencies, zero usage limits. Agents can search, fetch, and verify without restriction, and developers never worry about cost.

Why Searchpin

🇨🇳 Optimized for Chinese Network Environments

Defaults to Baidu, Sogou, Bing CN, and Bing Intl — four search engines queried in parallel. Works natively within China's network, no proxy or VPN needed. Most overseas alternatives rely on Google, DuckDuckGo, or Brave, which are largely inaccessible inside China.

🧠 Semantic Re-ranking — a Differentiator Few Offer

Results from all four engines are not simply concatenated. They are merged and re-ranked by an embedding model based on semantic similarity to the query. What your AI receives is a curated list of high-quality results, not a pile of noisy links. Among free MCP search servers, very few offer this capability.

💰 Completely Free, Zero Barrier

No account registration, no API key application, no usage limits. No dependency on any commercial API — no risk of sudden paywalls or quota restrictions. The entire pipeline runs on your own machine.

🔍 Built for Modern Websites

Built-in SSR content extraction can parse pages rendered by Next.js, Nuxt, and similar frameworks, and extract JSON-LD structured data and microdata. Plain HTML scraping gets nothing from these sites.

🛡️ Pollution Detection + Cross-Verification

Automatically detects and flags results unrelated to your query. Four independent search engines provide cross-verifiable results, enabling your LLM to corroborate information across sources for more credible answers.

⚡ Deliberate Engineering Trade-offs

Every design decision was made with real-world usage in mind:

  • Token-conscious — Search results return only titles, URLs, and snippets. Structured extraction data is compact and truncated. Your LLM decides which pages are worth fetching in full, without wasting context window.
  • Fast response — Four engines queried asynchronously in parallel. Total time depends on the slowest engine, not the sum of all four. A typical search completes in 1–2 seconds.
  • Memory-friendly — The embedding model (~118MB) is downloaded once through hf-mirror.com (HuggingFace mirror for China), then reused from local cache.

Quick Start

pip install searchpin && searchpin-setup

On first run, the embedding model (~118MB) is downloaded once via hf-mirror.com (HuggingFace mirror for China). That is the only one-time setup.

Configuration

Claude Desktop / Cursor / any MCP client

Add to your mcpServers config:

{
  "mcpServers": {
    "Searchpin": {
      "command": "searchpin-server",
      "args": []
    }
  }
}

VS Code

Install in VS Code Install in VS Code Insiders

Or manually, add to .vscode/mcp.json:

{
  "servers": {
    "Searchpin": {
      "command": "searchpin-server",
      "args": []
    }
  }
}

Docker

docker run -i --rm ghcr.io/telly6/searchpin:latest

Python API

from searchpin import SearchEngine

engine = SearchEngine()
results = engine.search("Python 3.13 新特性")
page = engine.fetch("https://docs.python.org/3/whatsnew/3.13.html")
engine.close()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

searchpin-1.0.8.tar.gz (46.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

searchpin-1.0.8-py3-none-any.whl (45.0 kB view details)

Uploaded Python 3

File details

Details for the file searchpin-1.0.8.tar.gz.

File metadata

  • Download URL: searchpin-1.0.8.tar.gz
  • Upload date:
  • Size: 46.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for searchpin-1.0.8.tar.gz
Algorithm Hash digest
SHA256 5307ddc7c5c3cdf9c8821f8432b827ed3c8049cd1d4d9830a2324a5656f67b1c
MD5 86ca818bdab2978fafa011802a024e68
BLAKE2b-256 dd6d7a9ba90d0bf0391ebd17311dfc032753769ce168fd3608118f0fa76c8c6f

See more details on using hashes here.

Provenance

The following attestation bundles were made for searchpin-1.0.8.tar.gz:

Publisher: pypi-publish.yml on telly6/searchpin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file searchpin-1.0.8-py3-none-any.whl.

File metadata

  • Download URL: searchpin-1.0.8-py3-none-any.whl
  • Upload date:
  • Size: 45.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for searchpin-1.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 4bf20d54509f5cd236e9889e4366ebc222618744452012ecc019b05daa08f9ef
MD5 80ba15ffc74c633013fad4cea2959d78
BLAKE2b-256 8a6921e3191ed673380db8c59018cabbe811b5dac518ee22daa7f5c8e6045124

See more details on using hashes here.

Provenance

The following attestation bundles were made for searchpin-1.0.8-py3-none-any.whl:

Publisher: pypi-publish.yml on telly6/searchpin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page