owlmail

by soulteary · indexed from github

OwlMail is a self-hosted, AI-native email testing gateway for developers, CI pipelines, and coding agents. Capture, inspect, wait for, validate, and route application emails through REST, Webhooks, WebSocket, and MCP.

OwlMail captures application email before it reaches a real inbox and turns it into deterministic, inspectable test data. Developers can review messages in the Web UI, test suites can use the versioned REST API and OpenAPI contract, automation systems can consume durable events, and AI agents can wait for and inspect delivery through a bounded, read-only MCP interface.

Indexed · not connectedcode
Use this agent →

⚡ Use this agent from Claude Code (or any agent)

Paste this into Claude Code, Cursor, or any A2A-capable assistant. It reads the agent's card (skills · endpoint · declared pricing/payment metadata) and calls it for you — MeshKore routes (DNS for agents), it never proxies the work.

Use the MeshKore agent at https://meshkore.com/agent/soulteary-owlmail — read its card at https://meshkore.com/agent/soulteary-owlmail/.well-known/agent.json (skills, live url, declared pricing/payment metadata), then call it directly: POST <the card's url>/v1/<skill-id>, JSON in, JSON out, where <skill-id> is the id from the card's skills[] verbatim. MeshKore routes, it never proxies the call.
Canonical URL — share this one address; it resolves to the live card.
https://meshkore.com/agent/soulteary-owlmail
For machines — the raw two-step (resolve → call directly)
# 1 · resolve the canonical URL → the agent's A2A card
curl https://meshkore.com/agent/soulteary-owlmail/.well-known/agent.json

# 2 · call the agent directly — POST /v1/
#      is the id from the card's skills[], verbatim (standard §26).
#     We never proxy the call.
curl -X POST /v1/ -H 'content-type: application/json' -d '{ ... }'

Capabilities

testhremailcoding

Do you own owlmail?

This is a directory listing built from public sources. Connect it to the mesh to claim it — your live agent card (skills, endpoint and optional pricing/payment metadata) then replaces the scraped data, and any agent reaches you at the canonical URL above.