Unofficial project. SmartMoving MCP Server is an independent, community-maintained MCP bridge for the SmartMoving External API. It is not affiliated with, endorsed by, sponsored by, or certified by SmartMoving, LLC or its affiliates. "SmartMoving" is used only to identify the external API this project interoperates with. See
NOTICE.md.
SmartMoving MCP Server exposes the SmartMoving External API v1 as MCP tools for AI agents. It lets Claude Desktop, Claude Code, Codex, Hermes Agent, OpenClaw, and other MCP-compatible agents read and update a moving-company CRM through a local stdio server using API credentials supplied by an authorized SmartMoving customer.
Current status: public 0.1.0 launch. Production-used internally at iHaul iMove, with safety gates added for external adopters.
The server currently registers 62 MCP tools across eight areas:
- Customers: list, get, search, create, update, customer opportunities, storage accounts, service tickets
- Leads: list, get, create, update, patch, salesperson lead lookup, convert to opportunity, lead statuses
- Opportunities: get by ID or quote number, create, update, audit activity, documents, payments, attachments, rooms
- Jobs: list by opportunity, get detailed job, create, delete, confirm, notes, stops, estimated materials
- Inventory: opportunity inventory, room items, master inventory, room types, submit review
- Follow-ups: list, get, create, update, delete, complete
- Communication: log calls, log notes
- Reference data: branches, move sizes, referral sources, service types, tariffs, tariff materials, users, arrival windows, reasons, ping
See mcp-server/README.md for the full tool catalog and docs/SAMPLE-PROMPTS.md for copy-paste prompts and workflow ideas.
smartmoving-api/
├── README.md
├── .env.example
├── openapi.json
├── docs/
│ ├── AGENT-INSTALL.md
│ ├── AUTHENTICATION.md
│ ├── BEST-PRACTICES.md
│ ├── ENDPOINTS.md
│ ├── ENUMS.md
│ ├── OPPORTUNITY-V1-V2-LIMITATIONS.md
│ ├── FORK-AND-CONTRIBUTE.md
│ ├── SAMPLE-PROMPTS.md
│ ├── RELEASE.md
│ ├── ROADMAP.md
│ ├── SCHEMAS.md
│ └── WORKFLOWS.md
└── mcp-server/
├── src/
├── dist/
├── package.json
└── README.md
The easiest public install path is npm/npx:
npx smartmoving-mcp-serverFor local development from source:
git clone https://github.com/MattyMailers/smartmoving-mcp.git
cd smartmoving-mcp/mcp-server
npm install
npm run build
export SMARTMOVING_API_KEY="replace-with-your-key"
export SMARTMOVING_ALLOW_WRITES="false"
npm startThe server uses stdio, so it is normally launched by an MCP client rather than run manually in a terminal.
This tool can interact with live CRM data. It is provided as is and used at your own risk. The maintainers are not responsible for data loss, sync errors, incorrect results, downtime, duplicate or missing records, account issues, business interruption, or other problems arising from use of this tool. Test carefully and review agent actions before enabling writes. See NOTICE.md.
The public server is designed to be safe on first install:
- Read operations are always available with a valid
SMARTMOVING_API_KEY. - POST, PUT, and PATCH requests are blocked unless
SMARTMOVING_ALLOW_WRITES=true. - DELETE requests are blocked unless both
SMARTMOVING_ALLOW_WRITES=trueandSMARTMOVING_ALLOW_DESTRUCTIVE=true.
Recommended first-run config:
SMARTMOVING_API_KEY="replace-with-your-key"
SMARTMOVING_ALLOW_WRITES="false"Only enable writes after you trust the agent workflow:
SMARTMOVING_ALLOW_WRITES="true"Only enable destructive operations when you intentionally want delete-style tools available:
SMARTMOVING_ALLOW_DESTRUCTIVE="true"Do not commit real SmartMoving API keys.
Use one of these safe patterns:
- Store the key in your MCP client's private config
envblock. - Store the key in your shell, password manager, or agent
.envfile outside the repo. - Use
.env.exampleonly as a template.
The repo ignores .env and .env.local. The server only reads:
SMARTMOVING_API_KEY, requiredSMARTMOVING_BASE_URL, optional overrideSMARTMOVING_ALLOW_WRITES, optional. Set totrueto allow POST, PUT, and PATCH tools. Defaults to read-only.SMARTMOVING_ALLOW_DESTRUCTIVE, optional. Set totrueto allow DELETE tools. Requires writes to be enabled too.
Matt's local key is stored privately in ~/.hermes/.env, not in this repo.
Use docs/AGENT-INSTALL.md for copy-paste setup examples for:
- Claude Desktop
- Claude Code
- Codex-style MCP config
- Hermes Agent
- OpenClaw-style MCP config
- Any generic MCP stdio client
cd mcp-server
npm install
npm run build
npm test
npm audit --audit-level=highThere is now a small mocked test harness for the SmartMoving HTTP client and safety gates. The highest-value next step is expanding mocked tests across every tool module.
SmartMoving's public v1 API behaves differently across old/new opportunity models:
- 1.0-style jobs can expose item-level
actualMaterialsand charge details. - 2.0-style/type-4 jobs may expose only audit events like "Materials updated... Old total... new total..." while Premium job detail returns empty material/charge arrays.
Before using this as supply or revenue truth, read docs/OPPORTUNITY-V1-V2-LIMITATIONS.md.
This project is meant to improve over time with feedback from operators, developers, and AI-agent builders.
Ways to help:
- Open an issue for bugs, missing endpoints, confusing tool descriptions, install problems, or SmartMoving API quirks.
- Share workflows your agent should be able to run, such as quote prep, dispatch summaries, billing checks, supply reconciliation, or revenue leakage reports.
- Fork the repo, make a focused change, and submit a pull request.
- Use your own AI coding agent to draft improvements, then review the diff before opening a PR.
Recommended open-source workflow:
- Keep
mainprotected. - Contributors fork the repo.
- They open pull requests from their fork.
- GitHub Actions runs build/audit/tests.
- Maintainers review and merge.
- Issues are used for bugs, missing endpoints, agent feedback, and SmartMoving API quirks.
AI-agent-assisted contributions are welcome from Claude Code, Codex, Cursor, OpenCode, Hermes Agent, or any MCP-capable coding workflow. Agents can draft patches. Humans should still review before submitting.
See CONTRIBUTING.md, AGENTS.md, docs/FORK-AND-CONTRIBUTE.md, docs/SAMPLE-PROMPTS.md, docs/ROADMAP.md, docs/RELEASE.md, and CHANGELOG.md.
MIT. See LICENSE.
The MIT license covers this repository's original code and documentation. It does not grant rights to SmartMoving's product, platform, API documentation, trademarks, logos, or customer data. See NOTICE.md.