Metadata-Version: 2.4
Name: pulse-mcp
Version: 0.1.1
Summary: Pulse document-extraction API as MCP tools — hosted gateway and local stdio server
Project-URL: Homepage, https://runpulse.com
Project-URL: Documentation, https://docs.runpulse.com
Keywords: document-extraction,mcp,model-context-protocol,ocr,pdf,pulse
Requires-Python: >=3.11
Requires-Dist: httpx>=0.28
Requires-Dist: mcp<2,>=1.27
Requires-Dist: pydantic-settings>=2.10
Provides-Extra: http
Requires-Dist: uvicorn>=0.35; extra == 'http'
Description-Content-Type: text/markdown

# pulse-mcp

[Pulse](https://runpulse.com)'s document-extraction API as an
[MCP](https://modelcontextprotocol.io) server — turn PDFs, Office documents, images,
and spreadsheets into clean markdown, structured JSON, and tables from Claude Desktop,
Cursor, or any MCP client.

## Quickstart

You need a Pulse API key (from the [Pulse dashboard](https://runpulse.com)). Add to
your MCP client config (Claude Desktop, Cursor, …):

```json
{
  "mcpServers": {
    "pulse": {
      "command": "uvx",
      "args": ["pulse-mcp@latest"],
      "env": { "PULSE_API_KEY": "<your-pulse-api-key>" }
    }
  }
}
```

Instead of the env var, the key can live in `~/.pulse/config.toml`:

```toml
api_key = "<your-pulse-api-key>"
```

## Tools

| Tool | What it does |
|---|---|
| `extract` | Document → markdown (chunking, HTML, figure descriptions optional) |
| `apply_schema` | Structured JSON from an extraction, against your JSON schema |
| `generate_schema` | AI-draft or refine an extraction schema from a prompt |
| `extract_tables` | Pull tables (HTML/markdown) out of an extraction |
| `split_document` | Partition a document into topic page-ranges |
| `batch_extract` | Many documents in one asynchronous batch |
| `run_pipeline` | Run a pipeline saved in the Pulse dashboard |
| `get_job` | Poll any asynchronous job |

`extract` takes a `file_url` — or, because this server runs on your machine, a local
`file_path`: the server process reads the file and uploads it out-of-band, so file
bytes never pass through the model. Up to 50 MB; pdf, png, jpg, jpeg, bmp, tiff, docx,
pptx, xlsx, xlsm, csv, txt, html.

## Hosted alternative

Don't want a local process? The same tools are served hosted at
`https://mcp.runpulse.com/mcp` (Streamable HTTP) — authenticate with your API key as an
`x-api-key` header.

## Links

- [Pulse documentation](https://docs.runpulse.com)
- [runpulse.com](https://runpulse.com)
