MCP Reference: calendarmcp.googleapis.com

Serwer Model Context Protocol (MCP) działa jako serwer proxy między usługą zewnętrzną, która udostępnia kontekst, dane lub funkcje dużemu modelowi językowemu (LLM) lub aplikacji AI. Serwery MCP łączą aplikacje AI z systemami zewnętrznymi, takimi jak bazy danych i usługi internetowe, tłumacząc ich odpowiedzi na format zrozumiały dla aplikacji AI.

Narzędzia MCP

Narzędzie MCP to funkcja lub wykonywalna możliwość, którą serwer MCP udostępnia dużemu modelowi językowemu lub aplikacji AI, aby umożliwić jej wykonanie działania w świecie rzeczywistym.

Serwer MCP calendarmcp.googleapis.com ma te narzędzia:

Narzędzia MCP
list_events

Wyświetla listę wydarzeń w danym kalendarzu, które spełniają określone warunki.

Najważniejsze funkcje:

  • Dowolny identyfikator kalendarza, który może być kalendarzem głównym użytkownika lub innym kalendarzem.
  • Dopasowywanie słów kluczowych.
  • Filtrowanie według zakresu czasu.
  • Pobiera WSZYSTKIE zdarzenia pasujące do ograniczeń czasowych i słów kluczowych.

Jeśli:

  • Musisz znaleźć (K) najbardziej odpowiednich zdarzeń, a nie wszystkich zdarzeń spełniających ograniczenia.
  • Musisz mieć możliwość wyszukiwania semantycznego.
  • Wyszukiwanie konkretnych informacji tylko w kalendarzu głównym użytkownika.

Używaj tego narzędzia w przypadku zapytań takich jak:

  • Co mam jutro w kalendarzu?
  • Co mam w kalendarzu na 14 lipca 2025 roku?
  • Jakie spotkania mam w przyszłym tygodniu?
  • Czy mam jakieś konflikty w tym popołudniu?

Przykład:

list_events(
    start_time='2024-09-17T06:00:00',
    end_time='2024-09-17T12:00:00',
    page_size=10
)
# Returns up to 10 calendar events between 6:00 AM and 12:00 PM on September 17, 2024 from the user's primary calendar.
get_event

Zwraca pojedyncze wydarzenie z danego kalendarza.

Używaj tego narzędzia w przypadku zapytań takich jak:

  • Uzyskaj szczegóły spotkania zespołu.
  • Pokaż wydarzenie o identyfikatorze event123 w moim kalendarzu.

Przykład:

get_event(
    event_id='event123'
)
# Returns the event details for the event with id `event123` on the user's primary calendar.
list_calendars

Zwraca kalendarze na liście kalendarzy użytkownika.

Używaj tego narzędzia w przypadku zapytań takich jak:

  • Jakie mam kalendarze?

Przykład:

list_calendars()
# Returns all calendars the authenticated user has access to.
suggest_time

Proponuje okresy w co najmniej 1 kalendarzu. Aby uzyskać dostęp do kalendarza głównego, w polu attendee_emails dodaj „primary”.

Używaj tego narzędzia w przypadku zapytań takich jak:

  • Kiedy wszyscy będziemy mogli się spotkać?
  • Znajdź 30-minutowy termin, w którym oboje będziemy dostępni.
  • Sprawdź, czy jane.doe@google.com jest dostępna w poniedziałek rano.

Przykład:

suggest_time(
    attendee_emails=['joedoe@gmail.com', 'janedoe@gmail.com'],
    start_time='2024-09-10T00:00:00',
    end_time='2024-09-17T00:00:00',
    duration_minutes=60,
    preferences={
        'start_hour': '09:00',
        'end_hour': '17:00',
        'exclude_weekends': True
    }
)
# Returns up to 5 suggested time slots where both users are available for at least one hour between 9:00 AM and 5:00 PM on weekdays from September 10 through September 16, 2024.
create_event

Tworzy wydarzenie w kalendarzu.

Używaj tego narzędzia w przypadku zapytań takich jak:

  • Utwórz w moim kalendarzu wydarzenie na jutro o 14:00 o nazwie „Spotkanie z Janem”.
  • Zaplanuj spotkanie z john.doe@google.com w przyszły poniedziałek w godzinach 10:00–11:00.

Przykład:

create_event(
    summary='Meeting with Jane',
    start_time='2024-09-17T14:00:00',
    end_time='2024-09-17T15:00:00'
)
# Creates an event on the primary calendar for September 17, 2024 from 2pm to 3pm called 'Meeting with Jane'.
update_event

Aktualizuje wydarzenie w kalendarzu.

Używaj tego narzędzia w przypadku zapytań takich jak:

  • Przesuń wydarzenie „Spotkanie z Janem” o godzinę do przodu.
  • Dodaj john.doe@google.com do spotkania jutro.

Przykład:

update_event(
    event_id='event123',
    summary='Meeting with Jane and John'
)
# Updates the summary of event with id 'event123' on the primary calendar to 'Meeting with Jane and John'.
delete_event

Usuwa wydarzenie z kalendarza.

Używaj tego narzędzia w przypadku zapytań takich jak:

  • Usuń wydarzenie o identyfikatorze event123 z mojego kalendarza.

Aby anulować wydarzenie lub odrzucić zaproszenie na nie, użyj narzędzia respond_to_event.

Przykład:

delete_event(
    event_id='event123'
)
# Deletes the event with id 'event123' on the user's primary calendar.
respond_to_event

Odpowiada na wydarzenie.

Używaj tego narzędzia w przypadku zapytań takich jak:

  • Zaakceptuj wydarzenie o identyfikatorze event123 w moim kalendarzu.
  • Odrzuć spotkanie z Janem.
  • Anuluj moje następne spotkanie.
  • Wstępnie zaakceptuj spotkanie planistyczne.

Przykład:

respond_to_event(
    event_id='event123',
    response_status='accepted'
)
# Responds with status 'accepted' to the event with id 'event123' on the user's primary calendar.

Uzyskiwanie specyfikacji narzędzi MCP

Aby uzyskać specyfikacje narzędzi MCP dla wszystkich narzędzi na serwerze MCP, użyj metody tools/list. Poniższy przykład pokazuje, jak za pomocą curl wyświetlić listę wszystkich narzędzi i ich specyfikacji dostępnych obecnie na serwerze MCP.

Żądanie curl
curl --location 'https://calendarmcp.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
    "method": "tools/list",
    "jsonrpc": "2.0",
    "id": 1
}'