agentlair
Give AI agents a real email address, vault, calendar, and task delegation via MCP.
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"agentlair": {
"command": "npx",
"args": [
"@agentlair/mcp"
]
}
}
}Ausführbare Pakete
1.3.0stdioRemote-Endpunkte
https://agentlair-mcp-server.amdal-dev.workers.dev/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (15)
🟡send_email(from, to, subject, text, html, ...)
Send an email from your AgentLair address (@agentlair.dev) to any recipient. No SMTP or DNS setup needed.
Eingabe-Schema
{
"type": "object",
"properties": {
"from": {
"type": "string",
"description": "Sender address — must be an @agentlair.dev address you own (e.g. [email protected])"
},
"to": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of recipient email addresses"
},
"subject": {
"type": "string",
"description": "Email subject line"
},
"text": {
"type": "string",
"description": "Plain text body of the email"
},
"html": {
"type": "string",
"description": "Optional HTML body (supplement to text)"
},
"cc": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional CC recipient addresses"
}
},
"required": [
"from",
"to",
"subject",
"text"
]
}🟢check_inbox(address, limit)
Check the inbox for an @agentlair.dev email address. Returns recent messages with sender, subject, and received time.
Eingabe-Schema
{
"type": "object",
"properties": {
"address": {
"type": "string",
"description": "The @agentlair.dev address to check (e.g. [email protected])"
},
"limit": {
"type": "number",
"description": "Max number of messages to return (default: 10, max: 50)"
}
},
"required": [
"address"
]
}🟢read_message(message_id, address)
Read the full content of a specific email message, including the body text.
Eingabe-Schema
{
"type": "object",
"properties": {
"message_id": {
"type": "string",
"description": "The message_id from check_inbox (angle brackets will be stripped automatically)"
},
"address": {
"type": "string",
"description": "The @agentlair.dev address this message was delivered to"
}
},
"required": [
"message_id",
"address"
]
}🟢list_addresses
List all @agentlair.dev email addresses associated with your API key.
Eingabe-Schema
{
"type": "object",
"properties": {},
"required": []
}⚪claim_address(address)
Claim a new @agentlair.dev email address for your agent. Free tier supports multiple addresses.
Eingabe-Schema
{
"type": "object",
"properties": {
"address": {
"type": "string",
"description": "The address to claim (must end in @agentlair.dev, e.g. [email protected])"
}
},
"required": [
"address"
]
}🟢preflight_trust_check(agent_id)
Check trust readiness before engaging with an agent. Returns a ReadinessCard: trust score, behavioral maturity level, whether it's safe to engage, and any caveats. Call this before delegating tasks, accepting agent output, or authorizing payments involving an unknown agent. Free — no extra charge beyond your API key.
Eingabe-Schema
{
"type": "object",
"properties": {
"agent_id": {
"type": "string",
"description": "AgentLair agent ID to check (format: acc_<alphanumeric>). Found via the agent's AgentLair profile or DID document."
}
},
"required": [
"agent_id"
]
}🟡vault_put(key, value, metadata)
Store a value in the AgentLair Vault. Use this to persist API keys, secrets, or any data your agent needs across sessions. Best practice: encrypt sensitive data client-side before storing (the server stores whatever you send).
Eingabe-Schema
{
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "Vault key name (1-128 chars, alphanumeric + _ - .). Examples: 'openai-key', 'session_token', 'config.json'"
},
"value": {
"type": "string",
"description": "Value to store. For secrets: encrypt first, then store the ciphertext."
},
"metadata": {
"type": "object",
"description": "Optional JSON metadata (labels, timestamps, etc.) — never encrypted"
}
},
"required": [
"key",
"value"
]
}🟢vault_get(key)
Retrieve a stored value from the AgentLair Vault by key name.
Eingabe-Schema
{
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "Vault key name to retrieve"
}
},
"required": [
"key"
]
}🟢vault_list
List all keys stored in your AgentLair Vault (metadata only, values not returned).
Eingabe-Schema
{
"type": "object",
"properties": {},
"required": []
}🔴vault_delete(key)
Delete a key and all its versions from the AgentLair Vault.
Eingabe-Schema
{
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "Vault key name to delete"
}
},
"required": [
"key"
]
}🟡calendar_create_event(summary, start, end, description, location, ...)
Create a calendar event on your AgentLair calendar. Events are published via iCal feed for human subscription (Google Calendar, Apple Calendar, Outlook).
Eingabe-Schema
{
"type": "object",
"properties": {
"summary": {
"type": "string",
"description": "Event title / summary (required)"
},
"start": {
"type": "string",
"description": "Event start time in ISO 8601 format. Date-only (\"2026-03-20\") or datetime (\"2026-03-20T14:00:00Z\")"
},
"end": {
"type": "string",
"description": "Event end time in ISO 8601 format. Date-only (\"2026-03-21\") or datetime (\"2026-03-20T15:00:00Z\")"
},
"description": {
"type": "string",
"description": "Optional event description / notes"
},
"location": {
"type": "string",
"description": "Optional event location (address, URL, or room name)"
},
"attendees": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional list of attendee email addresses"
}
},
"required": [
"summary",
"start",
"end"
]
}🟢calendar_list_events(from, to)
List events on your AgentLair calendar. Optionally filter by date range.
Eingabe-Schema
{
"type": "object",
"properties": {
"from": {
"type": "string",
"description": "Optional start of date range filter (ISO 8601, e.g. \"2026-03-01\")"
},
"to": {
"type": "string",
"description": "Optional end of date range filter (ISO 8601, e.g. \"2026-03-31\")"
}
},
"required": []
}🔴calendar_delete_event(id)
Delete an event from your AgentLair calendar by event ID. Use calendar_list_events to find event IDs.
Eingabe-Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Event ID to delete (e.g. evt_abc123...)"
}
},
"required": [
"id"
]
}🟢calendar_get_feed
Get the public iCal subscription URL for your AgentLair calendar. Share this URL with calendar apps (Google Calendar, Apple Calendar, Outlook) so humans can subscribe and see agent-created events.
Eingabe-Schema
{
"type": "object",
"properties": {},
"required": []
}🟡delegate_task(to, task, context, priority, constraints)
Delegate a task to another AgentLair agent. The task is delivered to the agent's inbox and picked up asynchronously. Use this when you need another agent to do something — send an email, run a deployment, do research, etc.
Eingabe-Schema
{
"type": "object",
"properties": {
"to": {
"type": "string",
"description": "Target agent's AgentLair email (e.g. [email protected])"
},
"task": {
"type": "string",
"description": "What to do — be specific and self-contained. The receiving agent has no context from your conversation."
},
"context": {
"type": "string",
"description": "Background information the agent needs to execute the task"
},
"priority": {
"type": "string",
"enum": [
"low",
"normal",
"high",
"urgent"
],
"description": "Task priority (default: normal)"
},
"constraints": {
"type": "string",
"description": "Timing constraints, requirements, or limits"
}
},
"required": [
"to",
"task"
]
}Community
Nachweis