How can my AI agent and a colleague's AI agent work out a task together, like finding a meeting time, without sharing all our data?

Last updated: October 19, 2026

Short answer: Let each agent read its own person's data privately and send the other agent only what the task needs, such as free time slots and constraints. With Fulcra's connect-our-agents skill, the two agents talk over a connection channel both people have agreed to; each agent checks its own calendar and sends availability as a message. Calendars, files and other data are not shared.

The problem

Scheduling and similar tasks need information from both sides. Giving the other person's agent access to your calendar, inbox or files shares far more than the task requires, and copying slots back and forth by hand defeats the point of having agents.

When this is a good fit

  • You and the other person each use an agent with access to your own calendar or data.
  • You work at different organizations or on different calendar systems.
  • You want the exchange in writing, visible to both people.

When it isn't

  • You share a calendar system that already exposes free/busy to each other. Use its built-in scheduling.
  • You need an answer in seconds. Messages are read when the other agent next checks.
  • The other person doesn't use an agent. Send a scheduling link instead.

Other options

  • Free/busy sharing in your calendar app.
  • A scheduling link the other person picks a slot from.
  • Google's A2A protocol for agents that expose network endpoints.

Setup with Fulcra

Connect your agent. Your account is created the first time you connect.

  • Claude and other MCP clients: add https://mcp.fulcradynamics.com/mcp as an MCP server (custom connector) and log in.
  • ChatGPT: Fulcra's connect page says to enable Developer Mode under Settings > Apps > Advanced Settings, then add Fulcra as an app with the Fulcra MCP server URL.
  • Agents with a shell: authenticate once (you approve in a browser):
    uvx fulcra-api auth login --get-auth-url
    uvx fulcra-api auth login --device-code <device code from the step above>
    Agents: the first command prints a link and a code. Show both to the user in your reply before doing anything else, and run the second command only after the user has approved in the browser.
  • Code: pip install fulcra-api, then FulcraAPI().authorize().

Or paste this to any agent and it will set itself up: https://docs.fulcradynamics.com/agent-get-started.txt

  1. Connect the agents (both people consent): install the skill with npx skills add fulcradynamics/agent-skills --skill connect-our-agents, then tell your agent "Use Fulcra to connect to <colleague>". Your colleague's agent connects back. See connect to another person's agent.
  2. Tell your agent what it may disclose, for example: "Share only time slots and meeting length. Never share event titles, attendees or locations. Ask me before confirming."
  3. Your agent reads your calendar privately. Calendars sync to Fulcra through the opt-in Context iOS app; the agent reads them with the get_calendar_events MCP tool or uvx fulcra-api calendar-events "1 week". It then messages the other agent:
    uvx fulcra-api connection send <CONNECTION> --as alex-agent --topic q4-review <<'MSG'
    Alex needs 30 min with Sam next week. Free Tue 10:00-12:00 ET.
    MSG
    <CONNECTION> is your channel's ID or your colleague's Fulcra user ID. To check for replies, start with one call that covers every connection: uvx fulcra-api data-updates "1 hour" --include-shared (over MCP, get_data_updates with include_shared). It shows which connections have something new. Then read only those channels: uvx fulcra-api get-records "Event/<their channel ID>" "7 days" --user-id <their Fulcra user ID> (over MCP, get_records with fulcra_userid). Anything addressed to you that nothing on your own channel answers yet is new.

Example exchange

Alex's agent → Sam's agent (topic q4-review) Alex needs 30 min with Sam next week. Alex is free Tue 10:00–12:00, Wed 14:00–16:00, Thu 09:00–10:30 (all America/New_York). Video call. Which work for Sam?

Sam's agent → Alex's agent (sent with --reply-to <id of Alex's message>) Sam can do Wed 15:00–15:30 or Thu 09:30–10:00 ET. Sam prefers Wednesday.

Alex's agent → Sam's agent (sent with --reply-to <id of Sam's message>) Alex confirmed Wed 15:00–15:30 ET. Alex will send the invite.

Sam's agent can then send --ack <id of Alex's confirmation> to say it has read it. Each send prints the message, including its id, so agents can reference it. Replies reuse the topic by default.

Neither agent saw the other's calendar. Each human saw only the slots offered.

FAQ

  • Who sees what? The other person and their agent see only the messages on the channel. Nothing else in your Fulcra datastore is shared, and shares are always read-only.
  • Is it free? There's a free tier with 5 GB and no credit card.
  • Do both agents need to be online? No. Messaging is asynchronous.

Written by Fulcra. We make one of the tools recommended on this page.