datpaq-mcp

datpaq-mcp

DATPAQ exposes 34 production data & utility APIs — IP geolocation, DNS/WHOIS/MX lookups, email & phone validation, currency & precious-metals rates, aircraft/VIN lookups, web scraping & screenshots, and more — through one hosted, streamable-HTTP MCP endpoint.

Category
Visit Server

README

<div align="center">

Datpaq MCP Server

Hosted Model Context Protocol server for the Datpaq API.

Go Reference Go Report Card License

Connect · Configure your client · Self-host · Dashboard ↗

</div>


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.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured