Setup MCP Server Claude Code: Scope, Auth, Budget Tool

Local adalah default dan hanya memuat server di proyek tempat Anda menambahkannya, disimpan di konfigurasi home Anda. Scope project tinggal di .mcp.json yang di-commit dan dibagikan ke tim lewat version control. Scope user dimuat di setiap proyek yang Anda buka dan tetap privat bagi Anda.
Jauh lebih sedikit daripada dulu. Tool search aktif secara default, jadi definisi tool ditunda dan hanya nama tool plus instruksi server yang dimuat di awal sesi; Claude mencari tool ketika sebuah tugas membutuhkannya. Ada juga mode ambang batas yang memuat definisi sekaligus sampai totalnya mencapai sekitar sepersepuluh jendela.
Karena foldernya belum dipercaya. Persetujuan yang di-commit di dalam repositori diabaikan sampai Anda menjalankan Claude di folder itu dan menerima dialog workspace trust, sehingga repositori hasil clone tidak bisa menyetujui servernya sendiri. Itu disengaja: meng-clone repo tidak boleh diam-diam membiarkannya menjalankan proses di mesin Anda.
Ada dua yang berbeda. Server menjalankan kode atau memegang kredensial, jadi hubungkan hanya server yang Anda percayai. Yang lebih halus, server mana pun yang mengembalikan konten eksternal — halaman web, komentar issue, surel — bisa membawa instruksi yang ditujukan kepada model, jadi perlakukan keluarannya sebagai masukan tidak tepercaya, bukan sebagai data yang Anda minta.
Setiap kali CLI yang bagus sudah ada. Perkakas baris perintah seperti CLI GitHub, CLI penyedia cloud, dan psql tidak menambah daftar tool ke konteks dan Claude bisa menjalankannya langsung, sehingga lebih hemat konteks untuk apa pun yang sudah bisa diskrip. Pakai MCP ketika alternatifnya adalah menempelkan data ke sesi berulang-ulang.

Ringkasan Utama
Claude Code terhubung ke MCP server pada tiga scope — local di konfigurasi home Anda, project lewat .mcp.json yang di-commit, dan user untuk semua proyek. Tool search menunda definisi tool secara default sehingga biaya konteks tetap rendah, dan workspace trust menentukan apakah server dari repositori hasil clone boleh terhubung sama sekali.
Begitu sebuah agen coding bisa membaca issue tracker Anda, mengueri basis data, dan memeriksa monitoring error, sifat pekerjaannya berubah: Anda berhenti menempelkan konteks dan mulai mengajukan pertanyaan. Model Context Protocol adalah standar terbuka yang memungkinkan itu, dan Claude Code berbicara dengannya secara native.
Yang lebih jarang dibahas adalah sisi tata kelolanya. Setiap server yang Anda tambahkan adalah sebuah permukaan — untuk pembengkakan konteks, untuk kredensial, dan untuk konten yang datang dari luar basis kode Anda. Ini cara menyiapkannya dengan benar, beserta bagian-bagian tajamnya.
MCP adalah protokol klien-server. Claude Code adalah kliennya; setiap server menyediakan kombinasi tool yang bisa dipanggil, resource yang bisa dibaca, dan prompt yang bisa ditawarkan sebagai slash command. Protokolnya terbuka dan tidak spesifik untuk Anthropic, dan karena itulah server yang sama bisa melayani beberapa klien berbeda.
Pemicu praktis untuk menambahkannya sederhana: kalau Anda mendapati diri menyalin data ke dalam sesi dari sistem lain — sebuah tiket, log, skema — sistem itu pantas mendapat server. Kalau Anda tidak menyalin apa pun, kemungkinan besar Anda tidak membutuhkannya, dan dokumentasi resminya eksplisit bahwa perkakas baris perintah biasa sering lebih hemat konteks daripada MCP server untuk pekerjaan yang sama.

