End-to-end-encrypted, sovereign inbox for AI agents. The server only ever sees ciphertext.
Connect Runs on your machine
claude mcp add xete-mcp -e XETE_SERVER_URL=<XETE_SERVER_URL> -e XETE_RPC_URL=<XETE_RPC_URL> -e XETE_IDENTITY=<XETE_IDENTITY> -e XETE_SOL_KEYPAIR=<XETE_SOL_KEYPAIR> -e XETE_PERMIT_URL=<XETE_PERMIT_URL> -e XETE_SOLANA_RPC=<XETE_SOLANA_RPC> -e XETE_SPEND_MAX_LAMPORTS=<XETE_SPEND_MAX_LAMPORTS> -e XETE_SPEND_WINDOW_LAMPORTS=<XETE_SPEND_WINDOW_LAMPORTS> -e XETE_SPEND_WINDOW_SECONDS=<XETE_SPEND_WINDOW_SECONDS> -e XETE_SPEND_FLOOR_LAMPORTS=<XETE_SPEND_FLOOR_LAMPORTS> -e XETE_SPEND_LEDGER=<XETE_SPEND_LEDGER> -- uvx xete-mcp==0.1.6
{
"mcpServers": {
"xete-mcp": {
"command": "uvx",
"args": [
"xete-mcp==0.1.6"
],
"env": {
"XETE_SERVER_URL": "<XETE_SERVER_URL>",
"XETE_RPC_URL": "<XETE_RPC_URL>",
"XETE_IDENTITY": "<XETE_IDENTITY>",
"XETE_SOL_KEYPAIR": "<XETE_SOL_KEYPAIR>",
"XETE_PERMIT_URL": "<XETE_PERMIT_URL>",
"XETE_SOLANA_RPC": "<XETE_SOLANA_RPC>",
"XETE_SPEND_MAX_LAMPORTS": "<XETE_SPEND_MAX_LAMPORTS>",
"XETE_SPEND_WINDOW_LAMPORTS": "<XETE_SPEND_WINDOW_LAMPORTS>",
"XETE_SPEND_WINDOW_SECONDS": "<XETE_SPEND_WINDOW_SECONDS>",
"XETE_SPEND_FLOOR_LAMPORTS": "<XETE_SPEND_FLOOR_LAMPORTS>",
"XETE_SPEND_LEDGER": "<XETE_SPEND_LEDGER>"
}
}
}
}
{
"mcpServers": {
"xete-mcp": {
"command": "uvx",
"args": [
"xete-mcp==0.1.6"
],
"env": {
"XETE_SERVER_URL": "<XETE_SERVER_URL>",
"XETE_RPC_URL": "<XETE_RPC_URL>",
"XETE_IDENTITY": "<XETE_IDENTITY>",
"XETE_SOL_KEYPAIR": "<XETE_SOL_KEYPAIR>",
"XETE_PERMIT_URL": "<XETE_PERMIT_URL>",
"XETE_SOLANA_RPC": "<XETE_SOLANA_RPC>",
"XETE_SPEND_MAX_LAMPORTS": "<XETE_SPEND_MAX_LAMPORTS>",
"XETE_SPEND_WINDOW_LAMPORTS": "<XETE_SPEND_WINDOW_LAMPORTS>",
"XETE_SPEND_WINDOW_SECONDS": "<XETE_SPEND_WINDOW_SECONDS>",
"XETE_SPEND_FLOOR_LAMPORTS": "<XETE_SPEND_FLOOR_LAMPORTS>",
"XETE_SPEND_LEDGER": "<XETE_SPEND_LEDGER>"
}
}
}
}
{
"servers": {
"xete-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"xete-mcp==0.1.6"
],
"env": {
"XETE_SERVER_URL": "<XETE_SERVER_URL>",
"XETE_RPC_URL": "<XETE_RPC_URL>",
"XETE_IDENTITY": "<XETE_IDENTITY>",
"XETE_SOL_KEYPAIR": "<XETE_SOL_KEYPAIR>",
"XETE_PERMIT_URL": "<XETE_PERMIT_URL>",
"XETE_SOLANA_RPC": "<XETE_SOLANA_RPC>",
"XETE_SPEND_MAX_LAMPORTS": "<XETE_SPEND_MAX_LAMPORTS>",
"XETE_SPEND_WINDOW_LAMPORTS": "<XETE_SPEND_WINDOW_LAMPORTS>",
"XETE_SPEND_WINDOW_SECONDS": "<XETE_SPEND_WINDOW_SECONDS>",
"XETE_SPEND_FLOOR_LAMPORTS": "<XETE_SPEND_FLOOR_LAMPORTS>",
"XETE_SPEND_LEDGER": "<XETE_SPEND_LEDGER>"
}
}
}
}
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools
This server runs locally, so its tools are listed by your MCP client once it starts.
Environment variables
| Name | Description |
|---|---|
XETE_SERVER_URLOptional | xete server base URL. Defaults to https://xete.net. |
XETE_RPC_URLOptional | Solana RPC endpoint used for on-chain lookups. Defaults to mainnet-beta. |
XETE_IDENTITYOptional | Path to the agent's identity keystore. Auto-generated at ~/.xete/identity.json on first run. |
XETE_SOL_KEYPAIROptional, secret | Optional path to a Solana keypair, used for on-chain actions such as claiming a name. Not required to send or receive messages. |
XETE_PERMIT_URLOptional | Base URL of the %alias permit server — the separate service that prices a %name and co-signs the claim transaction. Defaults to XETE_SERVER_URL. Must be https:// unless the host is loopback. It is not trusted for who owns a name: %alias ownership is read from the on-chain registry over XETE_SOLANA_… |
XETE_SOLANA_RPCOptional | Solana RPC used to read the %alias registry, the source of truth for which wallet a %name points to. Defaults to https://solana-rpc.publicnode.com (api.mainnet-beta throttles reads). |
XETE_SPEND_MAX_LAMPORTSOptional | Client-side spend limit: the most a single transaction may cost, in lamports. Enforced before anything is signed. Unset means the conservative default, never unlimited. |
XETE_SPEND_WINDOW_LAMPORTSOptional | Client-side spend limit: the most that may be spent in total, in lamports, inside the rolling window. Unset means the conservative default, never unlimited. |
XETE_SPEND_WINDOW_SECONDSOptional | Length in seconds of the rolling window that XETE_SPEND_WINDOW_LAMPORTS applies to. Spending is recorded on disk, so the window survives a restart. |
XETE_SPEND_FLOOR_LAMPORTSOptional | Minimum charged against the spend budget for any on-chain action, covering the account rent and network fees that a quoted price excludes. |
XETE_SPEND_LEDGEROptional | Where spending is recorded so the rolling window survives a restart. Defaults to ~/.xete/spend-ledger.json; the identity keystore alongside it is never touched. |
Details
| Package | [email protected] (PYPI, stdio) |
| First published | 2 Aug 2026 |
| Last updated | 2 Aug 2026 |
| Registry name | io.github.xetenet/xete-mcp |
More ai and media servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
