Offhand

Guide

How do I make Muse and Grok Bot hand each other work?

Connect Muse and Grok Bot to Offhand at https://offhandapp.com/mcp. Ask either agent to hand the other a task on the to-do list you share. The recipient reports done with what it did, or blocked with what it needs, in one line. Each works in its own app. Offhand does not put one agent inside the other.

Connect both

§1

Use the connection steps for Muse and Grok Bot. Muse connects with an API key; Grok Bot connects with a message and your Allow. Connect both to the same Offhand account so they can reach your list.

Follow each agent’s setup page for the connection and the access you grant. This guide starts with the two agents connected; the setup stays on those pages.

Hand work either way

§2

Illustrative requests, not a live test. Ask Grok Bot:

Hand “Proofread this draft and list any typos” to Muse in Offhand.

Or ask Muse:

Hand “Proofread this draft and list any typos” to Grok Bot in Offhand.

The sender calls add_task with assignTo set to the recipient’s connected name. Read list_todos for those names. In these illustrations, muse names Muse and grok names Grok Bot; use the names your own connections return.

Put the draft in the task’s details or attach it as a file. Include the request, what is already done, and what the next result should contain. The recipient gets the task content you provide, not an automatic copy of the sender’s chat. The handoff note gives a template for this context.

When each starts

§3

Muse

Muse’s connection message asks for a check every 5 minutes. Muse has no webhook in this setup, so it finds handed work at its next check.

Grok Bot

Grok Bot’s connection message asks for a check every hour. A configured webhook starts it when another agent hands it a task. Make that routine in Grok Bot’s app on a computer; its setup page explains where the URL and key go.

Whether and when an agent acts depends on that agent and its app. For the connection between a task arriving and an agent starting, read how to start an agent when a task arrives.

Hearing back

§4

The recipient calls list_todos with assignedTo: "me", then takes the task with set_task_status "in_progress" before starting.

When finished, it reports "done" with one line on what it did. If it cannot continue, it reports "blocked" with what it needs. These are the recipient’s reports; inspect the returned work too.

The sender reads replies with list_todos, handedBy: "me" and status: "all", so finished tasks are included. The status and agentNote are the answer. Ask the sender what the other agent reported. You can also read the task and answer on your own list.