Metadata-Version: 2.4
Name: deepgram-mcp
Version: 0.1.1
Summary: Standalone MCP proxy for Deepgram's developer API — remote-proxy architecture with zero client upgrades
Author-email: Deepgram <devrel@deepgram.com>
License-Expression: MIT
Keywords: deepgram,mcp,model-context-protocol,ai,speech,transcription
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: mcp>=1.0.0
Requires-Dist: pydantic>=2.10.1
Requires-Dist: uvicorn>=0.30.0
Requires-Dist: starlette>=0.37.0
Provides-Extra: dev
Requires-Dist: pytest>=8.3.3; extra == "dev"
Requires-Dist: pytest-asyncio>=0.24.0; extra == "dev"
Requires-Dist: pytest-cov>=6.0.0; extra == "dev"
Requires-Dist: pytest-mock>=3.14.0; extra == "dev"
Requires-Dist: mypy>=1.13.0; extra == "dev"
Requires-Dist: ruff>=0.8.1; extra == "dev"
Dynamic: license-file

# deepgram-mcp

Deepgram's [Model Context Protocol](https://modelcontextprotocol.io) server — gives AI editors (Claude Code, Cursor, Windsurf, and others) direct access to Deepgram's speech, transcription, and audio intelligence tools.

**Standalone package.** Install `deepgram-mcp` directly if you want just the MCP server without the full CLI suite. If you already use the [Deepgram CLI](https://github.com/deepgram/cli) (`pip install deepctl`), `deepgram-mcp` is included as a dependency and the `dg mcp` command wraps it — no separate install needed.

## Why deepgram-mcp is different

Most MCP servers ship tools as hardcoded Python. When the provider adds a new tool, you must upgrade the package to get it.

`deepgram-mcp` fetches its tool list from Deepgram's API at runtime. New tools appear in your editor the next time you connect — no package upgrade required.

## Requirements

A **Deepgram API key**. Get one free at [console.deepgram.com](https://console.deepgram.com).

Set it as an environment variable:

```bash
export DEEPGRAM_API_KEY=your_api_key_here
```

## Installation

```bash
pip install deepgram-mcp
```

## Editor setup

### Claude Code

Add to `.mcp.json` in your project root (or `~/.claude/mcp.json` for global):

```json
{
  "mcpServers": {
    "deepgram": {
      "command": "deepgram-mcp",
      "env": {
        "DEEPGRAM_API_KEY": "your_api_key_here"
      }
    }
  }
}
```

Or via CLI:

```bash
claude mcp add deepgram -- deepgram-mcp
```

### Cursor

Add to `.cursor/mcp.json`:

```json
{
  "mcpServers": {
    "deepgram": {
      "command": "deepgram-mcp",
      "env": {
        "DEEPGRAM_API_KEY": "your_api_key_here"
      }
    }
  }
}
```

### Windsurf

Add to your Windsurf MCP config:

```json
{
  "mcpServers": {
    "deepgram": {
      "command": "deepgram-mcp",
      "env": {
        "DEEPGRAM_API_KEY": "your_api_key_here"
      }
    }
  }
}
```

## Usage

### stdio (default — for editor integration)

```bash
deepgram-mcp --api-key your_api_key_here
```

### SSE (HTTP server)

```bash
deepgram-mcp --transport sse --port 8000
```

### Options

| Flag | Default | Description |
|------|---------|-------------|
| `--transport` | `stdio` | Transport mode: `stdio` or `sse` |
| `--port` | `8000` | Port for SSE server |
| `--host` | `127.0.0.1` | Host for SSE server |
| `--api-key` | `$DEEPGRAM_API_KEY` | Deepgram API key |
| `--base-url` | `https://api.dx.deepgram.com` | Deepgram developer API base URL |
| `--debug` | `false` | Print debug info to stderr |

## Use as a library

```python
import asyncio
from deepgram_mcp import run_proxy

asyncio.run(run_proxy(
    transport="stdio",
    host="127.0.0.1",
    port=8000,
    api_key="your_api_key_here",
    base_url="https://api.dx.deepgram.com",
    debug=False,
))
```

## Deepgram CLI

If you use the [Deepgram CLI](https://github.com/deepgram/cli), `dg mcp` wraps this package and handles authentication automatically:

```bash
dg mcp
dg mcp --transport sse --port 8000
```

## License

MIT — see [LICENSE](./LICENSE).
