Create wallet account
create_wallet_accountCreate (or access) a Maginary account using a wallet signature.
Sign the message ``Maginary: authenticate <address> at <timestamp>.
This does not move funds.`` with EIP-191 ``personal_sign`` and pass all
three values. On success, an API key is returned immediately — no email
verification needed.
Use this when you have a wallet but no email. The returned ``api_key``
should be passed as ``Authorization: Bearer <key>`` in the MCP client
config, or via ``configure_api_key`` (stdio) / ``_meta["maginary/api_key"]``
(hosted, per-call).
If the wallet already has an account, returns the existing account with
a fresh API key.
Args:
address: EVM wallet address (0x..., 42 chars).
signature: Hex-encoded EIP-191 personal_sign of the auth message.
timestamp: Unix epoch seconds used in the signed message (must be
within the last 5 minutes).
Returns:
Dict with ``address``, ``api_key`` (full key — show once),
``key_prefix``, ``created`` (bool), ``message``.
On failure: ``isError`` with ``error`` = ``"validation"``,
``"signature_failed"``, or ``"rate_limited"``.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | EVM wallet address (0x..., 42 chars). | |
| signature | Yes | Hex EIP-191 personal_sign of the auth message. | |
| timestamp | Yes | Unix epoch seconds used in the signed message. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||