sync

Check availability, book meetings and find group times — without sharing your calendar.

사용해야 할까요

품질 및 안전성

A
설명 품질
100%
스키마 완전성
100%
이름 품질
92%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~2,034토큰 (도구 정의)
~3.1 KB일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.59%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "sync": {
      "url": "https://sync.lucie.network/api/mcp"
    }
  }
}

원격 엔드포인트

https://sync.lucie.network/api/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (5)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢check_availability(handle, durationMinutes, viewerTimeZone, from, to)

Return the open meeting slots a Lucie Sync host offers, plus their booking rules (durations offered, minimum notice, how far ahead you can book, buffer between meetings). Returns only bookable slots and policy — never the host's raw calendar. Use this to find a time before proposing one to the user. Slots are absolute instants (ISO-8601 UTC). Pass the booker's viewerTimeZone so times display in THEIR local zone — the booker should never have to do time-zone math.

입력 스키마

{
  "type": "object",
  "properties": {
    "handle": {
      "type": "string",
      "description": "The host's booking handle, e.g. \"@alice\" or \"alice\" (from their lucie.network/book/@<handle> link). The leading @ is optional."
    },
    "durationMinutes": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "description": "Desired meeting length in minutes. Must be one the host offers. Defaults to 30 if omitted."
    },
    "viewerTimeZone": {
      "type": "string",
      "description": "The booker's IANA time zone, e.g. \"Asia/Singapore\" or \"America/New_York\". Pass the booker's own zone so slots are shown in their local time. Defaults to the host's zone if omitted."
    },
    "from": {
      "type": "string",
      "description": "ISO-8601 start of the search window. Defaults to now + the host's minimum notice."
    },
    "to": {
      "type": "string",
      "description": "ISO-8601 end of the search window. Defaults to the host's max-advance horizon."
    }
  },
  "required": [
    "handle"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢book_meeting(handle, startAt, durationMinutes, bookerName, bookerEmail, ...)

Book a confirmed meeting on a Lucie Sync host's calendar at a specific start time. This is a real write: it creates a calendar event and emails both the host and the booker. Always call check_availability first and use one of the open slots it returns. Before calling, (1) show the booker the specific date/time you're about to book — in their own time zone — and get their explicit confirmation, and (2) collect their name, email, AND a brief reason for the meeting (ask for the reason if not given; it's required and shared with the host).

입력 스키마

{
  "type": "object",
  "properties": {
    "handle": {
      "type": "string",
      "description": "The host's booking handle, e.g. \"@alice\" or \"alice\" (the leading @ is optional)."
    },
    "startAt": {
      "type": "string",
      "description": "The exact ISO-8601 `start` value copied verbatim from a check_availability slot (an absolute UTC instant, e.g. 2026-07-28T17:00:00Z). Do NOT construct this from a local wall-clock time the booker said — that risks the wrong time zone; always copy the slot's start."
    },
    "durationMinutes": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "description": "Meeting length in minutes. Must be one the host offers."
    },
    "bookerName": {
      "type": "string",
      "description": "Full name of the person the meeting is for (the booker)."
    },
    "bookerEmail": {
      "type": "string",
      "format": "email",
      "description": "The booker's email. The confirmation and calendar invite are sent here."
    },
    "reason": {
      "type": "string",
      "minLength": 1,
      "description": "A short description of why the booker wants to meet (the agenda / purpose). Required — ask the booker for it before booking. Shared with the host alongside the invite."
    },
    "viewerTimeZone": {
      "type": "string",
      "description": "The BOOKER's IANA time zone (e.g. America/New_York) — the same one you passed to check_availability. Their confirmation email and reminders are written in this zone, so without it they read the host's zone instead and have to do the time-zone maths themselves."
    }
  },
  "required": [
    "handle",
    "startAt",
    "durationMinutes",
    "bookerName",
    "bookerEmail",
    "reason"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢find_group_times(handles, durationMinutes, viewerTimeZone, from, to)

Given several Lucie hosts (by @handle), return the meeting times when ALL of them are free — the intersection of their availability — for a meeting of the given length. Read-only: never books, never exposes anyone's raw calendar (only the shared open slots). Use it to propose a group time. Times are absolute instants; pass viewerTimeZone so they show in the organizer's local zone.

입력 스키마

{
  "type": "object",
  "properties": {
    "handles": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 1,
      "maxItems": 8,
      "description": "The participants' booking handles, e.g. [\"@alice\", \"@bob\"]. The leading @ is optional."
    },
    "durationMinutes": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "description": "Meeting length in minutes. Must be one every participant offers. Defaults to 30."
    },
    "viewerTimeZone": {
      "type": "string",
      "description": "The organizer's IANA time zone, e.g. \"America/New_York\". Common times are shown in this zone. Defaults to UTC."
    },
    "from": {
      "type": "string",
      "description": "ISO-8601 start of the search window."
    },
    "to": {
      "type": "string",
      "description": "ISO-8601 end of the search window."
    }
  },
  "required": [
    "handles"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡create_group_event(title, handles, organizerName, organizerEmail, durationMinutes, ...)

Create a Lucie group event (a poll) for several participants, pre-filled with candidate times when everyone is free (the intersection of their availability). Returns a vote link to share: participants pick which proposed times work, and people WITHOUT a Lucie handle can vote manually too. This is a write (creates a poll) but sends no emails and touches no calendars. Confirm the title, participants, and duration with the organizer before creating. Note: agent group scheduling is a Sync Pro feature — the organizer's email must be on Sync Pro (or a Lucie Membership).

입력 스키마

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "description": "The meeting title, e.g. \"Q3 planning sync\"."
    },
    "handles": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 1,
      "maxItems": 8,
      "description": "Participants' @handles whose availability seeds the candidate times. The leading @ is optional."
    },
    "organizerName": {
      "type": "string",
      "minLength": 1,
      "description": "The organizer's name (shown on the poll)."
    },
    "organizerEmail": {
      "type": "string",
      "format": "email",
      "description": "The organizer's email."
    },
    "durationMinutes": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "description": "Meeting length in minutes. Defaults to 30."
    },
    "timeZone": {
      "type": "string",
      "description": "IANA time zone for the poll's displayed times, e.g. \"America/New_York\". Defaults to UTC."
    },
    "from": {
      "type": "string",
      "description": "ISO-8601 start of the search window."
    },
    "to": {
      "type": "string",
      "description": "ISO-8601 end of the search window."
    }
  },
  "required": [
    "title",
    "handles",
    "organizerName",
    "organizerEmail"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢book_group_meeting(participantHandles, startAt, durationMinutes, title, reason)

Confirm a group meeting at a specific time across several Lucie hosts (by @handle), creating ONE shared Google Calendar event with everyone invited. YOU (the connector's owner) are the organizer and host the event on your calendar — no organizer handle needed. This is a real write: it re-verifies every participant (you included) is free at that instant and refuses if anyone isn't — so it never double-books. Always call find_group_times first and copy an exact common-slot start. Before calling, confirm the time (in each person's zone), the participants, the title, and the reason. Requires you to be on Sync Pro (or a Lucie Membership) via your personal connector; everyone must have a live booking page.

입력 스키마

{
  "type": "object",
  "properties": {
    "participantHandles": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 1,
      "maxItems": 8,
      "description": "The other participants' @handles, e.g. [\"@lucie\", \"@taylor\"]. Each must have a live Lucie booking page. Leading @ optional."
    },
    "startAt": {
      "type": "string",
      "description": "The exact ISO-8601 `start` copied verbatim from a find_group_times common slot (absolute UTC instant). Do NOT construct it from a wall-clock time."
    },
    "durationMinutes": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "description": "Meeting length in minutes. Must be one the organizer offers."
    },
    "title": {
      "type": "string",
      "minLength": 1,
      "description": "The meeting title, e.g. \"Q3 planning sync\"."
    },
    "reason": {
      "type": "string",
      "minLength": 1,
      "description": "A short agenda/purpose, shared with everyone on the invite."
    }
  },
  "required": [
    "participantHandles",
    "startAt",
    "durationMinutes",
    "title",
    "reason"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 5개