Scope yang Anda pilih menentukan di proyek mana sebuah server dimuat dan apakah tim Anda ikut mendapatkannya. Salah memilih adalah cara eksperimen pribadi berakhir di sesi semua orang, atau cara server tim harus ditambahkan ulang oleh setiap anggota baru.
| Scope | Dimuat di | Dibagikan ke tim | Disimpan di |
|---|---|---|---|
| Local (default) | Hanya proyek tempat Anda menambahkannya | Tidak | Konfigurasi home Anda, di bawah path proyek tersebut |
| Project | Hanya proyek itu | Ya, lewat version control | Berkas .mcp.json yang di-commit di root proyek |
| User | Setiap proyek yang Anda buka | Tidak | Konfigurasi home Anda |
Patokan saya: scope user untuk hal-hal tentang saya — catatan saya, kalender saya, akun cloud saya. Scope project untuk hal-hal tentang basis kode yang dibutuhkan rekan kerja sejak hari pertama. Scope local untuk apa pun yang eksperimental atau menyimpan kredensial yang tidak berniat saya bagikan.
Server hadir dalam beberapa transport: proses lokal lewat stdio, endpoint HTTP jarak jauh, endpoint SSE, dan WebSocket untuk server yang mendorong event. Baris perintah menutup semua yang umum, dan bentuk JSON-nya menerima streamable-http sebagai alias http sehingga konfigurasi yang disalin dari dokumen vendor bisa dipakai tanpa diubah.
# Remote HTTP server, shared with the team via .mcp.json
claude mcp add --transport http --scope project sentry https://mcp.sentry.dev/mcp
# Local stdio server: everything after -- is passed to the server untouched
claude mcp add --env DB_URL=postgres://localhost/dev --transport stdio db \
-- npx -y @company/db-mcp --readonly
# Check what is configured and whether it actually connects
claude mcp list # ✔ Connected / ! Needs authentication / ✘ Failed
claude mcp get sentry # one server in detailLangkah verifikasinya lebih penting daripada kelihatannya. Menambahkan server hanya menulis konfigurasi; kolom statuslah yang memberi tahu apakah ia terhubung, butuh autentikasi, atau gagal. Server yang berhenti di status butuh-autentikasi terlihat sudah terkonfigurasi dan tidak melakukan apa-apa, dan itulah bentuk paling umum dari keluhan sudah saya tambahkan tapi Claude mengabaikannya.
Untuk server stdio, ingat bahwa semua setelah tanda dua strip diteruskan ke server apa adanya. Pemisah itulah yang memungkinkan Anda memberi flag milik server tanpa Claude Code mencoba menafsirkannya, dan melupakannya menghasilkan error membingungkan yang tampak seperti servernya rusak.
Keberatan paling jelas terhadap menghubungkan banyak server adalah konteks. Dulu setiap definisi tool dimuat ke jendela saat sesi dimulai, sehingga beberapa server yang cerewet bisa memakan sebagian besar jendela sebelum Anda mengetik apa pun. Tool search mengubah itu.
Ini layak diresapi karena membalik nasihat lama. Menambahkan server yang dideskripsikan dengan baik kini murah; yang mahal adalah menambahkan server dengan instruksi kabur dan empat puluh tool yang mirip satu sama lain, karena Claude tidak bisa menilai kapan harus memakainya.

Server ber-scope project adalah konfigurasi yang datang bersama sebuah repositori, artinya meng-clone repositori tidak boleh diam-diam memberinya kemampuan menjalankan proses di mesin Anda. Claude Code menanganinya lewat workspace trust: sampai Anda memercayai sebuah folder, persetujuan yang di-commit di dalam repositori itu diabaikan dan servernya tetap berstatus menunggu alih-alih terhubung.
Risiko yang lebih dalam adalah kontennya, bukan konfigurasinya. Server mana pun yang mengambil materi eksternal — halaman web, komentar issue, surel pelanggan — bisa membawa instruksi yang ditujukan kepada model, bukan kepada Anda. Panduan resminya tegas soal memastikan Anda memercayai sebuah server sebelum menghubungkannya, dan panduan itu berlaku untuk data yang ia kembalikan sama seperti untuk kode yang ia jalankan.
Perlakukan keluaran MCP server sebagai masukan tidak tepercaya, persis seperti input pengguna di aplikasi web. Kombinasi berbahayanya adalah sesi yang bisa membaca konten eksternal, mengakses data privat, dan membuat permintaan keluar sekaligus; kalau sebuah tugas memang butuh ketiganya, ia pantas mendapat sesi terpisah yang lebih sempit, bukan sesi harian Anda.
Empat keputusan menutup sebagian besar hal yang perlu disepakati tim soal MCP sebelum ia menyebar.
Langkah terakhir itulah yang paling sering dilewati, dan justru itu yang menjaga semuanya berkelanjutan. Empat server terpilih yang rapi lebih berguna daripada lima belas yang tak seorang pun percayai.
MCP tidak gratis, dan tiga situasi ini biasanya lebih baik ditangani dengan cara lain.
MCP mengubah agen yang menalar tentang kode Anda menjadi agen yang juga bisa melihat sistem Anda, dan implementasi Claude Code sudah menghapus sebagian besar biaya konteksnya. Yang tidak bisa dihapus adalah pertimbangan manusianya: server mana yang pantas berada di konfigurasi bersama, kredensial apa yang mereka pegang, dan seberapa jauh Anda memercayai konten yang mereka kembalikan.