Email — canonical payload contracts
Validate and inspect email addresses (syntax, MX via dig, disposable, role). Does not send mail.
Service id: email
Docs: https://mcp.glc-rag.hu/guide/email
Markdown docs: https://mcp.glc-rag.hu/guide/email.md
MCP resource: docs://email/payload
POST https://mcp.glc-rag.hu/mcp. Values below are type slots from the live input schema (e.g. <string, required>), not example data. Fill them from the user task.
RPC result wrapper: result.structuredContent is the object in Output schema. result.isError mirrors structuredContent.is_error.
email_normalize
Normalize email (lowercase, IDNA domain). Optional Gmail dot/+ strip flags.
Required arguments: email
Request contract
{
"jsonrpc": "2.0",
"id": "<integer|string>",
"method": "tools/call",
"params": {
"name": "email_normalize",
"arguments": {
"email": "<string, required>",
"gmail_dots": "<boolean, optional, default False>",
"strip_plus": "<boolean, optional, default False>"
}
}
}
Input schema
{
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "Email address to inspect"
},
"gmail_dots": {
"type": "boolean",
"default": false
},
"strip_plus": {
"type": "boolean",
"default": false
}
},
"required": [
"email"
],
"additionalProperties": false
}
Output schema (structuredContent on success)
{
"type": "object",
"properties": {
"email": {
"type": "string"
},
"normalized": {
"type": "string"
}
},
"additionalProperties": true
}
Error object
{
"type": "object",
"required": [
"error",
"is_error"
],
"properties": {
"error": {
"type": "string"
},
"is_error": {
"type": "boolean",
"const": true
}
},
"additionalProperties": true
}
email_validate
Syntax/sanity validation only (no DNS).
Required arguments: email
Request contract
{
"jsonrpc": "2.0",
"id": "<integer|string>",
"method": "tools/call",
"params": {
"name": "email_validate",
"arguments": {
"email": "<string, required>"
}
}
}
Input schema
{
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "Email address to inspect"
}
},
"required": [
"email"
],
"additionalProperties": false
}
Output schema (structuredContent on success)
{
"type": "object",
"properties": {
"email": {
"type": "string"
},
"ok": {
"type": "boolean"
},
"valid": {
"type": "boolean"
},
"result": {
"type": "boolean"
}
},
"additionalProperties": true
}
Error object
{
"type": "object",
"required": [
"error",
"is_error"
],
"properties": {
"error": {
"type": "string"
},
"is_error": {
"type": "boolean",
"const": true
}
},
"additionalProperties": true
}
email_domain_check
Domain label/IDN check; optional A/AAAA resolve via dig.
Required arguments: (none)
Request contract
{
"jsonrpc": "2.0",
"id": "<integer|string>",
"method": "tools/call",
"params": {
"name": "email_domain_check",
"arguments": {
"email": "<string, optional>",
"domain": "<string, optional>",
"resolve_a": "<boolean, optional, default False>",
"timeout_ms": "<integer, optional, default 2000, minimum 500, maximum 5000>"
}
}
}
Input schema
{
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "Email address to inspect"
},
"domain": {
"type": "string",
"description": "Domain only (if email omitted)"
},
"resolve_a": {
"type": "boolean",
"default": false
},
"timeout_ms": {
"type": "integer",
"minimum": 500,
"maximum": 5000,
"default": 2000
}
},
"additionalProperties": false
}
Output schema (structuredContent on success)
{
"type": "object",
"properties": {
"email": {
"type": "string"
},
"ok": {
"type": "boolean"
},
"valid": {
"type": "boolean"
},
"result": {
"type": "boolean"
}
},
"additionalProperties": true
}
Error object
{
"type": "object",
"required": [
"error",
"is_error"
],
"properties": {
"error": {
"type": "string"
},
"is_error": {
"type": "boolean",
"const": true
}
},
"additionalProperties": true
}
email_mx_check
MX lookup via Linux dig (A/AAAA fallback). No SMTP.
Required arguments: (none)
Request contract
{
"jsonrpc": "2.0",
"id": "<integer|string>",
"method": "tools/call",
"params": {
"name": "email_mx_check",
"arguments": {
"email": "<string, optional>",
"domain": "<string, optional>",
"timeout_ms": "<integer, optional, default 2000, minimum 500, maximum 5000>"
}
}
}
Input schema
{
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "Email address to inspect"
},
"domain": {
"type": "string"
},
"timeout_ms": {
"type": "integer",
"minimum": 500,
"maximum": 5000,
"default": 2000
}
},
"additionalProperties": false
}
Output schema (structuredContent on success)
{
"type": "object",
"properties": {
"email": {
"type": "string"
},
"ok": {
"type": "boolean"
},
"valid": {
"type": "boolean"
},
"result": {
"type": "boolean"
}
},
"additionalProperties": true
}
Error object
{
"type": "object",
"required": [
"error",
"is_error"
],
"properties": {
"error": {
"type": "string"
},
"is_error": {
"type": "boolean",
"const": true
}
},
"additionalProperties": true
}
email_disposable_check
Check local disposable/temp email domain list.
Required arguments: email
Request contract
{
"jsonrpc": "2.0",
"id": "<integer|string>",
"method": "tools/call",
"params": {
"name": "email_disposable_check",
"arguments": {
"email": "<string, required>"
}
}
}
Input schema
{
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "Email address to inspect"
}
},
"required": [
"email"
],
"additionalProperties": false
}
Output schema (structuredContent on success)
{
"type": "object",
"properties": {
"email": {
"type": "string"
},
"ok": {
"type": "boolean"
},
"valid": {
"type": "boolean"
},
"result": {
"type": "boolean"
}
},
"additionalProperties": true
}
Error object
{
"type": "object",
"required": [
"error",
"is_error"
],
"properties": {
"error": {
"type": "string"
},
"is_error": {
"type": "boolean",
"const": true
}
},
"additionalProperties": true
}
email_role_detect
Detect role/shared local-parts (admin, noreply, support, …).
Required arguments: email
Request contract
{
"jsonrpc": "2.0",
"id": "<integer|string>",
"method": "tools/call",
"params": {
"name": "email_role_detect",
"arguments": {
"email": "<string, required>"
}
}
}
Input schema
{
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "Email address to inspect"
}
},
"required": [
"email"
],
"additionalProperties": false
}
Output schema (structuredContent on success)
{
"type": "object",
"properties": {
"email": {
"type": "string"
},
"ok": {
"type": "boolean"
},
"valid": {
"type": "boolean"
},
"result": {
"type": "boolean"
}
},
"additionalProperties": true
}
Error object
{
"type": "object",
"required": [
"error",
"is_error"
],
"properties": {
"error": {
"type": "string"
},
"is_error": {
"type": "boolean",
"const": true
}
},
"additionalProperties": true
}
email_status
Email service health: dig path, list sizes, DNS limits.
Required arguments: (none)
Request contract
{
"jsonrpc": "2.0",
"id": "<integer|string>",
"method": "tools/call",
"params": {
"name": "email_status",
"arguments": {}
}
}
Input schema
{
"type": "object",
"properties": {},
"additionalProperties": false
}
Output schema (structuredContent on success)
{
"type": "object",
"properties": {
"ok": {
"type": "boolean"
}
},
"additionalProperties": true,
"required": [
"ok"
]
}
Error object
{
"type": "object",
"required": [
"error",
"is_error"
],
"properties": {
"error": {
"type": "string"
},
"is_error": {
"type": "boolean",
"const": true
}
},
"additionalProperties": true
}