Agent-Native Calendar
Agent-Native Google Calendar - manage events, sync, and public booking
Descripción del creador (original en inglés)
Give AI agents a real email address, vault, calendar, and task delegation via MCP.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
AGENTLAIR_API_KEY, AuthorizationLos valores marcados como secretos son llaves de tu cuenta. Nunca los compartas ni los pegues en un chat.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Esta dirección necesita una clave en un header de la solicitud, y el menú para agregar conectores no puede ponerla. Usa Claude Code, Cursor o VS Code.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"agentlair": {
"command": "npx",
"args": [
"-y",
"@agentlair/mcp"
],
"env": {
"AGENTLAIR_API_KEY": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add --transport http agentlair https://agentlair-mcp-server.amdal-dev.workers.dev/mcp --header 'Authorization: your-value'claude mcp add agentlair --env AGENTLAIR_API_KEY=your-value -- npx -y @agentlair/mcpCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"agentlair": {
"url": "https://agentlair-mcp-server.amdal-dev.workers.dev/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"agentlair": {
"command": "npx",
"args": [
"-y",
"@agentlair/mcp"
],
"env": {
"AGENTLAIR_API_KEY": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"agentlair": {
"type": "http",
"url": "https://agentlair-mcp-server.amdal-dev.workers.dev/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"agentlair": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@agentlair/mcp"
],
"env": {
"AGENTLAIR_API_KEY": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Esta dirección necesita una clave en un header de la solicitud, y el menú para agregar conectores no puede ponerla. Usa Claude Code, Cursor o VS Code.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
Authorization secreto obligatorio HTTP headerEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Nombres y descripciones de las herramientas tal como los informó el servidor el 6 nov 2026. Los escribió el creador, no nosotros; los mostramos como texto sin formato.
send_emailSend an email from your AgentLair address (@agentlair.dev) to any recipient. No SMTP or DNS setup needed.
check_inboxCheck the inbox for an @agentlair.dev email address. Returns recent messages with sender, subject, and received time.
read_messageRead the full content of a specific email message, including the body text.
list_addressesList all @agentlair.dev email addresses associated with your API key.
claim_addressClaim a new @agentlair.dev email address for your agent. Free tier supports multiple addresses.
preflight_trust_checkCheck 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
vault_putStore 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).
vault_getRetrieve a stored value from the AgentLair Vault by key name.
vault_listList all keys stored in your AgentLair Vault (metadata only, values not returned).
vault_deleteDelete a key and all its versions from the AgentLair Vault.
calendar_create_eventCreate a calendar event on your AgentLair calendar. Events are published via iCal feed for human subscription (Google Calendar, Apple Calendar, Outlook).
calendar_list_eventsList events on your AgentLair calendar. Optionally filter by date range.
calendar_delete_eventDelete an event from your AgentLair calendar by event ID. Use calendar_list_events to find event IDs.
calendar_get_feedGet 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.
delegate_taskDelegate 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.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 7 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub piiiico, dueña del repo
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Respondió en 69 ms (HTTP 200)
No hace falta iniciar sesión
Leímos 15 descripciones de herramientas y no encontramos instrucciones ocultas para la IA
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 3 de 3 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
Debes completar: AGENTLAIR_API_KEY, Authorization
Funciona de las dos formas: instálalo en tu computadora o conéctate a la versión en la nube.
El repo de GitHub cambió por última vez –, y la última versión (1.3.1) llegó al registro anteayer.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. Se conecta por URL, así que también funcionan las apps que aceptan servidores MCP remotos, como ChatGPT en modo desarrollador.
En la misma categoría: Agent-Native Calendar, Excel MCP Server, MCP Server for Excel
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
Agent-Native Google Calendar - manage events, sync, and public booking
Create and edit Excel files with AI: charts, PivotTables, formulas. No Excel needed.
Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
Give your AI agent an email address, encrypted vault, and a behavioral trust score — one API, no OAuth required.
| Capability | Description |
|---|---|
Send and receive at @agentlair.dev. No OAuth, no human approval required. | |
| Vault | Encrypted credential storage. Client-side AES-GCM — the server stores ciphertext only. |
| Audit Trail | Every action logged with Ed25519 signatures. Tamper-evident, independently verifiable. Security findings get a permanent public URL — see a verified finding → |
| Trust Scoring | Behavioral score (0–100) derived from observed actions — consistency, restraint, transparency. |
| MCP Server | All capabilities available as MCP tools in Claude Code, Cursor, or any MCP client. |
| Pods | Namespace isolation for multi-agent or multi-tenant deployments. |
No signup. See what a live trust score response looks like:
# Healthy agent — high trust (score 84, principal level)
curl https://agentlair.dev/v1/demo
{
"agentId": "acc_demo_healthy_XXXXXXXXXX", "score": 84, "confidence": 0.91, "atfLevel": "principal", "trend": "stable", "dimensions": { "consistency": { "score": 0.82 }, "restraint": { "score": 0.87 }, "transparency": { "score": 0.80 } }, "observationCount": 1847 }
# Suspicious agent — score 31, declining trend
curl 'https://agentlair.dev/v1/demo?scenario=suspicious'
curl 'https://agentlair.dev/v1/demo?scenario=new'
Rate limited to 10 requests/minute per IP. Response shape matches the live /v1/trust/:agentId endpoint.
Full interactive demo — register a real agent, submit observations, get a live trust score (curl + jq, ~60 seconds):
curl -sL https://raw.githubusercontent.com/piiiico/agentlair/main/examples/quickstart.sh | bash
curl -X POST https://agentlair.dev/v1/auth/agent-register \
-H "Content-Type: application/json" \ -d '{"name": "my-research-agent"}'
{
"api_key": "al_live_...", "account_id": "acc_...", "email_address": "my-research-agent@agentlair.dev", "tier": "free", "limits": { "emails_per_day": 10, "requests_per_day": 100 }, "warning": "Save your API key — it will not be shown again." }
From here, the agent authenticates with api_key to send email, store credentials, and emit signed audit events.
1. Install
pip install agentlair # Python
npm install @agentlair/sdk # TypeScript / Node
2. Set env vars
export AGENTLAIR_API_KEY=al_live_...
export AGENTLAIR_EMAIL=my-agent@agentlair.dev
3. Wire lifecycle hooks
# Python — three integration points
import os, agentlair lair = agentlair.AgentLair(os.environ["AGENTLAIR_API_KEY"]) addr = os.environ["AGENTLAIR_EMAIL"]
async def on_session_start(ctx): result = await lair.email.inbox(addr) if result["messages"]: ctx.prepend(f"Inbox: {len(result['messages'])} unread")
async def send_message(to, subject, text): # expose as LLM tool await lair.email.send(from_address=addr, to=to, subject=subject, text=text)
async def on_session_end(ctx): # advance cursor so messages aren't re-delivered if ctx.last_message_id: await lair.vault.store("inbox_cursor", ctx.last_message_id)
// TypeScript
import { AgentLair } from '@agentlair/sdk'; const lair = new AgentLair(process.env.AGENTLAIR_API_KEY!); const addr = process.env.AGENTLAIR_EMAIL!;
// Session start — drain inbox before planning const { messages } = await lair.email.inbox(addr); if (messages.length) context.prepend(Inbox: ${messages.length} pending);
// Expose as tool — let the LLM send replies const sendMessage = (to: string, subject: string, text: string) => lair.email.send({ from: addr, to, subject, text });
Messages accumulate while offline and drain at next session start. For a complete plugin example (peek+ack, crash-safe delivery): hermes-agentlair.
npx @agentlair/mcp@latest
Adds 9 tools to your MCP client: agent registration, email send/receive, vault store/get, audit event emission, and trust score queries.
Agent memory is real infrastructure. 4-tier memory hierarchies, multi-agent leases, 51+ MCP tools for storing and retrieving across agent sessions. When multiple agents share a memory pool, the category works.
The gap: any agent can write anything to shared memory. No verification of who wrote what, no way to audit contested state, no trust gating on destructive writes. A shared memory pool without identity is a notepad anyone can scribble on.
Every write should be attributable. AgentLair's Agent Attestation Token (AAT) is a short-lived EdDSA JWT carrying the agent's did:web identity and behavioral trust score. Present it as the Authorization header in a memory write — the write is now cryptographically signed and auditable:
import { AgentLair } from '@agentlair/sdk';
const lair = new AgentLair(process.env.AGENTLAIR_API_KEY!);
// Issue a short-lived AAT (5 min) scoped to the memory server const { token } = await lair.tokens.issue({ audience: 'memory.internal', ttl: 300, scopes: ['memory:write'], });
// Write to shared memory — this write is now attributed and trust-gated await fetch('https://memory.internal/mcp/memory/write', { method: 'POST', headers: { 'Authorization': Bearer ${token}, // signed agent identity 'Content-Type': 'application/json', }, body: JSON.stringify({ key: 'research/competitor-analysis', value: { /* ... */ }, }), });
The memory server verifies the AAT via standard JWKS — no AgentLair SDK required on the receiving side. The al_trust claim lets it gate writes by behavioral trust level (e.g., reject writes from agents below junior).
Without AATs: shared memory = shared notepad. Any agent writes anything, contested state has no provenance. With AATs: shared memory = trust graph. Every write is signed, attributed, and auditable.
npm install @agentlair/sdk
TypeScript client for the AgentLair API. See agentlair.dev/getting-started.
Pro: $5/stack/month for higher limits.
@agentlair/vault-crypto. The server stores ciphertext only — no plaintext credentials at rest.We've been running our own agent infrastructure on AgentLair in production. Notes on what broke and what we learned building behavioral trust scoring: agentlair.dev/blog/from-0-to-41-building-behavioral-trust-in-production
AgentLair AAT is session identity inside the issuer. AEOESS APS is delegation chains and bilateral receipts after handoff. Three claims bridge the two layers: jti (session anchor on the APS receipt), al_nid (one Ed25519 key signs AATs *and* APS receipts), and al_trust (issuer-attested behavioral snapshot at iat, available for downgrade-on-import on the APS verifier side).
Jointly maintained reference:
packages/
worker/ — Core API worker (Cloudflare Workers) sdk/ — @agentlair/sdk client library mcp-server/ — @agentlair/mcp MCP server vault-crypto/ — @agentlair/vault-crypto end-to-end encryption verify/ — @agentlair/verify AAT token verification email-worker/ — Email processing worker
apps/ dashboard/ — Agent dashboard UI email-channel/ — Email MCP channel
bun install # install all dependencies
bun run typecheck # type-check all packages
MIT