1) Install and prepare
git clone https://github.com/jayhickey/DispatchQ.git
cd DispatchQ/packages/server
npm install
cp .env.example .env
# Set DATABASE_URL and MCP_ACCOUNT_ID
npx drizzle-kit generate
npm run migrate
Required environment variables:
DATABASE_URL
MCP_ACCOUNT_ID
Optional:
PORT
RATE_LIMIT_PER_SECOND
WEBHOOK_TIMEOUT_MS
2) Claude Desktop config
Add a server entry to Claude Desktop config.
{
"mcpServers": {
"dispatchq": {
"command": "npm",
"args": ["run", "mcp"],
"cwd": "/absolute/path/to/DispatchQ/packages/server",
"env": {
"DATABASE_URL": "postgresql://user:pass@host/dbname?sslmode=require",
"MCP_ACCOUNT_ID": "acct_..."
}
}
}
}
3) Test with Claude
Ask Claude to run a tool call, for example:
- “Create a job that POSTs
{\"ping\":true} to https://httpbin.org/post.”
- “Check job
job_... and summarize result.”
If tool calls fail immediately, verify MCP_ACCOUNT_ID belongs to an existing account row and that DATABASE_URL is reachable.