Tools
create_invoice
Issue a Lenny invoice with an optional contract template (simple, sow, or 3-stage milestone). Returns a payUrl for the recipient and a trackUrl for the user.
get_invoice
Fetch the current status of an invoice by token: open, paid, bridge_in_flight, claimed. Includes per-milestone progress and inbound bridge state.
list_invoices
List recent invoices for the user the agent represents. Useful for status reports and follow-ups.
whoami
Returns the connected Lenny instance and default creator handle. Run this first to confirm the agent is wired to the right deployment.
Setup
- 1
Generate an agent key on Lenny
On your Lenny deployment, set
AGENT_API_KEYto a 32-char random string (openssl rand -base64 32). The/api/agent/*routes return 503 until this is set. - 2
Build the MCP server
Clone the repo, then
cd mcp && pnpm install && pnpm build. That producesmcp/dist/index.js, which any MCP client runs over stdio. - 3
Wire your agent
Add the block below to
~/Library/Application Support/Claude/claude_desktop_config.json(or~/.cursor/mcp.json). Restart the agent and the four tools appear.
Claude Desktop config
{
"mcpServers": {
"lenny": {
"command": "node",
"args": ["/absolute/path/to/lenny/mcp/dist/index.js"],
"env": {
"LENNY_API_BASE": "https://lenny.chat",
"LENNY_API_KEY": "<same value as AGENT_API_KEY>",
"LENNY_CREATOR_HANDLE": "you@example.com"
}
}
}
}Demo prompt
Run whoami to confirm you are connected, then create an invoice for $5,000 to Acme Corp for the website redesign project. Attach the milestone contract template and give me the payUrl I should send them.
The agent runs whoami, then create_invoice with the milestone template, then returns the payUrl you forward to the counterparty.
Discoverable manifests