Skip to main content
Glama

create_cloudflare_dns_record

Create a DNS record in one of the organisation's Cloudflare domains. The record is written into the customer's own Cloudflare account and takes effect for real traffic, so confirm the domain and the content with the user before calling. 'name' may be a bare label (qualified against the domain), a fully-qualified name inside the domain, or '@' for the domain apex; a name outside the domain is refused. Records Ankra creates are stamped with a 'Managed by Ankra' comment. Use list_cloudflare_dns_records first to check the name is not already taken - Cloudflare refuses an exact duplicate.

Input Schema

NameRequiredDescriptionDefault
ttlNoRecord TTL in seconds (60-86400), or 1 for Cloudflare's automatic TTL. Omit for automatic. A proxied record's TTL is managed by Cloudflare and must be left automatic.
nameYesRecord name: a bare label such as 'grafana', a fully-qualified name inside the domain, or '@' for the apex.
commentNoOptional comment stored on the record. Defaults to 'Managed by Ankra'.
contentYesRecord value: an IPv4 address for A, an IPv6 address for AAAA, a target hostname for CNAME, the text for TXT, the mail host for MX.
proxiedNoWhether Cloudflare's proxy (the orange cloud) fronts the record. Only A, AAAA and CNAME records can be proxied. Proxying hides the origin address and terminates TLS at Cloudflare; leave false to resolve straight to the origin.
priorityNoPriority (0-65535). Required for MX records; rejected for every other supported type.
domain_idYesCloudflare zone id of the domain. Discover ids with list_cloudflare_domains.
record_typeYesRecord type.
credential_nameNoWhich connected Cloudflare credential to use. Omit unless the organisation has several; with one connected credential Ankra resolves it automatically.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only state readOnly=false, idempotent=false, destructive=false. The description adds substantial context well beyond them: the record is written into the customer's own Cloudflare account and affects real traffic, duplicates are refused (consistent with idempotentHint=false), and created records are stamped 'Managed by Ankra'. It also repeats 'Managed by Ankra' with a user-confirmation requirement, which is meaningful operational guidance.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four tight sentences, front-loaded with the action and the confirmation requirement, then the naming rules and duplicate check. Some content duplicates the schema (name forms, comment default), which costs a little, but there is no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 9-parameter mutation with no output schema and a low-bar annotation set, the description covers side effects, prerequisites, naming rules, and failure modes well. It stops short of stating what a successful call returns or the credential/permission requirements, though credential_name is documented in the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all nine parameters including the name forms and the comment default. The description largely restates the name-qualification rules ('bare label', 'fully-qualified', '@' apex) and the 'Managed by Ankra' default rather than adding new semantic detail, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource – 'Create a DNS record in one of the organisation's Cloudflare domains' – and scopes it clearly against the sibling DNS tools (list/update/delete). An agent immediately knows this is the creation path and which resource family it touches.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit conditions: confirm the domain and content with the user first, and call list_cloudflare_dns_records beforehand to check the name is not already taken because Cloudflare refuses an exact duplicate. It also names a when-not case (a name outside the domain is refused), leaving nothing to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources