Wealthbox
FreeNot checkedExposes the Wealthbox CRM API to MCP-enabled clients, enabling operations on contacts, tasks, events, notes, opportunities, projects, workflows, and more.
About
Exposes the Wealthbox CRM API to MCP-enabled clients, enabling operations on contacts, tasks, events, notes, opportunities, projects, workflows, and more.
README
wealthbox-mcp
A Model Context Protocol (MCP) server that exposes the Wealthbox CRM API to MCP-enabled clients (e.g., Claude Desktop).
- Wealthbox API docs: https://dev.wealthbox.com/
Requirements
- Node.js 18+ (uses global fetch)
- A Wealthbox API Access Token (Personal access token)
Installation
Global install:
npm i -g wealthbox-mcp
Local (from source):
npm install
npm run build
Configuration
Provide your Wealthbox token via environment variable or a local file:
WEALTHBOX_TOKEN(required): your Wealthbox API access token; sent asACCESS_TOKENheader per docsWEALTHBOX_API_BASE_URL(optional): defaults tohttps://api.crmworkspace.com- Optional local file fallback:
wealthbox_key.txt(first line)
Example (stdio run):
WEALTHBOX_TOKEN=your_token_here wealthbox-mcp
# or if running from source
WEALTHBOX_TOKEN=your_token_here node dist/index.js
Using with Claude (MCP)
Add to your Claude Desktop config (platform-specific path). Minimal example:
{
"mcpServers": {
"wealthbox": {
"command": "wealthbox-mcp",
"env": {
"WEALTHBOX_TOKEN": "YOUR_API_TOKEN"
}
}
}
}
After starting Claude, you can ask it to list tools and call them. Example prompts:
- "List all MCP tools from the wealthbox server."
- "Call the wealthbox.health tool and show the full structured JSON."
- "Call the wealthbox.getMe tool and print the full structured JSON."
Tools Overview
Core tools map to Wealthbox REST endpoints. Many create/update tools accept explicit fields and also an optional raw body that overrides field parameters when provided.
Health and basics
wealthbox.health– GET/v1/meand return ok + profilewealthbox.getMe– GET/v1/mewealthbox.listUsers– GET/v1/userswealthbox.listTeams– GET/v1/teamswealthbox.request– Generic caller:{ method, path, body?, query? }
Contacts
wealthbox.contacts.list– GET/v1/contactswealthbox.contacts.get– GET/v1/contacts/{id}wealthbox.contacts.create– POST/v1/contactswealthbox.contacts.update– PUT/v1/contacts/{id}wealthbox.contacts.delete– DELETE/v1/contacts/{id}
Tasks
wealthbox.tasks.list– GET/v1/taskswealthbox.tasks.get– GET/v1/tasks/{id}wealthbox.tasks.create– POST/v1/taskswealthbox.tasks.update– PUT/v1/tasks/{id}wealthbox.tasks.delete– DELETE/v1/tasks/{id}
Events
wealthbox.events.list– GET/v1/eventswealthbox.events.get– GET/v1/events/{id}wealthbox.events.create– POST/v1/eventswealthbox.events.update– PUT/v1/events/{id}wealthbox.events.delete– DELETE/v1/events/{id}
Notes
wealthbox.notes.list– GET/v1/noteswealthbox.notes.get– GET/v1/notes/{id}wealthbox.notes.create– POST/v1/noteswealthbox.notes.update– PUT/v1/notes/{id}
Opportunities
wealthbox.opportunities.list– GET/v1/opportunitieswealthbox.opportunities.get– GET/v1/opportunities/{id}wealthbox.opportunities.create– POST/v1/opportunitieswealthbox.opportunities.update– PUT/v1/opportunities/{id}wealthbox.opportunities.delete– DELETE/v1/opportunities/{id}
Projects
wealthbox.projects.list– GET/v1/projectswealthbox.projects.get– GET/v1/projects/{id}wealthbox.projects.create– POST/v1/projectswealthbox.projects.update– PUT/v1/projects/{id}wealthbox.projects.delete– DELETE/v1/projects/{id}
Comments & Activity Stream
wealthbox.comments.list– GET/v1/comments{?resource_id,resource_type,updated_since,updated_before}wealthbox.activityStream.list– GET/v1/activity_stream
Metadata & Categories
wealthbox.userGroups.list– GET/v1/user_groupswealthbox.tags.list– GET/v1/tags{?document_type}(document_type:ContactorNote)wealthbox.categories.list– GET/v1/categories/{type}where type ∈tags|custom_fields|opportunity_stages|opportunity_pipelines|contact_types|contact_sources|task_categories|event_categories|file_categories|investment_objectives|financial_account_types|email_types|phone_types|address_types|website_types|contact_roleswealthbox.customFields.list– GET/v1/custom_fieldswealthbox.contactRoles.list– GET/v1/contact_roles
Workflows
wealthbox.workflows.list– GET/v1/workflowswealthbox.workflows.get– GET/v1/workflows/{id}wealthbox.workflows.create– POST/v1/workflowswealthbox.workflows.delete– DELETE/v1/workflows/{id}wealthbox.workflowTemplates.list– GET/v1/workflow_templateswealthbox.workflowTemplates.get– GET/v1/workflow_templates/{id}wealthbox.workflowSteps.complete– POST/v1/workflow_steps/{id}/completewealthbox.workflowSteps.revert– POST/v1/workflow_steps/{id}/revert
Households
wealthbox.households.addMember– POST/v1/households/{household_id}/memberswealthbox.households.deleteMember– DELETE/v1/households/{household_id}/members/{id}
Parameter Hints (selected)
Contacts list (query)
{
"query": {
"name": "string",
"email": "string",
"phone": "string",
"contact_type": "string",
"id": 123,
"active": true,
"tags": ["VIP", "Newsletter"],
"type": "person",
"page": 1,
"per_page": 5
}
}
Example: { "query": { "name": "John Smith", "per_page": 10 } }
Notes
// wealthbox.notes.create
{
"content": "Updated with Claude via Wealthbox MCP",
"linked_to": [{ "id": 12345, "type": "Contact" }]
}
// wealthbox.notes.update
{ "id": 211578273, "content": "New contents" }
Tasks
// wealthbox.tasks.create
{ "title": "Call client", "due_date": "2025-10-04", "assigned_to_user_id": 123 }
Contacts
// wealthbox.contacts.create
{ "first_name": "Ada", "last_name": "Lovelace", "emails": [{ "address": "[email protected]", "type": "Work" }] }
Households
// wealthbox.households.addMember
{ "household_id": 1, "id": 2, "title": "Head" }
Tags/Categories
// wealthbox.tags.list
{ "document_type": "Contact" }
// wealthbox.categories.list
{ "type": "contact_sources" }
Security
- Do not commit your token. The token is loaded from
WEALTHBOX_TOKENor a local file (wealthbox_key.txt) which is ignored by git and npm. - The server uses HTTPS to talk to Wealthbox’s API endpoint
https://api.crmworkspace.com.
Development
Run locally (stdio):
npm install
npm run build
WEALTHBOX_TOKEN=$(cat wealthbox_key.txt) node dist/index.js
License
MIT
Acknowledgements
Built on the TypeScript MCP SDK. See the Wealthbox API docs for full parameter and response details: https://dev.wealthbox.com/
Install Wealthbox in Claude Desktop, Claude Code & Cursor
unyly install wealthbox-mcpInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add wealthbox-mcp -- npx -y wealthbox-mcpFAQ
Is Wealthbox MCP free?
Yes, Wealthbox MCP is free — one-click install via Unyly at no cost.
Does Wealthbox need an API key?
No, Wealthbox runs without API keys or environment variables.
Is Wealthbox hosted or self-hosted?
A hosted option is available: Unyly runs the server in the cloud, no local setup required.
How do I install Wealthbox in Claude Desktop, Claude Code or Cursor?
Open Wealthbox on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare Wealthbox with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
