6 poin oleh GN⁺ 2026-03-23 | Belum ada komentar. | Bagikan ke WhatsApp
  • MCP diadopsi sebagai standar koneksi tool untuk agen AI, dan pengalaman implementasi Pinterest dalam mengintegrasikannya pada level produksi ke alur kerja engineering nyata seperti IDE, chat internal, dan agen AI
  • Memilih arsitektur yang menggabungkan banyak server MCP per domain (Presto, Spark, Airflow, dll.) dan registri pusat, alih-alih satu server monolitik tunggal
  • Menerapkan prinsip least privilege untuk data sensitif melalui lapisan autentikasi ganda JWT end-user + identitas mesh SPIFFE serta kontrol akses berbasis grup bisnis
  • Mencapai hasil kuantitatif berupa 66.000 panggilan per bulan, 844 pengguna aktif bulanan, dan estimasi penghematan 7.000 jam per bulan
  • Kunci yang membuat MCP menjadi infrastruktur produktivitas engineer, bukan sekadar eksperimen, adalah desain yang mengutamakan keamanan, pipeline deployment terpadu, dan integrasi langsung ke tool yang sudah digunakan karyawan

Latar belakang adopsi MCP

  • Model Context Protocol (MCP) adalah standar open-source yang memakai protokol client-server terpadu saat LLM berkomunikasi dengan tool dan sumber data, alih-alih membuat integrasi terpisah untuk tiap model atau tool
  • Pinterest memanfaatkan MCP bukan hanya untuk tanya-jawab, tetapi sebagai dasar otomatisasi pekerjaan engineering—mulai dari “baca log dan temukan masalahnya” hingga “analisis tiket bug dan usulkan PR perbaikannya”

Desain arsitektur awal

Hosting di cloud, bukan lokal

  • Walau metode server MCP lokal (komunikasi stdio) juga didukung, Pinterest memilih server MCP yang di-host di cloud internal sebagai jalur utama (paved path)
    • Tujuannya adalah operasional di lingkungan yang memudahkan penerapan routing internal dan logika keamanan
    • Server lokal hanya diizinkan untuk keperluan eksperimen

Banyak server kecil vs. satu server monolitik

  • Alih-alih satu server raksasa, dipilih banyak server MCP kecil per domain
    • Kontrol akses yang berbeda bisa diterapkan per server
    • Mencegah konteks model terisi hal-hal yang tidak perlu
  • Umpan balik awal: terlalu banyak pekerjaan awal untuk membangun server MCP baru, seperti pipeline deployment, konfigurasi layanan, dan setup operasional
    • Solusinya adalah membangun pipeline deployment terpadu—tim cukup mendefinisikan logika tool, lalu platform menangani deployment dan scaling secara otomatis

Registri MCP internal

  • Single source of truth untuk mengelola daftar server MCP yang disetujui dan cara terhubung ke sana
  • Web UI: untuk manusia menjelajahi server, tim pemilik, channel dukungan, posture keamanan, status live, dan tool yang tersedia
  • API: digunakan klien AI (chat AI internal, integrasi IDE, agen) untuk menemukan dan memverifikasi server, serta menentukan “apakah pengguna ini boleh memakai server X”
  • Hanya server yang terdaftar di registri yang diakui sebagai server yang disetujui untuk produksi—berfungsi sebagai tulang punggung governance

Kondisi server MCP yang sedang beroperasi

Server utama (berdasarkan penggunaan)

  • Server MCP Presto: server dengan penggunaan tertinggi berdasarkan traffic—agen (termasuk IDE berbantuan AI) dapat mengambil data berbasis Presto secara on-demand dan memakainya langsung di dalam workflow tanpa perlu berpindah dashboard
  • Server MCP Spark: fondasi pengalaman debugging Spark berbasis AI—mendukung diagnosis kegagalan job Spark, ringkasan log, dan pencatatan analisis akar masalah yang terstruktur, sehingga thread operasional berubah menjadi pengetahuan yang bisa digunakan ulang
  • Server MCP Knowledge: endpoint pengetahuan serbaguna—dipakai bot AI internal untuk pengetahuan perusahaan, Q&A, dokumentasi, dan pertanyaan debugging

