Metadata-Version: 2.4
Name: fusesearch
Version: 0.1.1
Summary: Multi-source search aggregation tool with AI-powered retrieval and response synthesis
Author-email: Anton Lebedev <pypi@katzo.net>
License-Expression: MIT
Project-URL: Homepage, https://github.com/thelebster/fusesearch
Project-URL: Repository, https://github.com/thelebster/fusesearch
Project-URL: Issues, https://github.com/thelebster/fusesearch/issues
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pydantic>=2.12
Requires-Dist: qdrant-client>=1.16
Requires-Dist: fastapi>=0.129
Requires-Dist: uvicorn>=0.40
Requires-Dist: tqdm>=4.67
Provides-Extra: mcp
Requires-Dist: mcp[cli]>=1.26; extra == "mcp"
Provides-Extra: local
Requires-Dist: sentence-transformers>=5.2; extra == "local"
Provides-Extra: all
Requires-Dist: fusesearch[local,mcp]; extra == "all"
Provides-Extra: dev
Requires-Dist: pytest>=9.0; extra == "dev"
Requires-Dist: ruff>=0.15; extra == "dev"
Dynamic: license-file

# FuseSearch

Multi-source search aggregation tool that unifies retrieval across diverse data sources — Confluence, MCP servers, local files, and more — using AI-powered search and response synthesis through a single query interface.

## Quick Start

```bash
make build
make start
make index    # index docs from data/docs
make search "your query"
```

## MCP Server

The `fusesearch-mcp` Docker service exposes a streamable HTTP endpoint on port 8001. Tools: `search` (hybrid search), `count` (indexed chunks).

### Claude Code

```bash
claude mcp add fusesearch http://localhost:8001/mcp --transport http
```

### Claude Desktop

**Option 1: Connectors UI (recommended)**

In Claude Desktop, go to **Settings > Connectors > Add custom connector** and enter `https://localhost:8001/mcp`.

**Option 2: Config file with `mcp-remote` bridge (local dev)**

Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "fusesearch": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "http://localhost:8001/mcp", "--allow-http"]
    }
  }
}
```

Requires Node.js >= 18. `--allow-http` is required for plain HTTP (not needed for HTTPS).
