Metadata-Version: 2.4
Name: mcp-mdns
Version: 0.1.0
Summary: MCP server for mDNS (Multicast DNS) service discovery
Project-URL: Homepage, https://github.com/daedalus/mcp-mdns
Project-URL: Repository, https://github.com/daedalus/mcp-mdns
Project-URL: Issues, https://github.com/daedalus/mcp-mdns/issues
Author-email: Dario Clavijo <clavijodario@gmail.com>
License: MIT
License-File: LICENSE
Requires-Python: >=3.11
Requires-Dist: mcp>=1.1.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: zeroconf>=0.140.0
Provides-Extra: all
Requires-Dist: hatch; extra == 'all'
Requires-Dist: mypy; extra == 'all'
Requires-Dist: pip-api; extra == 'all'
Requires-Dist: pytest; extra == 'all'
Requires-Dist: pytest-asyncio; extra == 'all'
Requires-Dist: pytest-cov; extra == 'all'
Requires-Dist: pytest-mock; extra == 'all'
Requires-Dist: ruff; extra == 'all'
Provides-Extra: dev
Requires-Dist: hatch; extra == 'dev'
Requires-Dist: mypy; extra == 'dev'
Requires-Dist: pip-api; extra == 'dev'
Requires-Dist: ruff; extra == 'dev'
Provides-Extra: lint
Requires-Dist: mypy; extra == 'lint'
Requires-Dist: ruff; extra == 'lint'
Provides-Extra: test
Requires-Dist: pytest; extra == 'test'
Requires-Dist: pytest-asyncio; extra == 'test'
Requires-Dist: pytest-cov; extra == 'test'
Requires-Dist: pytest-mock; extra == 'test'
Description-Content-Type: text/markdown

# mcp-mdns — MCP server for mDNS service discovery

[![PyPI](https://img.shields.io/pypi/v/mcp-mdns.svg)](https://pypi.org/project/mcp-mdns/)
[![Python](https://img.shields.io/pypi/pyversions/mcp-mdns.svg)](https://pypi.org/project/mcp-mdns/)
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)

MCP server that exposes mDNS (Multicast DNS) service discovery functionality via the Model Context Protocol. Enables LLMs to discover and query zero-configuration network services on the local network.

mcp-name: "io.github.daedalus/mcp-mdns"

## Install

```bash
pip install mcp-mdns
```

## Usage

```bash
# Run the MCP server
mcp-mdns
```

Or run directly with Python:

```bash
python -m mcp_mdns
```

## MCP Server Configuration

Configure your MCP client with:

```json
{
  "mcpServers": {
    "mdns": {
      "command": "mcp-mdns",
      "env": {}
    }
  }
}
```

## Available Tools

- `mdns_list_service_types` — List all service types advertised on the local network
- `mdns_browse_services` — Browse for services of a specific type (e.g., _http._tcp, _printer._tcp)
- `mdns_get_service_info` — Get detailed information about a specific service (host, port, TXT records)
- `mdns_resolve_hostname` — Resolve a .local hostname to IP addresses
- `mdns_register_service` — Register a new service on the local network
- `mdns_unregister_service` — Unregister a previously registered service

## Development

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

# run tests
pytest

# format
ruff format src/ tests/

# lint
ruff check src/ tests/

# type check
mypy src/
```

## License

MIT