Metadata-Version: 2.4
Name: mcp-server-find
Version: 0.1.1
Summary: MCP server discovery - find and install MCP servers from Official Registry, Glama, and Smithery
Project-URL: Homepage, https://github.com/daedalus/mcp-server-find
Project-URL: Repository, https://github.com/daedalus/mcp-server-find
Project-URL: Issues, https://github.com/daedalus/mcp-server-find/issues
Author-email: Dario Clavijo <clavijodario@gmail.com>
License: MIT
License-File: LICENSE
Requires-Python: >=3.11
Provides-Extra: all
Requires-Dist: fastmcp>=2.0; extra == 'all'
Requires-Dist: hatch; extra == 'all'
Requires-Dist: httpx; extra == 'all'
Requires-Dist: mypy; extra == 'all'
Requires-Dist: mypy>=1.14.0; extra == 'all'
Requires-Dist: pytest; extra == 'all'
Requires-Dist: pytest-cov; extra == 'all'
Requires-Dist: pytest-mock; extra == 'all'
Requires-Dist: ruff; extra == 'all'
Requires-Dist: ruff>=0.9.0; extra == 'all'
Provides-Extra: dev
Requires-Dist: hatch; extra == 'dev'
Requires-Dist: mypy>=1.14.0; extra == 'dev'
Requires-Dist: ruff>=0.9.0; extra == 'dev'
Provides-Extra: lint
Requires-Dist: mypy; extra == 'lint'
Requires-Dist: ruff; extra == 'lint'
Provides-Extra: mcp
Requires-Dist: fastmcp>=2.0; extra == 'mcp'
Provides-Extra: test
Requires-Dist: httpx; extra == 'test'
Requires-Dist: pytest; extra == 'test'
Requires-Dist: pytest-cov; extra == 'test'
Requires-Dist: pytest-mock; extra == 'test'
Description-Content-Type: text/markdown

# mcp-server-find

MCP server discovery - find and install MCP servers from Official Registry, Glama, and Smithery.

[![PyPI](https://img.shields.io/pypi/v/mcp-server-find.svg)](https://pypi.org/project/mcp-server-find/)
[![Python](https://img.shields.io/pypi/pyversions/mcp-server-find.svg)](https://pypi.org/project/mcp-server-find/)

mcp-name: io.github.daedalus/mcp-server-find

## Install

```bash
pip install mcp-server-find
```

## MCP Server

mcp-server-find is an MCP server that helps AI agents discover, evaluate, and install other MCP servers. It aggregates data from:

- Official MCP Registry
- Glama (glama.ai)
- Smithery (registry.smithery.ai)

### Claude Desktop

```json
{
  "mcpServers": {
    "mcp-server-find": {
      "command": "python",
      "args": ["-m", "mcp_server_find"]
    }
  }
}
```

### Usage

```python
from mcp_server_find import search_servers, get_server_details, get_install_config

# Initialize database
from mcp_server_find.db import init_database
conn = init_database()

# Search for MCP servers
results = search_servers(conn, "postgres", 10)

# Get server details
detail = get_server_details(conn, "io.modelcontextprotocol/filesystem")

# Generate install config
config = get_install_config(conn, "io.modelcontextprotocol/filesystem", "claude-desktop")
```

## MCP Tools

- `search_mcp_servers`: Search for MCP servers by keyword
- `get_server_details`: Get detailed server information
- `get_install_config`: Generate install config for a platform
- `browse_categories`: Browse MCP server categories

## API

### Core Functions

- `init_database(db_path?: str) -> sqlite3.Connection` - Initialize SQLite with FTS5
- `search_servers(conn, query, limit?, filters?) -> list[SearchResult]` - Search MCP servers
- `get_server_details(conn, name_or_slug) -> ServerDetail | None` - Get detailed server info
- `get_install_config(conn, name_or_slug, platform) -> InstallConfig` - Generate install config
- `list_categories(conn) -> list[Category]` - List all categories
- `get_servers_by_category(conn, category, limit?) -> list[dict]` - Get servers in category

## Development

```bash
git clone https://github.com/daedalus/mcp-server-find.git
cd mcp-server-find
pip install -e ".[test]"

# Run tests
pytest

# Format
ruff format src/ tests/

# Lint
ruff check src/ tests/

# Type check
mypy src/
```
