About
34 production API tools over one hosted MCP endpoint.
README
Datpaq MCP Server
Hosted Model Context Protocol server for the Datpaq API.
Hosted at https://mcp.datpaq.com/ — also installable locally and self-hostable.
datpaq-mcp-http exposes the Datpaq API as MCP tools over streamable HTTP, so any MCP-compatible client (Claude Desktop, Cursor, Codex, Cline, Continue, agent frameworks) can call Datpaq endpoints with a single connection.
For the local CLI (and the stdio MCP that ships with it for Claude Desktop), see github.com/datpaq/cli.
Connect
| URL | https://mcp.datpaq.com/ |
| Transport | streamable HTTP |
| Auth | Authorization: Bearer YOUR_DATPAQ_API_KEY (per request) |
| Tools | 34 hosted tools across 13 active APIs |
Verify with curl:
curl -s -X POST https://mcp.datpaq.com/ \
-H "Authorization: Bearer $YOUR_DATPAQ_API_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"curl","version":"0"}}}'
Auth model: every request must present a Datpaq API key as Authorization: Bearer <key> — the server holds no credentials of its own, so a single instance can serve many tenants, each billed against their own Datpaq account.
Configure your client
Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"datpaq": {
"url": "https://mcp.datpaq.com/",
"headers": {
"Authorization": "Bearer YOUR_DATPAQ_API_KEY"
}
}
}
}
Cursor (~/.cursor/mcp.json or project .cursor/mcp.json):
{
"mcpServers": {
"datpaq": {
"url": "https://mcp.datpaq.com/",
"headers": {
"Authorization": "Bearer YOUR_DATPAQ_API_KEY"
}
}
}
}
Codex CLI:
export DATPAQ_API_KEY="YOUR_DATPAQ_API_KEY"
codex mcp add datpaq --url https://mcp.datpaq.com/ --bearer-token-env-var DATPAQ_API_KEY
Codex TOML:
[mcp_servers.datpaq]
url = "https://mcp.datpaq.com/"
bearer_token_env_var = "YOUR_DATPAQ_API_KEY"
For full step-by-step instructions per client (including Cline and Continue), see the Datpaq MCP docs.
Self-host
Install via Go:
go install github.com/datpaq/mcp/cmd/datpaq-mcp-http@latest
Requires Go 1.26.3+.
Or pull the Docker image:
docker build -t datpaq-mcp-http -f cmd/datpaq-mcp-http/Dockerfile .
docker run -p 8080:8080 datpaq-mcp-http
Run it:
datpaq-mcp-http --addr :8080
Then point an MCP client at http://localhost:8080/.
Ships with a Fly.io config for one-command deploys:
fly launch --config fly.toml
fly deploy
No secrets to configure — clients authenticate per request.
What's exposed
The server registers one MCP tool per active Datpaq API endpoint. The active set is curated in internal/cli/active-apis.json — add a slug there when a new API ships on datpaq.com, redeploy, and the tool appears for every connected client.
Inactive APIs are scrubbed entirely from the MCP surface (unlike the CLI, which still lets you invoke them directly). This keeps the hosted tool list focused on production-ready endpoints.
Tools that depend on local state or shell-out to the user's machine (auth flows, config writers, etc.) are deliberately not registered — see internal/mcp/public_tools.go.
Configuration
| Variable | Purpose |
|---|---|
DATPAQ_BASE_URL |
Override the API base URL (default: https://datpaq.com/api/v1) — handy for pointing at staging |
PORT |
HTTP listen port (default: 8080, also configurable via --addr) |
The Datpaq API key is not a server-side variable. Each request must include it as Authorization: Bearer <key>. See the Quickstart auth model.
Managing active APIs
The active set is curated in internal/cli/active-apis.json. The CLI repo is the canonical place to regenerate that manifest from the admin dashboard export (or, in Phase 2, GET /api/v1/catalog/active). This repo receives updates via sync — it does not ship its own fetch tooling.
{
"active": [
"convert-time",
"ip-geolocation",
"..."
]
}
Canonical workflow (sibling checkout at ../CLI):
# In the CLI repo
cd ../CLI
make fetch-active-apis CATALOG_INPUT=./export.json # or CATALOG_URL=... after Phase 2
make sync-active-apis # CLI → MCP
# Then here
make build && make test
# commit internal/cli/active-apis.json + code changes, deploy
If you edited active-apis.json in this repo by mistake, push it back to CLI with ./scripts/sync-active-apis.sh (MCP → CLI only). Prefer the CLI-first flow above for normal updates.
Development
git clone https://github.com/datpaq/mcp && cd mcp
make build
./bin/datpaq-mcp-http --addr :8080
Run tests:
make test
License
Apache 2.0 — see LICENSE.
Installing DATPAQ
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/datpaq/mcpFAQ
Is DATPAQ MCP free?
Yes, DATPAQ MCP is free — one-click install via Unyly at no cost.
Does DATPAQ need an API key?
No, DATPAQ runs without API keys or environment variables.
Is DATPAQ hosted or self-hosted?
A hosted option is available: Unyly runs the server in the cloud, no local setup required.
How do I install DATPAQ in Claude Desktop, Claude Code or Cursor?
Open DATPAQ on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare DATPAQ with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
