Skip to main content

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

Project description

Searchpin

PyPI version Python License Docker

Self-hosted web search for AI agents — zero API keys, zero cost. pip install searchpin and you're done.

  • Search quality rivals commercial products — four search engines in parallel (Baidu, Sogou, Bing CN, Bing Intl), merged and re-ranked by semantic similarity. A rare capability among free MCP search tools.
  • Zero-cost agent development — no API keys, no sign-ups, no usage limits. Pair with a local LLM and your entire development loop costs nothing. Run 24/7 agent experiments without worrying about quotas.
  • Pollution detection — automatically flags results that are unrelated to your query, so your agent doesn't chase irrelevant content.
  • Cross-verification — results from four independent sources let your LLM corroborate information across engines, raising the credibility of what it finds.
  • Content extraction that handles modern sites — goes beyond basic HTML-to-text to extract SSR hydration payloads (Next.js, Nuxt), JSON-LD structured data, and microdata from pages that would otherwise return empty.
  • Token-conscious output — results are titles, URLs, and snippets only. Your LLM decides which pages are worth fetching in full. Structured extraction data is compact and truncated, keeping token overhead under control.

Quick Start

pip install searchpin && searchpin-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
{
  "mcpServers": {
    "Searchpin": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "ghcr.io/telly6/searchpin:latest"]
    }
  }
}

Python API

from searchpin import SearchEngine

engine = SearchEngine()
results = engine.search("Python 3.13 new features")
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.1.tar.gz (41.7 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.1-py3-none-any.whl (40.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: searchpin-1.0.1.tar.gz
  • Upload date:
  • Size: 41.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for searchpin-1.0.1.tar.gz
Algorithm Hash digest
SHA256 92ab7a3709b12991c2d5b5f9d9d3e8eee92320ab18df0036f0c23236bae7c555
MD5 bb3786b2cc8bf0717f7255548daf0c56
BLAKE2b-256 86e58cea3ca281655a8124275e6a14d1f3d3c1eada6d750e1644b64beb8e60b3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: searchpin-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 40.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for searchpin-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7dc68ac878e8b667ea747a169d81c5e873cb1ac19a37ebba4c313b37c7ed4a37
MD5 c695b72d62a2e5ff6bb8bb4a211c0cb5
BLAKE2b-256 e2672a0d20e8ee81c59591eaeb3d7ff197a33086e16239d0920760c341e0e690

See more details on using hashes here.

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