Integrasi dengan layanan internal Pinterest

  • Tool MCP diintegrasikan ke antarmuka web chat LLM internal yang dipakai banyak karyawan Pinterest setiap hari
    • Frontend otomatis menangani alur OAuth lalu mengembalikan daftar tool yang diizinkan untuk pengguna saat ini
    • Agen chat AI mengikat tool MCP langsung ke toolkit agen sehingga pengalaman pengguna sama seperti pemanggilan tool biasa
  • Tool MCP juga dipasang pada bot AI di platform chat internal
    • Menangani autentikasi dan otorisasi melalui API registri
    • Mendukung pembatasan tool MCP tertentu ke channel tertentu (misalnya, tool MCP Spark hanya bisa dipakai di channel dukungan Airflow)

Keamanan, governance, dan kebijakan

Standar keamanan MCP

  • Mendefinisikan MCP Security Standard secara terpisah—semua server MCP yang bukan untuk eksperimen wajib memiliki tim pemilik yang ditetapkan, terdaftar di registri internal, dan mendapat persetujuan tiket review keamanan/hukum-privasi/(jika relevan) GenAI
  • Berdasarkan hasil review, ditentukan kebijakan keamanan seperti grup pengguna yang boleh mengakses server

Lapisan ganda autentikasi (AuthN) dan otorisasi (AuthZ)

  • Alur berbasis JWT end-user

    1. Pengguna berinteraksi melalui surface seperti chat AI, plugin IDE, atau bot AI
    2. Klien menjalankan alur OAuth ke stack autentikasi internal lalu meneruskan JWT ke registri MCP dan server tujuan
    3. Envoy memverifikasi JWT serta memetakan header X-Forwarded-User dan X-Forwarded-Groups, lalu menerapkan kebijakan keamanan tingkat kasar
    4. Di dalam server, kontrol hak akses yang lebih rinci dilakukan dengan dekorator @authorize_tool(policy='…') (misalnya, get_revenue_metrics hanya boleh dipanggil oleh grup Ads-eng)
  • Gate akses berbasis grup bisnis

    • Alih-alih memberi akses menyeluruh ke semua karyawan dan kontraktor Pinterest yang terautentikasi, server sensitif mengekstrak keanggotaan grup bisnis dari JWT lalu memverifikasi apakah pengguna termasuk dalam grup yang disetujui
    • Server MCP Presto mungkin secara teknis bisa diakses dari surface yang luas, tetapi hanya grup yang disetujui seperti Ads, Finance, dan tim infrastruktur tertentu yang dapat membuat sesi dan menjalankan tool berhak akses tinggi
  • Alur berbasis SPIFFE khusus layanan

    • Untuk skenario berisiko rendah dan read-only, dipakai autentikasi berbasis SPIFFE (identitas mesh) saja
    • Hanya digunakan ketika tidak ada end-user dalam loop dan blast radius dibatasi secara ketat

Perbedaan dengan standar OAuth MCP

  • Spesifikasi resmi MCP mendefinisikan alur autentikasi OAuth 2.0 per server (layar persetujuan, pengelolaan token per server), tetapi Pinterest memilih pendekatan yang memanfaatkan kembali sesi yang sudah ada
    • Saat pengguna membuka surface seperti chat AI, autentikasi di stack internal sudah selesai—tidak perlu prompt login tambahan atau dialog persetujuan
    • Envoy dan dekorator kebijakan menangani otorisasi secara transparan di background

Human-in-the-Loop

  • Karena server MCP memungkinkan aksi otomatis, blast radius-nya lebih besar dibanding pengoperasian manual
  • Sesuai panduan agen, persetujuan manusia wajib dilakukan sebelum aksi yang sensitif atau mahal—agen mengusulkan aksi, lalu manusia menyetujui atau menolaknya (termasuk secara batch)
  • Memanfaatkan elicitation untuk meminta konfirmasi sebelum aksi berisiko (misalnya menimpa data tabel)

Observabilitas dan metrik hasil

  • Semua server MCP menerapkan fungsi library—logging input/output, jumlah panggilan, pelacakan exception, dan telemetri tersedia secara default
  • Metrik pengukuran pada level ekosistem: jumlah server dan tool MCP yang terdaftar, total panggilan ke seluruh server, serta estimasi waktu yang dihemat per panggilan (dihitung pemilik server berdasarkan umpan balik pengguna ringan dan perbandingan dengan workflow manual sebelumnya)
  • Satu metrik North Star: waktu yang dihemat (time saved)—jumlah panggilan × menit yang dihemat per panggilan untuk memperkirakan dampak secara garis besar
  • 66.000 panggilan per bulan, 844 pengguna aktif bulanan, estimasi penghematan 7.000 jam per bulan

Belum ada komentar.

Belum ada komentar.