agmail
Email inboxes for agents by the hour: wait for a mail, get the code or link. Pay per call.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"agmail": {
"url": "https://agmail.shveik.dev/mcp"
}
}
}Puntos de conexión remotos
https://agmail.shveik.dev/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (9)
🟢check_name(name)
Check whether a name is free to use as the local part of an address, before buying an inbox. Free.
Esquema de entrada
{
"type": "object",
"properties": {
"name": {
"description": "the local part, 3 to 32 characters: letters, digits, dots, dashes, underscores",
"type": "string"
}
},
"required": [
"name"
],
"additionalProperties": false
}🟡create_inbox(duration, name)
Buy an email address for an hour, four hours or a day: [email protected] with the name you choose (or a random one). Paid in stablecoins with x402: call it without a payment to get the quote, then again with the signed payment in _meta. The result has the inbox id and the secret (shown once, keep it); the inbox takes mail once the payment has settled.
Esquema de entrada
{
"type": "object",
"properties": {
"duration": {
"description": "how long the inbox lasts: 1h, 4h or 24h",
"enum": [
"1h",
"4h",
"24h"
],
"type": "string"
},
"name": {
"description": "the local part of the address; omit it for a random name",
"type": "string"
}
},
"required": [
"duration"
],
"additionalProperties": false
}🟡extend_inbox(duration, inbox_id, secret)
Extend an inbox you own by one, four or twenty-four hours, keeping its address and its mail. Paid in stablecoins with x402 like create_inbox. Needs the inbox id and its secret. An inbox cannot be paid for more than 72 hours ahead.
Esquema de entrada
{
"type": "object",
"properties": {
"duration": {
"description": "how long the inbox lasts: 1h, 4h or 24h",
"enum": [
"1h",
"4h",
"24h"
],
"type": "string"
},
"inbox_id": {
"description": "the inbox id returned by create_inbox",
"type": "string"
},
"secret": {
"description": "the inbox secret returned by create_inbox",
"type": "string"
}
},
"required": [
"inbox_id",
"secret",
"duration"
],
"additionalProperties": false
}🟢wait_for_message(after, from, inbox_id, secret, subject_contains, ...)
Wait until a message arrives in an inbox (up to 55 seconds) and return it with its text, codes and links. Returns at once if a matching message is already there. Free; needs the inbox id and secret.
Esquema de entrada
{
"type": "object",
"properties": {
"after": {
"description": "only a message with a sequence number above this (the seq of the last one you saw)",
"type": "integer"
},
"from": {
"description": "only a message whose sender contains this text",
"type": "string"
},
"inbox_id": {
"description": "the inbox id returned by create_inbox",
"type": "string"
},
"secret": {
"description": "the inbox secret returned by create_inbox",
"type": "string"
},
"subject_contains": {
"description": "only a message whose subject contains this text",
"type": "string"
},
"timeout": {
"default": 30,
"description": "seconds to wait for a message",
"maximum": 55,
"minimum": 1,
"type": "integer"
}
},
"required": [
"inbox_id",
"secret"
],
"additionalProperties": false
}🟢get_otp(after, from, inbox_id, secret, subject_contains, ...)
Wait for a message that carries a verification code or link and return only the code and the link. Free; needs the inbox id and secret.
Esquema de entrada
{
"type": "object",
"properties": {
"after": {
"description": "only a message with a sequence number above this (the seq of the last one you saw)",
"type": "integer"
},
"from": {
"description": "only a message whose sender contains this text",
"type": "string"
},
"inbox_id": {
"description": "the inbox id returned by create_inbox",
"type": "string"
},
"secret": {
"description": "the inbox secret returned by create_inbox",
"type": "string"
},
"subject_contains": {
"description": "only a message whose subject contains this text",
"type": "string"
},
"timeout": {
"default": 30,
"description": "seconds to wait for a message",
"maximum": 55,
"minimum": 1,
"type": "integer"
}
},
"required": [
"inbox_id",
"secret"
],
"additionalProperties": false
}🟢list_messages(after, inbox_id, limit, secret)
List the messages of an inbox (sender, subject, size) after a sequence number. Free; needs the inbox id and secret.
Esquema de entrada
{
"type": "object",
"properties": {
"after": {
"description": "only messages with a sequence number above this",
"type": "integer"
},
"inbox_id": {
"description": "the inbox id returned by create_inbox",
"type": "string"
},
"limit": {
"default": 50,
"maximum": 100,
"minimum": 1,
"type": "integer"
},
"secret": {
"description": "the inbox secret returned by create_inbox",
"type": "string"
}
},
"required": [
"inbox_id",
"secret"
],
"additionalProperties": false
}🟢read_message(inbox_id, message_id, secret)
Read one message of an inbox: its text, codes, links and attachment names. Free; needs the inbox id and secret.
Esquema de entrada
{
"type": "object",
"properties": {
"inbox_id": {
"description": "the inbox id returned by create_inbox",
"type": "string"
},
"message_id": {
"description": "the message id from list_messages",
"type": "string"
},
"secret": {
"description": "the inbox secret returned by create_inbox",
"type": "string"
}
},
"required": [
"inbox_id",
"secret",
"message_id"
],
"additionalProperties": false
}🔴delete_inbox(inbox_id, secret)
Delete an inbox and all its mail now. There is no refund. Free; needs the inbox id and secret.
Esquema de entrada
{
"type": "object",
"properties": {
"inbox_id": {
"description": "the inbox id returned by create_inbox",
"type": "string"
},
"secret": {
"description": "the inbox secret returned by create_inbox",
"type": "string"
}
},
"required": [
"inbox_id",
"secret"
],
"additionalProperties": false
}⚪feedback(contact, kind, message, route)
Free. Tell the people who run this service what worked, what failed or what you miss: a bug, an idea or a thanks. A person reads it. No payment, no account; limited to a few messages an hour.
Esquema de entrada
{
"type": "object",
"properties": {
"contact": {
"description": "optional: how we can reach you or your operator",
"maxLength": 200,
"type": "string"
},
"kind": {
"default": "other",
"enum": [
"bug",
"idea",
"praise",
"other"
],
"type": "string"
},
"message": {
"description": "what worked, what did not, what you miss; no secrets or private data",
"maxLength": 2000,
"type": "string"
},
"route": {
"description": "the route the feedback is about, if any",
"enum": [
"inbox-1h",
"inbox-1h-renew",
"inbox-4h",
"inbox-4h-renew",
"inbox-24h",
"inbox-24h-renew"
],
"type": "string"
}
},
"required": [
"message"
],
"additionalProperties": false
}Comunidad
Evidencia