@lucidly/mcp
v0.2.0
Published
Model Context Protocol server for Lucidly — vault deployment, Merkle-gated strategy execution, queued redemptions, monitoring, and read-only vault + on-chain research tools (Morpho, Aave) for any MCP-capable agent (Claude, Cursor, Codex, Cline).
Maintainers
Readme
@lucidly/mcp
A Model Context Protocol server that brings Lucidly's vault
execution engine to any MCP-capable agent — Claude Desktop / Claude Code, Cursor, Codex, OpenCode,
Continue, and others. It wraps @lucidly/sdk: the same vault deployment,
Merkle-gated strategy execution, queued redemptions, and monitoring you get from the CLI and SDK,
now available as tools your agent can call.
Read tools work without a key (monitoring/dashboards). Write tools require a signer
(LUCIDLY_PK) and carry the same Merkle-leaf and preflight safety guarantees as the rest of the
stack — an agent physically cannot execute a call outside the vault's whitelisted root.
Tools
Reads (no signer): lucidly_vault_view, lucidly_aum, lucidly_accountant_rate,
lucidly_monitor_snapshot, lucidly_monitor_flows, lucidly_strategy_has_leaf,
lucidly_roles_has_role, lucidly_queue_get_request, lucidly_preflight.
Writes (require LUCIDLY_PK): lucidly_vault_deploy, lucidly_strategy_aave_supply,
lucidly_queue_request, lucidly_queue_solve, lucidly_vault_finalize, lucidly_agent.
Configuration (env)
| Var | Required | Notes |
| --- | --- | --- |
| RPC_URL | yes | JSON-RPC endpoint |
| CHAIN | no | ethereum|base|arbitrum|baseSepolia or 1|8453|42161|84532 (default base) |
| LUCIDLY_PK | for writes | signer key — reads work without it |
| LUCIDLY_VAULT | no | active vault address |
| LUCIDLY_DEPLOYMENT | no | path to a deployment-record JSON (sets the full active deployment) |
Install & run
# zero-install (recommended) — fetches the latest from npm on demand
npx -y @lucidly/mcp
# or install globally for an offline / pinned setup
npm install -g @lucidly/mcp
lucidly-mcpConnect it to an agent
The server speaks MCP over stdio. Every MCP client uses the same command + args + env shape;
omit LUCIDLY_PK for a read-only (monitoring) connection.
Claude Desktop / Claude Code — ~/.claude.json (or the Claude Desktop config):
{
"mcpServers": {
"lucidly": {
"command": "npx",
"args": ["-y", "@lucidly/mcp"],
"env": { "RPC_URL": "https://mainnet.base.org", "CHAIN": "base", "LUCIDLY_PK": "0xYOURKEY" }
}
}
}Cursor (.cursor/mcp.json) and OpenCode (opencode.json under mcp) take the same form,
swapping the outer key. Codex / Continue and other MCP clients accept the same stdio command.
Once connected, your agent can: "what's my vault's NAV and AUM?", "is the manage root seeded?", "supply 1,000 USDC into Aave" (blocked unless a matching leaf exists), "deploy a USDC vault and finalize to my Safe", or "how do holders redeem?" — every action guarded exactly as in the CLI/SDK.
