INWX MCP by usefulapi
Check domain availability, list domains and DNS zones, change DNS records in INWX.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"inwx": {
"url": "https://inwx.usefulapi.io/mcp"
}
}
}Remote endpoints
https://inwx.usefulapi.io/mcpstreamable-httpWhat it can do
Tool inventory
Tools (11)
🟢inwx_account_info
Get the details of the INWX login used by this server: account id, customer number, roles and default settings. INWX method: account.info.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢inwx_domain_check(domains)
Check whether domain names can be registered now, with the registration price and premium flag. Read only: nothing is ordered. INWX method: domain.check.
Input Schema
{
"type": "object",
"properties": {
"domains": {
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 255
},
"description": "Domain names to check, for example [\"example.com\", \"example.de\"]."
}
},
"required": [
"domains"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢inwx_domain_list(search, status, page, pagelimit)
List the domains of this INWX account with status, expiry date, renewal mode and lock state. Filter by name text or status. INWX method: domain.list.
Input Schema
{
"type": "object",
"properties": {
"search": {
"description": "Search text. \"*\" or empty lists all (default \"*\").",
"type": "string",
"maxLength": 255
},
"status": {
"description": "Only domains with these status values.",
"type": "array",
"items": {
"type": "string",
"maxLength": 64
}
},
"page": {
"description": "Page number (default 1).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"pagelimit": {
"description": "Results per page (default 20, max 100).",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢inwx_domain_info(domain, roId)
Get one domain: dates (creation, expiry), status, renewal and transfer modes, and the registrant, admin and tech contact handle ids. The transfer auth code is never returned. INWX method: domain.info.
Input Schema
{
"type": "object",
"properties": {
"domain": {
"description": "Domain name, for example example.com. Give this or roId.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"roId": {
"description": "Repository object id (roId) from a list call. Give this or domain.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢inwx_nameserver_list(search, page, pagelimit)
List the DNS zones hosted at INWX with their zone type, mail and web entries. Filter by domain text. INWX method: nameserver.list.
Input Schema
{
"type": "object",
"properties": {
"search": {
"description": "Search text. \"*\" or empty lists all (default \"*\").",
"type": "string",
"maxLength": 255
},
"page": {
"description": "Page number (default 1).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"pagelimit": {
"description": "Results per page (default 20, max 100).",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢inwx_nameserver_info(domain, roId)
Get one DNS zone with its records (record id, name, type, content, TTL, priority). Use the record ids with inwx_nameserver_update_record. INWX method: nameserver.info.
Input Schema
{
"type": "object",
"properties": {
"domain": {
"description": "Domain name, for example example.com. Give this or roId.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"roId": {
"description": "Repository object id (roId) from a list call. Give this or domain.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢inwx_contact_list(search, page, pagelimit)
List the contact handles (owner, admin and tech contacts) of this account. Filter by search text. INWX method: contact.list.
Input Schema
{
"type": "object",
"properties": {
"search": {
"description": "Search text (name, organisation or email).",
"type": "string",
"maxLength": 64
},
"page": {
"description": "Page number (default 1).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"pagelimit": {
"description": "Results per page (default 20, max 100).",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢inwx_contact_info(id)
Get one contact handle by id: name, organisation, address and e-mail. INWX method: contact.info.
Input Schema
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Contact handle id (from inwx_contact_list)."
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴inwx_nameserver_update(domain, roId, type, masterIp, ns, ...)
Change the settings of a DNS zone: zone type, master IP, nameserver list, and the web and mail entries. This changes live DNS. INWX method: nameserver.update.
Input Schema
{
"type": "object",
"properties": {
"domain": {
"description": "Domain name, for example example.com. Give this or roId.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"roId": {
"description": "Repository object id (roId) from a list call. Give this or domain.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"type": {
"description": "Zone type.",
"type": "string",
"enum": [
"MASTER",
"SLAVE"
]
},
"masterIp": {
"description": "Master IP for a SLAVE zone.",
"type": "string",
"maxLength": 45
},
"ns": {
"description": "Nameserver host names for the zone.",
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 255
}
},
"web": {
"description": "Web entry (IP or host).",
"type": "string",
"maxLength": 255
},
"mail": {
"description": "Mail entry (IP or host).",
"type": "string",
"maxLength": 255
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴inwx_nameserver_create_record(domain, roId, type, content, name, ...)
Add one DNS record to a zone. This changes live DNS. INWX method: nameserver.createRecord.
Input Schema
{
"type": "object",
"properties": {
"domain": {
"description": "Domain name, for example example.com. Give this or roId.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"roId": {
"description": "Repository object id (roId) from a list call. Give this or domain.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"type": {
"type": "string",
"enum": [
"A",
"AAAA",
"AFSDB",
"ALIAS",
"CAA",
"CERT",
"CNAME",
"HINFO",
"HTTPS",
"IPSECKEY",
"LOC",
"MX",
"NAPTR",
"NS",
"OPENPGPKEY",
"PTR",
"RP",
"SMIMEA",
"SOA",
"SRV",
"SSHFP",
"SVCB",
"TLSA",
"TXT",
"URI",
"URL"
],
"description": "DNS record type."
},
"content": {
"type": "string",
"minLength": 1,
"maxLength": 1024,
"description": "Record value, for example an IP address, host name or TXT text."
},
"name": {
"description": "Record name, for example www or _dmarc. Empty means the zone itself.",
"type": "string",
"maxLength": 255
},
"ttl": {
"description": "TTL in seconds (default 3600).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"prio": {
"description": "Priority, used by MX and SRV records (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 65535
}
},
"required": [
"type",
"content"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴inwx_nameserver_update_record(recordId, type, content, name, ttl, ...)
Change one existing DNS record (take its id from inwx_nameserver_info). Only the fields you pass change. This changes live DNS. INWX method: nameserver.updateRecord.
Input Schema
{
"type": "object",
"properties": {
"recordId": {
"type": "string",
"minLength": 1,
"maxLength": 255,
"description": "Record id from inwx_nameserver_info."
},
"type": {
"type": "string",
"enum": [
"A",
"AAAA",
"AFSDB",
"ALIAS",
"CAA",
"CERT",
"CNAME",
"HINFO",
"HTTPS",
"IPSECKEY",
"LOC",
"MX",
"NAPTR",
"NS",
"OPENPGPKEY",
"PTR",
"RP",
"SMIMEA",
"SOA",
"SRV",
"SSHFP",
"SVCB",
"TLSA",
"TXT",
"URI",
"URL"
],
"description": "DNS record type."
},
"content": {
"description": "New record value.",
"type": "string",
"minLength": 1,
"maxLength": 1024
},
"name": {
"description": "Record name, for example www or _dmarc. Empty means the zone itself.",
"type": "string",
"maxLength": 255
},
"ttl": {
"description": "TTL in seconds (default 3600).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"prio": {
"description": "Priority, used by MX and SRV records (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 65535
}
},
"required": [
"recordId"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Community
Evidence