MCP Reference: calendarmcp.googleapis.com

Ini adalah server MCP yang disediakan oleh Google Calendar API. Server ini menyediakan alat bagi developer untuk membuat aplikasi LLM di atas Kalender.

Server Model Context Protocol (MCP) bertindak sebagai proxy antara layanan eksternal yang menyediakan konteks, data, atau kemampuan ke Model Bahasa Besar (LLM) atau aplikasi AI. Server MCP menghubungkan aplikasi AI ke sistem eksternal seperti database dan layanan web, menerjemahkan responsnya ke dalam format yang dapat dipahami oleh aplikasi AI.

Penyiapan Server

Anda harus mengonfigurasi server MCP Kalender sebelum menggunakannya. Untuk mengetahui informasi selengkapnya tentang cara menggunakan server MCP jarak jauh Google dan Google Cloud, lihat Ringkasan server MCP Google Cloud.

Endpoint Server

Endpoint layanan MCP adalah alamat jaringan dan antarmuka komunikasi (biasanya URL) server MCP yang digunakan aplikasi AI (Host untuk klien MCP) untuk membuat koneksi yang aman dan standar. Endpoint ini adalah titik kontak bagi LLM untuk meminta konteks, memanggil alat, atau mengakses resource. Endpoint MCP Google dapat bersifat global atau regional.

Server MCP Calendar API memiliki endpoint MCP global berikut:

  • https://calendarmcp.googleapis.com/mcp/v1

Alat MCP

Alat MCP adalah fungsi atau kemampuan yang dapat dieksekusi yang diekspos server MCP ke LLM atau aplikasi AI untuk melakukan tindakan di dunia nyata.

Alat

Server MCP calendarmcp.googleapis.com memiliki alat berikut:

Alat MCP
list_events

Mencantumkan acara kalender di kalender tertentu yang memenuhi kondisi yang diberikan.

Fitur Utama:

  • ID Kalender apa pun, yang dapat berupa kalender utama pengguna atau kalender lainnya.
  • Pemfilteran rentang waktu.
  • Mengambil SEMUA acara yang cocok dengan batasan waktu.

Jika tersedia, gunakan alat search_events sebagai gantinya untuk penelusuran di kalender utama pengguna jika:

  • Anda membuat kueri untuk acara yang cocok dengan topik, kategori, atau tujuan tertentu (misalnya, 'rapat makan siang', 'sinkronisasi project').
  • Anda perlu menemukan acara yang paling relevan (K teratas), bukan semua acara yang memenuhi batasan.
  • Anda memerlukan kemampuan penelusuran semantik atau kata kunci.

Gunakan alat ini untuk kueri seperti:

  • Apa saja acara di kalender saya besok?
  • Apa saja acara di kalender saya pada 14 Juli 2025?
  • Apa saja rapat saya minggu depan?
  • Apakah saya ada acara yang bentrok sore ini?
  • Apa saja rapat yang akan dihadiri Joni besok?

Contoh:

list_events(
    startTime='2024-09-17T06:00:00',
    endTime='2024-09-17T12:00:00',
    pageSize=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

Menampilkan satu acara dari kalender tertentu.

Gunakan alat ini untuk kueri seperti:

  • Dapatkan detail rapat tim.
  • Tampilkan acara dengan ID event123 di kalender saya.

Contoh:

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

Menampilkan kalender di daftar kalender pengguna.

Gunakan alat ini untuk kueri seperti:

  • Apa saja kalender saya?

Contoh:

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

Menyarankan jangka waktu di satu atau beberapa kalender. Untuk mengakses kalender utama, tambahkan 'primary' di kolom attendee_emails.

Gunakan alat ini untuk kueri seperti:

  • Kapan kita semua punya waktu luang untuk rapat?
  • Temukan slot 30 menit saat kita berdua punya waktu luang.
  • Periksa apakah jane.doe@google.com punya waktu luang pada Senin pagi.

Contoh:

suggest_time(
    attendeeEmails=['joedoe@gmail.com', 'janedoe@gmail.com'],
    startTime='2024-09-10T00:00:00',
    endTime='2024-09-17T00:00:00',
    durationMinutes=60,
    preferences={
        'startHour': '09:00',
        'endHour': '17:00',
        'excludeWeekends': 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

Membuat acara kalender.

Gunakan alat ini untuk kueri seperti:

  • Buat acara di kalender saya untuk besok pukul 14.00 dengan nama 'Rapat dengan Jane'.
  • Jadwalkan rapat dengan john.doe@google.com pada Senin depan pukul 10.00 hingga 11.00.

Contoh:

create_event(
    summary='Meeting with Jane',
    startTime='2024-09-17T14:00:00',
    endTime='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

Memperbarui acara kalender.

Gunakan alat ini untuk kueri seperti:

  • Ubah acara 'Rapat dengan Jane' menjadi satu jam lebih lambat.
  • Tambahkan john.doe@google.com ke rapat besok.

Contoh:

update_event(
    eventId='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

Menghapus acara kalender.

Gunakan alat ini untuk kueri seperti:

  • Hapus acara dengan ID event123 di kalender saya.

Untuk membatalkan atau menolak acara, gunakan alat respond_to_event sebagai gantinya.

Contoh:

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

Merespons acara.

Gunakan alat ini untuk kueri seperti:

  • Terima acara dengan ID event123 di kalender saya.
  • Tolak rapat dengan Jane.
  • Batalkan rapat saya berikutnya.
  • Terima rapat perencanaan dengan status tentatif.

Contoh:

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

Mendapatkan spesifikasi alat MCP

Untuk mendapatkan spesifikasi alat MCP untuk semua alat di server MCP, gunakan metode tools/list. Contoh berikut menunjukkan cara menggunakan curl untuk mencantumkan semua alat dan spesifikasinya yang saat ini tersedia dalam server MCP.

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