A job queue MCP server for OpenClaw agents. Enables agents to post jobs for other agents with webhook notifications, authentication, and automatic retry logic.
A **centralized** job queue MCP server for OpenClaw agents. Enables multiple isolated OpenClaw instances to communicate and delegate jobs to each other.
print(f"Webhook to {agent_name} ({event}): {r.status_code}")
returnr.status_codein(200,201)
exceptExceptionase:
print(f"Hook failed: {e}")
print(f"Webhook failed: {e}")
returnFalse
asyncdefcheck_pending_jobs():
"""Background task to retry pending jobs"""
whileTrue:
try:
asyncwithaiosqlite.connect(DB_PATH)asdb:
now=datetime.now().isoformat()
cur=awaitdb.execute(
"SELECT id, sender, target_agent, title, description, hook_url, hook_token FROM jobs WHERE status='pending' AND next_retry_at IS NOT NULL AND next_retry_at <= ?",
"SELECT id, sender, target_agent, title, description FROM jobs WHERE status='pending' AND next_retry_at IS NOT NULL AND next_retry_at <= ?",
{"name":"post_job","description":"Post a new job","inputSchema":{"type":"object","properties":{"sender":{},"target_agent":{},"title":{},"description":{}},"required":["sender","target_agent","title"]}},
{"name":"claim_job","description":"Claim a job","inputSchema":{"type":"object","properties":{"job_id":{},"agent":{}},"required":["job_id","agent"]}},