Skip to main content
Glama
piiiico

@agentlair/mcp

by piiiico

AgentLair

Дайте вашему ИИ-агенту адрес электронной почты, зашифрованное хранилище и поведенческий рейтинг доверия — один API, без OAuth.

npm: @agentlair/mcp npm: @agentlair/sdk

Возможность

Описание

Электронная почта

Отправка и получение на @agentlair.dev. Без OAuth, без одобрения человека.

Хранилище

Зашифрованное хранение учетных данных. Клиентское AES-GCM — сервер хранит только шифротекст.

Аудит-журнал

Каждое действие регистрируется с подписями Ed25519. Защищено от подделки, независимо проверяемо. Находки по безопасности получают постоянный публичный URL — см. проверенную находку →

Оценка доверия

Поведенческий балл (0–100), вычисляемый на основе наблюдаемых действий — последовательность, сдержанность, прозрачность.

MCP-сервер

Все возможности доступны как MCP-инструменты в Claude Code, Cursor или любом MCP-клиенте.

Pods

Изоляция пространств имен для мультиагентных или мультитенантных развертываний.

Попробуйте за 30 секунд

Без регистрации. Посмотрите, как выглядит ответ с живым рейтингом доверия:

# 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'

# New agent — only 11 observations, wide confidence interval
curl 'https://agentlair.dev/v1/demo?scenario=new'

Ограничение: 10 запросов в минуту на IP. Формат ответа соответствует живому эндпоинту /v1/trust/:agentId.

Полное интерактивное демо — зарегистрируйте реального агента, отправьте наблюдения, получите живой рейтинг доверия (curl + jq, ~60 секунд):

curl -sL https://raw.githubusercontent.com/piiiico/agentlair/main/examples/quickstart.sh | bash

Related MCP server: agentmail

Регистрация агента

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."
}

После этого агент аутентифицируется с помощью api_key для отправки электронной почты, хранения учетных данных и создания подписанных событий аудита.

Быстрый старт: добавьте AgentLair в своего агента

1. Установка

pip install agentlair            # Python
npm install @agentlair/sdk       # TypeScript / Node

2. Задайте переменные окружения

export AGENTLAIR_API_KEY=al_live_...
export AGENTLAIR_EMAIL=my-agent@agentlair.dev

3. Подключите хуки жизненного цикла

# 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 });

Сообщения накапливаются в офлайне и отправляются при следующем запуске сессии. Полный пример плагина (peek+ack, доставка без потерь): hermes-agentlair.

MCP-сервер

npx @agentlair/mcp@latest

Добавляет 9 инструментов в ваш MCP-клиент: регистрация агента, отправка/получение почты, сохранение/получение из хранилища, создание событий аудита и запросы рейтинга доверия.

Памяти агента нужен слой доверия

Память агента — это реальная инфраструктура. Иерархии памяти из 4 уровней, мультиагентные аренды, 51+ MCP-инструмент для хранения и извлечения между сессиями агента. Когда несколько агентов используют общий пул памяти, категория работает.

Пробел: любой агент может записать что угодно в общую память. Нет проверки того, кто что записал, нет способа проверить оспариваемое состояние, нет ограничения доверия на деструктивные записи. Общий пул памяти без идентичности — это блокнот, в котором может писать кто угодно.

Каждая запись должна быть атрибутируемой. Токен аттестации агента AgentLair (AAT) — это кратковременный JWT на основе EdDSA, несущий идентичность агента did:web и его поведенческий рейтинг доверия. Предъявите его в заголовке Authorization при записи в память — запись теперь криптографически подписана и проверяема:

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: { /* ... */ },
  }),
});

Сервер памяти проверяет AAT через стандартный JWKS — SDK AgentLair на принимающей стороне не требуется. Утверждение al_trust позволяет ограничивать записи по уровню поведенческого доверия (например, отклонять записи от агентов ниже junior).

Без AAT: общая память = общий блокнот. Любой агент пишет что угодно, оспариваемое состояние не имеет происхождения.
С AAT: общая память = граф доверия. Каждая запись подписана, атрибутирована и проверяема.

SDK

npm install @agentlair/sdk

TypeScript-клиент для API AgentLair. См. agentlair.dev/getting-started.

Бесплатный тариф

  • 10 писем в день

  • 100 запросов API в день

  • 10 адресов электронной почты

Pro: $5/стек/месяц за более высокие лимиты.

Архитектура

  • API: Cloudflare Workers — развертывание на периферии, низкая задержка

  • Состояние: Cloudflare KV

  • Шифрование хранилища: клиентское AES-GCM через @agentlair/vault-crypto. Сервер хранит только шифротекст — никаких открытых учетных данных в состоянии покоя.

  • Аудит-журнал: цепочки событий с подписью Ed25519. Каждое событие независимо проверяемо без доверия к серверу.

Мы сами запускаем собственную агентскую инфраструктуру на AgentLair в продакшене. Заметки о том, что сломалось и что мы узнали при создании поведенческой оценки доверия: agentlair.dev/blog/from-0-to-41-building-behavioral-trust-in-production

Документация

agentlair.dev/getting-started

Граница AAT × APS (межпротокольная ссылка)

AAT AgentLair — это идентичность сессии внутри эмитента. AEOESS APS — это цепочки делегирования и двусторонние квитанции после передачи. Три утверждения связывают два уровня: jti (якорь сессии в квитанции APS), al_nid (один ключ Ed25519 подписывает AAT и квитанции APS) и al_trust (подтвержденный эмитентом поведенческий снимок на момент iat, доступный для понижения при импорте на стороне верификатора APS).

Совместно поддерживаемая ссылка:

Структура репозитория

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

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to use email, instant messaging, and cloud file storage via MCP tools, giving each agent a verified identity with its own email address, real-time chat, and file sharing capabilities.
    176 npm
    1
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Provides AI agents with compliance screening (OFAC sanctions, risk scoring, Know-Your-Agent) plus disposable email and SMS verification for OTPs, accessible via MCP tools, HTTP API, and CLI.
    10
    2
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to send and receive signed/encrypted mail at agent@domain addresses, manage store-and-forward mailboxes, and operate a double-entry ledger with escrow and bond contracts through MCP tools.
    36 npm
    Apache 2.0
  • A
    license
    A
    quality
    B
    maintenance
    Enables AI agents to manage identity, permissions, secrets, and verifiable proofs through a hosted MCP server, letting clients sign in and check what an agent may do before it acts.
    15
    13 npm
    Apache 2.0