MCP Server

Aura

dev.rohnelt.aura/aura
MCP & Agent Infrastructure Public & reachable MCP 2025-11-25

What this MCP does

Provides agents with durable memory, email inboxes, webhooks, inter-agent signaling, and event-driven waiting or resumption.

await
Wait for something (burns zero tokens)
Block on an open HTTP connection until a trigger fires — an email arrives, a webhook is hit, another agent signals you, or a deadline passes. Returns the instant it happens. If nothing fires before the timeout, the call is refunded: you are only charged when something is actually delivered. When to use: Call INSTEAD of polling in a loop. A poll loop costs a full inference per iteration; waiting inside this single call costs you nothing beyond the flat fee. Use it for verification codes, callbacks and approvals that land within minutes. Price: US$0.004000 per call. This call blocks until it resolves; waiting inside it costs you no tokens.
Open world
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['on'], 'properties': {'on': {'oneOf': [{'type': 'object', 'required': ['type'], 'properties': {'from': {'type': 'string', 'maxLength': 320, 'description': 'Only match mail whose sender contains this.'}, 'type': {'type': 'string', 'const': 'email'}, 'match': {'type': 'string', 'maxLength': 200, 'description': 'Case-insensitive substring, or /regex/, matched against subject + body.'}, 'extract': {'enum': ['code', 'link', 'none'], 'type': 'string', 'default': 'code', 'description': 'Pull a verification code or the first confirmation link out of the message.'}}}, {'type': 'object', 'required': ['type', 'slug'], 'properties': {'slug': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'The webhook slug created with hook.create.'}, 'type': {'type': 'string', 'const': 'hook'}}}, {'type': 'object', 'required': ['type'], 'properties': {'name': {'type': 'string', 'maxLength': 64, 'description': 'Only match signals carrying this name.'}, 'type': {'type': 'string', 'const': 'signal'}}}, {'type': 'object', 'required': ['type', 'at'], 'properties': {'at': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$', 'description': 'Absolute ISO-8601 instant to fire at.'}, 'type': {'type': 'string', 'const': 'time'}}}], 'description': 'What to wait for.'}, 'timeout_seconds': {'type': 'integer', 'default': 300, 'maximum': 600, 'minimum': 1}, 'lookback_seconds': {'type': 'integer', 'default': 60, 'maximum': 3600, 'minimum': 0, 'description': 'Also match events that arrived this many seconds BEFORE the call. Covers the gap between submitting a form and starting to wait. Raise it if you were slow to call.'}}}
capabilities
Describe Aura
Return the full machine-readable manifest of Aura: every operation, its price in USD, its input schema and how to pay. Free. When to use: Call this first if you have never used Aura and want to know what it can do and what it costs. Price: Free.
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
credit_deposit
Top up balance
Pay USDC once and receive spendable Aura credit. Individual calls are far too cheap to settle on-chain one at a time, so you deposit once and Aura debits each call off-chain. When to use: Call when your balance is low, or when a paid call returns 402. A US$1 deposit covers hundreds of operations. Price: Free.
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'amount_usd': {'enum': ['1', '5', '20'], 'type': 'string', 'default': '1', 'description': 'How much credit to buy.'}}}
hook_create
Create a webhook URL
Mint a public URL that anyone can POST to. Deliveries become events you can await on. When to use: Call when a third-party service offers a callback and you have nowhere to receive it — you are not a server, Aura is. Price: US$0.001000 per call.
Open world
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'pattern': '^[a-z0-9][a-z0-9-]*$', 'maxLength': 64, 'minLength': 1, 'description': 'Path segment for the URL. Must be unique within your handle.'}, 'description': {'type': 'string', 'maxLength': 200}}}
identity_create
Claim an identity
Turn a wallet address into a permanent agent identity: a handle, a REAL email address that receives mail, a webhook URL, and an API token. Free, and grants a small trial credit. When to use: Call this once, before anything else. You need the returned token for every other call, and the email address is what lets you sign up for third-party services. Price: Free.
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['wallet', 'signature', 'message'], 'properties': {'label': {'type': 'string', 'maxLength': 80, 'description': 'Optional label shown on your public profile.'}, 'wallet': {'type': 'string', 'pattern': '^0x[a-fA-F0-9]{40}$', 'description': 'Your EVM wallet address. This is your permanent identity.'}, 'message': {'type': 'string', 'maxLength': 500, 'minLength': 8, 'description': 'The exact text you signed. Must contain your wallet address and an ISO-8601 timestamp no older than 10 minutes.'}, 'signature': {'type': 'string', 'pattern': '^0x[a-fA-F0-9]+$', 'description': 'EIP-191 personal_sign of the message field, proving you control the wallet.'}}}
inbox_list
List received mail
List messages delivered to your Aura email address, newest first. When to use: Call after signing up somewhere, to see what arrived. To block until mail lands, use await instead — it is far cheaper than polling this. Price: US$0.001000 per call.
Read only Open world
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'from': {'type': 'string', 'maxLength': 320}, 'limit': {'type': 'integer', 'default': 10, 'maximum': 50, 'minimum': 1}, 'unread_only': {'type': 'boolean', 'default': False}}}
inbox_read
Read a message
Return the full parsed body of one message, plus any verification code or confirmation link found in it. When to use: Call with an id from inbox.list when you need the full text or the link. Price: US$0.001000 per call.
Read only Open world
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'maxLength': 64, 'minLength': 1}}}
memory_delete
Forget
Delete a stored key. Free — keeping your own state tidy should never cost you. When to use: Call when a stored fact is stale or wrong. Price: Free.
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['key'], 'properties': {'key': {'type': 'string', 'maxLength': 200, 'minLength': 1}}}
memory_get
Recall by key
Fetch one stored value by its exact key. When to use: Call when you know the key you wrote earlier. Cheaper and more precise than memory.search. Price: US$0.000500 per call.
Read only
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['key'], 'properties': {'key': {'type': 'string', 'maxLength': 200, 'minLength': 1}}}
memory_list
List memory keys
List your stored keys with metadata, without returning the values. When to use: Call to see what you already know before deciding what to fetch. Price: US$0.000500 per call.
Read only
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'default': 50, 'maximum': 200, 'minimum': 1}, 'prefix': {'type': 'string', 'maxLength': 200}}}
memory_search
Search memory
Find stored memories by meaning rather than by exact key. When to use: Call when you remember roughly what you stored but not the key you used. Price: US$0.002000 per call.
Read only
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['q'], 'properties': {'q': {'type': 'string', 'maxLength': 500, 'minLength': 1, 'description': 'Natural-language description of what you are looking for.'}, 'tag': {'type': 'string', 'maxLength': 40}, 'limit': {'type': 'integer', 'default': 5, 'maximum': 25, 'minimum': 1}}}
memory_set
Remember something
Store a durable key/value fact bound to your wallet. Survives your process dying. When to use: Call whenever you learn something a later run will need: a decision, where a credential lives, a user preference, progress through a long task. Price: US$0.000800 per call.
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['key', 'value'], 'properties': {'key': {'type': 'string', 'maxLength': 200, 'minLength': 1, 'description': 'Stable identifier. Writing the same key overwrites it.'}, 'tags': {'type': 'array', 'items': {'type': 'string', 'maxLength': 40}, 'maxItems': 10}, 'value': {'type': 'string', 'maxLength': 64000, 'description': 'The content to remember.'}, 'ttl_seconds': {'type': 'integer', 'maximum': 31536000, 'minimum': 60, 'description': 'Auto-delete after this many seconds.'}}}
park
Park state and exit
Hand Aura your state plus a wake condition, then terminate. Aura holds the state, watches for the condition, and returns it byte-identical when you come back with resume. Optionally POSTs to a callback URL when it fires. When to use: Call when the wait outlasts your process — hours, days, or an approval that lands tomorrow. Cheaper and safer than staying alive. Price: US$0.005000 per call.
Open world
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['state', 'on'], 'properties': {'on': {'oneOf': [{'type': 'object', 'required': ['type'], 'properties': {'from': {'type': 'string', 'maxLength': 320, 'description': 'Only match mail whose sender contains this.'}, 'type': {'type': 'string', 'const': 'email'}, 'match': {'type': 'string', 'maxLength': 200, 'description': 'Case-insensitive substring, or /regex/, matched against subject + body.'}, 'extract': {'enum': ['code', 'link', 'none'], 'type': 'string', 'default': 'code', 'description': 'Pull a verification code or the first confirmation link out of the message.'}}}, {'type': 'object', 'required': ['type', 'slug'], 'properties': {'slug': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'The webhook slug created with hook.create.'}, 'type': {'type': 'string', 'const': 'hook'}}}, {'type': 'object', 'required': ['type'], 'properties': {'name': {'type': 'string', 'maxLength': 64, 'description': 'Only match signals carrying this name.'}, 'type': {'type': 'string', 'const': 'signal'}}}, {'type': 'object', 'required': ['type', 'at'], 'properties': {'at': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$', 'description': 'Absolute ISO-8601 instant to fire at.'}, 'type': {'type': 'string', 'const': 'time'}}}], 'description': 'What should wake you.'}, 'note': {'type': 'string', 'maxLength': 200, 'description': 'A reminder to your future self about what you were doing.'}, 'state': {'type': 'object', 'description': 'Arbitrary JSON you want back later. Returned exactly as given.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'callback_url': {'type': 'string', 'format': 'uri', 'description': 'If set, Aura POSTs the state and the event here when it fires.'}, 'expires_in_hours': {'type': 'integer', 'default': 72, 'maximum': 720, 'minimum': 1}}}
resume
Resume parked work
Claim state from a park whose trigger has fired. Returns the original state and the event that woke it. Free when nothing is ready, so calling it at the start of every run costs you nothing until it actually hands work back. When to use: Call at the START of every run. If a previous instance of you parked something and it fired, this hands the work back. If nothing is ready it tells you so, cheaply. Price: US$0.002000 per call. This call blocks until it resolves; waiting inside it costs you no tokens.
Open world
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'park_id': {'type': 'string', 'maxLength': 64, 'description': 'Claim one specific park. Omit to claim the oldest ready one.'}, 'wait_seconds': {'type': 'integer', 'default': 0, 'maximum': 600, 'minimum': 0, 'description': 'Optionally block up to this long for a park to become ready.'}}}
signal
Signal another agent
Send a named JSON message to another Aura agent by handle. They can await on it. When to use: Call to hand work to, or coordinate with, another agent without shared infrastructure. Price: US$0.002000 per call.
Open world
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['to'], 'properties': {'to': {'type': 'string', 'maxLength': 64, 'minLength': 3, 'description': 'Recipient Aura handle.'}, 'name': {'type': 'string', 'default': 'message', 'maxLength': 64, 'description': 'Signal name the recipient can filter on.'}, 'payload': {'type': 'object', 'default': {}, 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}}
whoami
Who am I
Return your handle, email address, webhook base URL, current balance and quota usage. Free. When to use: Call when you need your own email address, or to check your balance before spending. Price: Free.
Read only
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Added
resume
Sept. 17, 2026, 12:39 p.m.
Added
park
Sept. 17, 2026, 12:39 p.m.
Added
await
Sept. 17, 2026, 12:39 p.m.
Added
signal
Sept. 17, 2026, 12:39 p.m.
Added
hook_create
Sept. 17, 2026, 12:39 p.m.
Added
inbox_read
Sept. 17, 2026, 12:39 p.m.
Added
inbox_list
Sept. 17, 2026, 12:39 p.m.
Added
memory_delete
Sept. 17, 2026, 12:39 p.m.
Added
memory_list
Sept. 17, 2026, 12:39 p.m.
Added
memory_search
Sept. 17, 2026, 12:39 p.m.
Added
memory_get
Sept. 17, 2026, 12:39 p.m.
Added
memory_set
Sept. 17, 2026, 12:39 p.m.
Added
credit_deposit
Sept. 17, 2026, 12:39 p.m.
Added
whoami
Sept. 17, 2026, 12:39 p.m.
Added
identity_create
Sept. 17, 2026, 12:39 p.m.
Added
capabilities
Sept. 17, 2026, 12:39 p.m.