Skip to main content
Glama
fastpanel-mcp

fastpanel-mcp

email_domain_dkim_get

Read-onlyIdempotent

Retrieve a domain's DKIM DNS record details—name, type, and TXT public key—to publish or verify DKIM when DNS is hosted outside the panel.

Instructions

Get the DKIM DNS record (name, type, TXT content with the public key) for an email domain. Maps to GET /api/email/domains/{domain_id}/dkim. Use it to publish/verify the DKIM record when DNS is hosted outside the panel.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "domain_id": "<domain_id>"
    },
    "name": "email_domain_dkim_get"
  }
}

Input Schema

NameRequiredDescriptionDefault
domain_idYesEmail domain id from email_domains_list

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.3.0

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive and open-world, so the safety profile is covered. The description adds value beyond that by disclosing the shape of what comes back (a DNS record with public key) and mapping it to a GET endpoint, though it does not discuss failure modes when no DKIM is configured.

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

Conciseness5/5

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

Three short sentences, front-loaded with the purpose, then the returned content, then the use case. Nothing is redundant and every sentence carries information the agent needs.

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?

With no output schema, the description correctly compensates by naming the fields returned. For a read-only, single-parameter lookup this is nearly complete; only an edge case note (e.g. what happens if DKIM is not yet configured) is missing.

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?

There is a single parameter with 100% schema description coverage, and the schema already tells the agent it is an 'Email domain id from email_domains_list.' The description does not add format or sourcing detail beyond that, so the baseline of 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?

The description states a specific verb and resource ('Get the DKIM DNS record ... for an email domain') and enumerates the returned fields (name, type, TXT content with public key). It even names the underlying endpoint, so an agent knows exactly what this tool retrieves and how it differs from domain-listing siblings.

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

Usage Guidelines4/5

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

It gives a clear usage context: publish/verify the DKIM record 'when DNS is hosted outside the panel.' There is no explicit when-not or named alternative, but the condition that selects this tool is stated plainly and the schema points to email_domains_list for the id.

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