Build on Malleable.
Malleable is the AI calendar your users already live in. Embed the booking agent on your own site, call the REST API from your own backend, hand Claude the keys to your schedule, or script it from a terminal.
Install the CLI
npm install -g @malleable-cloud/cliUsing Claude Code? Run mal skill install to add the bundled /malleable skill, zero Malleable AI credits for board and calendar verbs.
Embed the booking widget
Drop a booking widget or chat agent onto your own site with a single script tag. No build step, no npm package required.
Script tag
<script
src="https://malleable.cloud/embed.js"
data-slug="your-booking-slug"
data-type="chatbot"
data-position="bottom-right"
async
></script>Read the docs →V1 REST APICall the API directly
Events, tasks, notes, contacts, buckets (with per-repo GitHub links and tracked event families), time tracking, and availability, all under one base URL with a single bearer token.
curl
curl -X POST https://malleable.cloud/api/v1/events \
-H "Authorization: Bearer mk_live_..." \
-H "Content-Type: application/json" \
-d '{ "title": "Design review", "date": "2026-05-10", "start_time": "14:00", "end_time": "15:00" }'Read the docs →MCP ServerConnect Claude to your calendar
On the web, add Malleable as a custom connector at claude.ai (Settings → Connectors) and sign in, no install. For Claude Desktop, run the local server with npx, live on npm now.
Claude.ai connector URL
https://malleable.cloud/api/mcp
# Claude Desktop (local): npx, no clone or build
npx @malleable-cloud/mcp-serverRead the docs →CLIScript it from the terminal
The mal CLI wraps the V1 API for headless use: the kanban board, events, tasks, notes, time tracking, availability, repo-to-bucket linking, and a natural-language escape hatch. Live on npm now.
Install
npm install -g @malleable-cloud/cli
mal login
mal today
# Link this repo to a bucket, shared for every teammate:
mal buckets link <bucket-id> --events commits,prs
# Inside a linked repo, the board scopes to that project:
mal board ls
# Using Claude Code? Install the bundled skill:
mal skill installRead the docs →Claude CodeAmbient time tracking
See your running Malleable timer at the bottom of every Claude Code session, no asking required. A small script polling mal time status --json, wired into your statusline.
settings.json
{
"statusLine": {
"type": "command",
"command": "~/.claude/statusline-mal.sh"
}
}
# The script just polls:
mal time status --jsonRead the docs →Signed webhooks, scoped keys, and an audit log.
Mint reveal-once API keys with narrow scopes, configure signed webhook deliveries for the events you care about, and review every key's activity in the audit log.