
Eurodns Mcp
io.github.JigSawFrPublished by GitHub account JigSawFrv0.11.0Updated Oct 24, 2026
Model Context Protocol server for the EuroDNS User API — domains, DNS zones, subscriptions and SSL.
Overview
MCP server for the EuroDNS User API that lets an assistant read and change domains, DNS zones, contacts, subscriptions, SSL, invoices and orders.
- What you can do
- Inspect and manage domains: check availability, read domain details and DNSSEC status
- Read and edit DNS zones, including safe record upserts and a diff of what a change would do
- Look up contacts, subscriptions, SSL certificates, prepaid balance, invoices and orders
- Query the server's own audit history, including refused calls, and read the portfolio resource
- Use bundled prompts for common domain and DNS workflows
- When to use it
- Useful when you hold EuroDNS domains and want an assistant to answer questions about zones, records, certificates and renewals, or to make DNS record changes with a preview of the effect. Also suited to a shared HTTP deployment where several people need scoped access and an audit trail.
- Requirements
- Runs locally over stdio via npx, or over streamable HTTP from a container. Needs Node.js 22 or newer, a EuroDNS Application ID and API key (EURODNS_APP_ID, EURODNS_API_KEY), and the host's public IP allowlisted in the EuroDNS dashboard. HTTP deployments need authentication configured and a persistent disk for the audit log.
Installation
In SourceWeft
- Open Eurodns Mcp in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
eurodns-mcp
Manage your domains, DNS zones and subscriptions by asking for it.
A Model Context Protocol server for the EuroDNS User API — domains, DNS zones, contacts, subscriptions, SSL, invoices and orders.
[CI] [License: MIT] [Node] [MCP] [npm] [Image] [MCP Badge] [eurodns-mcp MCP server]
This is an independent open-source project. It is not affiliated with, endorsed by, or supported by EuroDNS. "EuroDNS" is used only to identify the API this server talks to.
Written by a professional engineer with AI assistance. Every line was reviewed before it was committed, and the responsibility for what it does is human.
What you get
- Full API coverage in 36 tools — every one of the 79 API operations, with each list/get pair, profile create/update pair, on/off toggle and per-product read folded into one tool; 55 tools once billing and irreversible operations are enabled.
- Every tool and argument described for the model that reads them: what it does and returns, when to prefer its neighbour and when not to, what it does that the annotations cannot say, where an id comes from. A test holds the whole surface to it, and a workflow runs the registries' own linter over it.
- Three DNS workflow tools that make record edits safe, because saving a zone replaces it.
- Guardrails so a deployment can refuse operations that spend money or destroy things.
- Four prompts for the workflows worth naming, and two resources: the portfolio, browsable, and one that says what this deployment allows — including why a tool you expected is not in the list.
- Two transports —
stdiofor a local client, streamable HTTP for a shared deployment. - Both protocol eras on one endpoint — speaks the 2026-07-28 revision natively and still serves 2025-era clients, which is most of them today.
- OAuth 2.1 or a shared token on HTTP, with an audit line per call.
- Queryable history — ask the server what has been done, and by whom.
- 1Password Connect as an optional source for any secret it reads.
How it works
Two things are worth reading off that diagram. Authorisation has two independent gates — what the deployment permits at all, then what the caller's scopes permit within it. And the audit log is fed by every path, including refusals, because the upstream API authenticates every caller with one shared key and cannot attribute anything itself.
Requirements
- Node.js 22 or newer. Node 20 reached end of life on 30 April 2026 and receives no security patches; the container image runs Node 24, the active LTS.
- EuroDNS API credentials: an Application ID and an API key, created in the EuroDNS dashboard under API access.
- The public IP of the machine running this server must be allowlisted in the same
dashboard. A
403from the API is almost always a missing allowlist entry, not bad credentials.
Quick start
For a client that spawns the server itself, such as Claude Desktop:
To try it in a terminal first:
Without credentials it still starts, lists every tool, prompt and resource, and refuses each
call with a message naming the two variables — so a marketplace, or
npx @modelcontextprotocol/inspector, can show the surface before you have a key.
The package ships two commands: eurodns-mcp for stdio, which is the one above, and
eurodns-mcp-http for the HTTP transport — reachable as
npx -p @jigsawfr/eurodns-mcp eurodns-mcp-http.
For a shared deployment over HTTP, use the container instead — see Deployment.
Try not to put the API key in the client config file: Secrets shows two ways around it.
What you can ask it
Documentation
Deployment
Published images live at ghcr.io/jigsawfr/eurodns-mcp, built for linux/amd64 and
linux/arm64 with a build provenance attestation.
Two things decide where this runs, and neither is the usual latency-or-price argument:
- The EuroDNS API filters by source IP, so the host has to give you a stable — ideally dedicated — egress address. An IP shared with other tenants keeps the mechanism and loses the protection.
- The history query tool reads a file, so the host needs a persistent disk. That rules out platforms with an ephemeral filesystem.
On both counts Fly.io comes out ahead, at a couple of dollars a month for a dedicated IPv4
against roughly $100 elsewhere. deploy/ has the per-platform detail,
ready-made fly.toml and render.yaml, and the comparison in full.
One setting catches everyone once: inside a container the server listens on 0.0.0.0, and
it refuses to start on a non-loopback address without authentication. Set
EURODNS_MCP_AUTH to token or oauth.
Which of those two
The choice is not about how secure you want to be — both are — but about whether callers need separate identities, and it has a cost you should see coming.
token is one shared secret in a header. It works in a minute, needs nothing but the
server, and is the right answer for a deployment one person uses. What you give up is
attribution: the audit log records a label, so it can tell you a destructive call happened but
not who made it.
oauth gives each person their own credential, lets the five scopes decide who may do
what, and puts a real identity in the audit log. The scopes decide what a caller may do; your
identity provider decides who gets a token at all, and most default to everyone in the
directory — so that setting is part of the configuration, not an afterthought. Its entry price is a hostname on a domain
your identity provider will accept — with Microsoft Entra ID that means a domain verified in
your tenant, because the server's public URL has to double as the Application ID URI. A
platform hostname like *.fly.dev cannot be verified, so the domain is not optional there.
Entra ID works the whole thing through, including the errors it produces
when the three names involved fall out of step, and how to go one step further and give each
person a different set of scopes rather than the same one.
Starting on token and moving to oauth later costs nothing but a restart: no data
migration, no change to how tools behave.
Contributing
CONTRIBUTING.md has the workflow, and docs/development.md the commands. Pull request titles are checked against Conventional Commits, because that is what the changelog is generated from.
License
MIT.
"EuroDNS" is a trademark of EuroDNS S.A. and is not covered by that licence.
Source: README.md at commit 2678384
Tools
0Version history
1- v0.11.0LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts