Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
34 production API tools over one hosted MCP endpoint.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
AuthorizationValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.
Run this in your terminal
claude mcp add --transport http datpaq https://mcp.datpaq.com/mcp --header 'Authorization: your-value'Fill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"datpaq": {
"url": "https://mcp.datpaq.com/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"datpaq": {
"type": "http",
"url": "https://mcp.datpaq.com/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.
Your choice stays on this device in a cookie; no account needed.
Authorization secret required HTTP headerThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
We have not read this server’s tool list yet; we check endpoints in rotation.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified against the domain datpaq.com (the registry checks domain ownership)
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Not checked yet; we check endpoints in rotation
Not checked yet; we check endpoints in rotation
Not checked yet; we read the tool list when we check the endpoint
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: Authorization
It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.
The GitHub repo last changed –, and the latest version (1.0.0) reached the registry 4 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Spec Driven Development, Remote Desktop Commander, FOGA node
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
A Finch OG Agent cell as an MCP server: read the world, dry-run and take ERC-8414 tenders by policy.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Hosted [Model Context Protocol](https://modelcontextprotocol.io) server for the [Datpaq API](https://datpaq.com).
Connect · Configure your client · Self-host · Dashboard ↗
Hosted at [https://mcp.datpaq.com/](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.
| URL | https://mcp.datpaq.com/ |
| Transport | streamable HTTP |
| Protocol | 2026-07-28 and 2025-11-25 (and earlier) — see Protocol versions |
| Auth | Authorization: Bearer YOUR_DATPAQ_API_KEY (per request) |
| Tools | Hosted tools across 63 active APIs |
Verify with curl — modern (2026-07-28):
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" -H "MCP-Protocol-Version: 2026-07-28" -H "Mcp-Method: server/discover" -d '{"jsonrpc":"2.0","id":1,"method":"server/discover","params":{"_meta":{"io.modelcontextprotocol/protocolVersion":"2026-07-28","io.modelcontextprotocol/clientInfo":{"name":"curl","version":"0"},"io.modelcontextprotocol/clientCapabilities":{}}}}'
Or legacy (initialize handshake), which keeps working unchanged:
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"}}}'
The server is dual-era: it speaks both the stateless 2026-07-28 revision and the handshake-based revisions (2025-11-25 and earlier) on the same endpoint, and picks per request. You do not need to configure anything — point your client at the URL and it will use whichever it supports.
| Era | Versions | How it's served |
|---|---|---|
| Modern | 2026-07-28 | Stateless. Every request carries its version, client info, and capabilities in _meta, mirrored into the MCP-Protocol-Version / Mcp-Method / Mcp-Name headers. Implements server/discover, tools/list, tools/call. |
| Legacy | 2025-11-25, 2025-06-18, 2025-03-26, 2024-11-05 | The initialize handshake, exactly as before. Sessions, GET SSE streams, and Mcp-Session-Id all still work. |
Notes for the modern era:
tools/list and server/discover return ttlMs and cacheScope: "public" caching hints. The tool catalog is identical for every tenant and only changes on redeploy, so clients can cache it and skip re-fetching every tool definition on each reconnect.Mcp-Method and Mcp-Name are validated against the request body. A header that disagrees with the body is rejected with -32020 HeaderMismatch; a missing header is served anyway, so clients that have not implemented header mirroring yet still work.400 + -32022 listing the versions we do support, so a client can retry rather than fail.2026-07-28 — roots, sampling, logging, DCR, and the 2024-11-05 HTTP+SSE transport — were never used by this server, so nothing changes for you there.Auth model: every request must present a Datpaq API key as Authorization: Bearer — the server holds no credentials of its own, so a single instance can serve many tenants, each billed against their own Datpaq account.
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.
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.
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.
| 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 . See the Quickstart auth model.
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
make build && make test
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.
git clone https://github.com/datpaq/mcp && cd mcp
make build ./bin/datpaq-mcp-http --addr :8080
Run tests:
make test
Apache 2.0 — see LICENSE.