---
url: https://docs.ogmabox.com/id/mcp-setup.md
description: >-
  Hubungkan agen AI ke Ogma melalui Streamable HTTP atau stdio, konfigurasikan
  izin, dan gunakan endpoint pengelolaan MCP lokal.
---

# Pengaturan Server MCP Ogma {#ogma-mcp-server-setup}

Server MCP Ogma (`ogma-mcp`) memungkinkan asisten AI yang kompatibel memeriksa konteks proyek dan, jika diaktifkan, mengendalikan peramban tertanam, mengirim permintaan, menjalankan alur kerja, dan mengumpulkan bukti. Alat catatan/tugasnya merupakan lembar catatan sesi MCP dalam memori, terpisah dari halaman Catatan persisten dalam aplikasi.

MCP ditujukan untuk alat eksternal seperti Codex, Claude Code, Cursor, dan klien Model Context Protocol lainnya. Fitur ini berbeda dari asisten AI Ruang Kerja dalam aplikasi.

Untuk daftar lengkap sumber daya dan alat, lihat [Sumber daya dan alat MCP](./reference/mcp-tools.md).

## Mulai Cepat: Aplikasi Desktop {#quick-start-desktop-app}

1. Mulai Ogma dan buka proyek yang harus diperiksa agen.
2. Buka **Pengaturan > MCP**, pilih izin yang diperlukan, dan simpan. Interaksi peramban memerlukan **Pengiriman ulang**.
3. Klik **Mulai** dan salin endpoint yang ditampilkan, biasanya `http://127.0.0.1:3000/mcp`.
4. Tambahkan ke klien MCP Anda sebagai server **Streamable HTTP**.
5. Minta agen memanggil `ogma_explain_capabilities` dan membaca `ogma://project/current` untuk memeriksa koneksi dan proyek aktif.

Cara ini tidak memerlukan build biner terpisah. Untuk navigasi halaman, formulir, alur login, dan pemecahan masalah, lihat [Otomatisasi peramban dengan MCP](./guide/mcp-browser.md).

### Alamat Koneksi {#connection-addresses}

| Antarmuka | Alamat default | Tujuan |
| --- | --- | --- |
| Transport MCP | `http://127.0.0.1:3000/mcp` | Klien MCP native terhubung di sini. |
| API REST backend | `http://127.0.0.1:8181` | `--api-url` MCP mandiri dan rute pengelolaan/bridge di bawah. |
| Listener proksi | `127.0.0.1:8080` | Merekam lalu lintas peramban; ini bukan endpoint MCP. |

Instans desktop dapat menetapkan port API backend secara dinamis. Gunakan alamat instans yang benar-benar berjalan untuk integrasi stdio/REST, dan endpoint yang ditampilkan di Pengaturan untuk MCP native. Layanan percakapan cloud tidak dapat menjangkau alamat loopback Anda tanpa klien/connector lokal.

Endpoint HTTP menyimpan status: biarkan klien menangani inisialisasi dan header sesi. Tidak ada endpoint `/sse` lama yang terpisah. Klien kustom harus mengikuti [spesifikasi transport](https://modelcontextprotocol.io/specification/2025-11-25/basic/transports) MCP.

## Kapan Menggunakan MCP {#when-to-use-mcp}

Gunakan MCP ketika asisten eksternal perlu membantu Anda:

* Merangkum lalu lintas yang direkam.
* Melakukan triase temuan.
* Menyusun draf teks laporan berbasis bukti.
* Meninjau alur kerja dan sesi Kirim Ulang.
* Menyiapkan tindakan sesuai cakupan yang Anda setujui secara eksplisit.

Gunakan [AI Ruang Kerja](./guide/workspace-ai.md) jika Anda menginginkan jendela asisten tertanam di dalam Ogma.

## Persyaratan Mode Mandiri {#standalone-requirements}

Gunakan stdio ketika klien Anda perlu menjalankan executable lokal, alih-alih terhubung ke endpoint HTTP tertanam.

* Backend Ogma berjalan pada alamat API sebenarnya (default CLI: `http://127.0.0.1:8181`)
* Biner `ogma-mcp` (dibangun dari sumber)

## Build {#build}

```bash
cargo build --locked --bin ogma-mcp --release
```

Keluaran default adalah `target/release/ogma-mcp` (`ogma-mcp.exe` pada Windows), kecuali direktori target Cargo Anda disesuaikan.

## Menjalankan {#run}

```bash
# Connect to Ogma running on the default port
./ogma-mcp

# Connect to a custom address
./ogma-mcp --api-url http://127.0.0.1:9090

# Use a larger body preview
./ogma-mcp --body-preview-bytes 2048
```

Server keluar jika tidak dapat menjangkau API Ogma. Konfigurasikan klien MCP untuk menjalankan perintah ini; stdout membawa pesan MCP dan stderr membawa diagnostik. Izin stdio berasal dari flag-nya sendiri, bukan pengaturan MCP tertanam.

## Penemuan Alat {#tool-discovery}

Server saat ini selalu mengiklankan seluruh katalog alatnya. Tidak ada pemilih profil alat di Pengaturan. Nilai `--tool-profile`, `--mcp-tool-profile`, dan `OGMA_MCP_TOOL_PROFILE` lama diterima demi kompatibilitas, tetapi tidak menyembunyikan alat atau memberikan izin.

Untuk katalog besar, mulai dengan `ogma_explain_capabilities` dan `ogma_find_tools`, alih-alih menebak masukan. Cari kata kunci tugas untuk mempersempit pilihan alat, lalu kueri nama alat secara persis untuk memeriksa kontraknya. Dispatcher peramban dan pencarian menawarkan titik masuk praktis; alat khusus tetap tersedia secara langsung. Lihat [Penemuan alat dan dispatch](./reference/mcp-tools.md#tool-discovery-and-dispatch).

## Pengaturan MCP dalam Aplikasi {#in-app-mcp-settings}

Build Ogma yang dipaketkan dapat mengelola MCP dari **Pengaturan > MCP**. Gunakan layar pengaturan ketika Anda ingin Ogma memulai atau menghentikan proses MCP tertanam untuk instans aktif.

Gunakan biner `ogma-mcp` mandiri ketika klien AI Anda mengharapkan peluncuran server MCP secara langsung.

Penyimpanan pengaturan otomatis memulai ulang proses MCP tertanam yang sedang berjalan. Hubungkan kembali klien setelahnya; ID sesi dan token konfirmasi lama tidak dapat digunakan kembali. **Diagnostik runtime** menampilkan keluaran proses terbaru.

Ogma juga menyediakan pengelolaan MCP melalui API REST lokalnya. Rute ini berada pada **port API backend**, bukan port MCP khusus. Rute digunakan oleh layar pengaturan dan bridge AI dalam aplikasi:

| Endpoint | Tujuan |
| --- | --- |
| `GET /mcp/status` | Mengembalikan `{ running, pid, endpoint, config, diagnostics }`. `endpoint` bernilai null saat berhenti; diagnostik berisi catatan `{ stream, message }` terbaru. |
| `POST /mcp/start` | Memulai MCP tertanam dengan pengaturan tersimpan dan mengembalikan status. Tanpa isi. Mengembalikan konflik jika sudah berjalan. |
| `POST /mcp/stop` | Menghentikan proses anak MCP tertanam. |
| `GET /settings/mcp` | Mengembalikan konfigurasi MCP tersimpan. |
| `PUT /settings/mcp` | Menerima objek konfigurasi lengkap, menyimpannya, dan memulai ulang MCP jika sedang berjalan. Mengembalikan konfigurasi yang diterima atau kesalahan. Hanya host bind loopback yang diizinkan. |
| `GET /mcp/tools` | Mengembalikan `{ tools, config }`, termasuk `inputSchema` setiap alat. Katalog REST ini tidak menggunakan paginasi. |
| `POST /mcp/tools/call` | Memanggil satu alat dengan `{ "name": "ogma_explain_capabilities", "arguments": {} }`. Mengembalikan `{ "result": "..." }`; uraikan teks tersebut sebagai envelope JSON alat. Ini bukan hasil MCP native dengan blok gambar. |

Bridge REST menggunakan izin tersimpan, tetapi tidak mengharuskan proses anak MCP HTTP terpisah dimulai. Bridge berbagi satu sesi bridge untuk backend/konfigurasi. Utamakan MCP native untuk sesi klien terisolasi dan keluaran gambar.

Untuk kegagalan bridge, penguraian `result` menghasilkan `{ "error": "..." }` yang berisi envelope kesalahan terserialisasi. Periksa nilai tersebut, alih-alih menganggap status sukses HTTP sebagai keberhasilan alat.

Konfigurasi MCP tersimpan default:

```json
{
  "bind_host": "127.0.0.1",
  "port": 3000,
  "allow_write_findings": false,
  "allow_export_data": false,
  "allow_read_secrets": false,
  "allow_send_requests": false,
  "allow_run_workflows": false,
  "allow_intercept_control": false,
  "tool_profile": "full"
}
```

Host bind yang diizinkan adalah `127.0.0.1`, `localhost`, dan `::1`; port harus dari `1024` hingga `65535`. Build ini tidak mengonfigurasi autentikasi untuk MCP yang diekspos ke jaringan, sehingga alamat bind publik ditolak. Kolom `allow_public_bind` dan `acknowledge_write_tool_risk` lama tidak mengesampingkan pembatasan ini.

## Claude Code {#claude-code}

Untuk endpoint desktop yang berjalan:

```bash
claude mcp add --transport http ogma http://127.0.0.1:3000/mcp
```

Gunakan endpoint yang ditampilkan Ogma jika berbeda. Lihat [Konfigurasi MCP Claude Code](https://code.claude.com/docs/en/mcp) untuk cakupan konfigurasi dan opsi stdio. Verifikasi dengan: "Proyek apa saja yang dimiliki Ogma?"

## Cursor {#cursor}

Gabungkan entri ini ke `.cursor/mcp.json` proyek Anda atau `~/.cursor/mcp.json` tingkat pengguna:

```json
{
  "mcpServers": {
    "ogma": {
      "url": "http://127.0.0.1:3000/mcp"
    }
  }
}
```

Aktifkan koneksi dalam pengaturan MCP Cursor. Lihat [Dokumentasi MCP Cursor](https://cursor.com/docs/mcp).

### Konfigurasi Klien Stdio {#stdio-client-configuration}

Klien yang menjalankan executable dapat menggunakan entri server ini, dengan menyesuaikan lokasi file konfigurasi jika diperlukan:

```json
{
  "mcpServers": {
    "ogma": {
      "command": "/absolute/path/to/ogma-mcp",
      "args": ["--api-url", "http://127.0.0.1:8181"]
    }
  }
}
```

Pada Windows, gunakan path lengkap executable dan escape garis miring terbalik dalam JSON. Beberapa klien juga memerlukan `"type": "stdio"`. Tambahkan flag izin ke `args` sesuai kebutuhan.

## Izin {#permissions}

Keenam kapabilitas dengan hak khusus nonaktif secara default. Baca nilai saat ini dari `ogma://mcp/permissions`. Alat yang tercantum masih dapat menolak eksekusi hingga kapabilitasnya diaktifkan. Tabel lengkap flag/variabel lingkungan ada dalam [Referensi CLI](./reference/cli.md#standalone-ogma-mcp-flags).

Interaksi peramban, pengelolaan konteks, peralihan proyek, dan semua pemanggilan alur autentikasi memerlukan `--allow-send-requests`. Pengamatan peramban dapat memeriksa peramban yang sudah berjalan tanpa mengaktifkan alat kontrolnya. `--allow-read-secrets` (atau `OGMA_MCP_ALLOW_READ_SECRETS=true`) secara terpisah mengizinkan nilai variabel lingkungan yang tidak disamarkan.

Server **tidak memiliki kuota aktivitas per menit atau per sesi**. Masing-masing alat tetap menegakkan ukuran masukan, ukuran batch, pemeriksaan cakupan, dan batas waktunya. Flag kuota pengiriman/alur kerja lama tidak lagi didukung.

## Mode Baca Saja {#read-only-mode}

Secara default, server MCP hanya dapat membaca. Operasi berikut tidak tersedia kecuali diaktifkan secara eksplisit:

* Mengirim permintaan (Kirim Ulang)
* Mengendalikan peramban tertanam, crawler, perekaman autentikasi, dan helper probe aktif
* Menjalankan alur kerja
* Membuat atau memodifikasi temuan
* Memodifikasi cakupan atau aturan cocokkan-ganti
* Memodifikasi atau meneruskan lalu lintas yang diintersepsi
* Menghapus data
* Mengakses nilai variabel lingkungan rahasia
* Mengekspor data

Pratinjau isi secara default 512 byte. `--body-preview-bytes` menyesuaikan pratinjau dan harus sedikitnya 1; flag ini tidak membatasi keluaran setiap alat. Gunakan `ogma_get_http_entry_body` untuk isi HTTP lengkap atau pencarian isi terarah, dan `ogma_get_ws_message` untuk pesan WebSocket lengkap.

## Alat Penulisan Temuan {#finding-write-tools}

Untuk mengaktifkan pembuatan temuan berbantuan AI, mulai ulang ogma-mcp dengan izin penulisan:

```bash
./ogma-mcp --allow-write-findings
```

Atau tetapkan variabel lingkungan:

```bash
OGMA_MCP_ALLOW_WRITE_FINDINGS=true ./ogma-mcp
```

### Alat penulisan yang tersedia {#write-tools-available}

| Alat | Deskripsi |
|------|-------------|
| `ogma_preview_finding_from_evidence` | Mempratinjau draf temuan dari entri HTTP (baca saja, selalu tersedia) |
| `ogma_create_finding` | Membuat temuan dengan tingkat keparahan, status, tag, dan tautan bukti |
| `ogma_update_finding` | Memperbarui temuan yang ada |
| `ogma_add_finding_tag` | Menambahkan tag ke temuan tanpa mengganti tag yang ada |
| `ogma_link_finding_evidence` | Menautkan entri HTTP, percobaan Kirim Ulang, hasil Otomatisasi, atau pesan WS ke temuan |
| `ogma_delete_finding` | Menghapus satu temuan |
| `ogma_export_findings_report` | Menghasilkan laporan HTML, Markdown, atau PDF |

Implementasi saat ini juga menggunakan izin penulisan temuan untuk alat penulisan bersama seperti pembaruan variabel lingkungan, anotasi riwayat, pemilihan cakupan, dan perubahan Cocokkan & Ganti. Lihat [Katalog alat](./reference/mcp-tools.md) untuk tindakan tersebut.

### Contoh: pembuatan temuan berbantuan AI {#example-ai-assisted-finding-creation}

Dengan `--allow-write-findings`:

1. "Analisis entri HTTP {id} untuk masalah keamanan. Jika Anda menemukan masalah nyata, gunakan ogma\_create\_finding untuk mendokumentasikannya."
2. AI akan memanggil `ogma_get_http_entry` untuk memeriksa permintaan
3. Jika bukti mendukung temuan, AI akan memanggil `ogma_create_finding` dengan bukti tertaut

### Tetap tidak tersedia dengan izin penulisan temuan saja {#still-not-available-with-finding-writes-only}

* Pengiriman ulang
* Eksekusi alur kerja
* Pembuatan ekspor
* Kontrol antrean intersepsi
* Peralihan proyek

## Alat Ekspor {#export-tools}

Untuk mengaktifkan pembuatan tugas ekspor berbantuan AI, mulai ulang ogma-mcp dengan izin ekspor:

```bash
./ogma-mcp --allow-export-data
```

Atau tetapkan variabel lingkungan:

```bash
OGMA_MCP_ALLOW_EXPORT_DATA=true ./ogma-mcp
```

### Alat ekspor yang tersedia {#export-tools-available}

| Alat | Izin yang diperlukan | Deskripsi |
|------|--------------------|-------------|
| `ogma_preview_export_plan` | Tidak ada (baca saja) | Mempratinjau data yang akan disertakan dalam ekspor |
| `ogma_list_export_jobs` | Tidak ada (baca saja) | Mencantumkan tugas ekspor terbaru |
| `ogma_get_export_job` | Tidak ada (baca saja) | Memeriksa status tugas ekspor |
| `ogma_get_export_download_info` | Tidak ada (baca saja) | Mengambil URL unduhan untuk ekspor yang selesai |
| `ogma_create_export_job` | export\_data | Membuat tugas ekspor |

### Jenis dan format ekspor yang didukung {#supported-export-kinds-and-formats}

| Jenis | Deskripsi | Format |
|------|-------------|---------|
| `http_history` | Semua permintaan HTTP melalui proksi | json, csv, raw\_http |
| `search` | Permintaan HTTP terfilter | json, csv, raw\_http |
| `findings` | Temuan keamanan | json, csv |
| `automate_results` | Hasil sesi Otomatisasi | json, csv |

Catatan: format `raw_http` hanya valid untuk jenis `http_history` dan `search`.

### Peringatan keamanan {#security-warning}

File ekspor dapat berisi isi permintaan dan respons HTTP lengkap, yang dapat mencakup kata sandi, token, dan data pribadi. Tangani file ekspor dengan kehati-hatian yang sesuai.

### Tetap tidak tersedia dengan izin ekspor saja {#still-not-available-with-export-permissions-only}

* Penghapusan file ekspor
* Pengubahan nama file ekspor
* Streaming konten ekspor melalui MCP
* Pengiriman ulang
* Eksekusi alur kerja

## Pengiriman Permintaan Kirim Ulang {#replay-request-sending}

Peringatan: ini mengaktifkan pengiriman lalu lintas HTTP keluar yang nyata melalui Kirim Ulang Ogma.

Untuk mengaktifkan:

```bash
./ogma-mcp --allow-send-requests
```

Atau melalui variabel lingkungan:

```bash
OGMA_MCP_ALLOW_SEND_REQUESTS=true ./ogma-mcp
```

### Prasyarat {#prerequisites}

1. Proksi Ogma harus berjalan
2. Cakupan aktif harus dikonfigurasi di **Cakupan Pengujian** untuk pengiriman Kirim Ulang yang dilindungi pemeriksaan
3. Host target harus berada dalam cakupan aktif

### Alat pengiriman {#send-tools}

| Alat | Izin | Deskripsi |
|------|-----------|-------------|
| `ogma_preview_replay_send` | send\_requests | Menyiapkan pengiriman, memperoleh token konfirmasi |
| `ogma_send_replay_request` | send\_requests | Menjalankan pengiriman dengan token konfirmasi |
| `ogma_create_replay_session_from_history` | send\_requests | Membuat sesi Kirim Ulang |
| `ogma_create_replay_session_raw` | send\_requests | Membuat sesi Kirim Ulang dari definisi permintaan dalam format transmisi |
| `ogma_browser_form_to_replay` | send\_requests | Membuat sesi Kirim Ulang dari formulir pada halaman langsung |
| `ogma_create_scope_preset` | send\_requests | Menyimpan prasetel cakupan; aktifkan secara terpisah dengan `ogma_set_active_scope` |
| `ogma_repeat_request` | send\_requests | Mengulang permintaan yang direkam dengan perubahan opsional |
| `ogma_replay_with_modifications` | send\_requests | Mengirim ulang permintaan yang direkam dengan nilai pengganti pada tingkat kolom |
| `ogma_http_request` | send\_requests | Mengirim permintaan HTTP langsung |
| `ogma_fetch_url` | send\_requests | Mengambil URL dan mengembalikan status, header, serta pratinjau |
| `ogma_follow_redirect` | send\_requests | Mengikuti rantai pengalihan dan melaporkan setiap tahap |
| `ogma_bulk_send_requests` | send\_requests | Mengirim batch permintaan yang dibatasi |
| `ogma_fuzz_parameter` | send\_requests | Mengganti placeholder `{{FUZZ}}` dengan nilai daftar kata |
| `ogma_multipart_upload` | send\_requests | Mengirim permintaan multipart form-data untuk pengujian unggahan |
| `ogma_websocket_connect` | send\_requests | Menghubungkan ke URL WebSocket dan bertukar pesan |
| `ogma_login_replay_auto` | send\_requests | Mengirim formulir login peramban dan merekam profil autentikasi |
| `ogma_auth_capture_profile` | send\_requests | Merekam cookie peramban, penyimpanan, token autentikasi, dan kandidat CSRF |
| `ogma_auth_apply_profile` | send\_requests | Menerapkan profil autentikasi yang direkam ke peramban |
| `ogma_auth_refresh_csrf` | send\_requests | Memperbarui kandidat CSRF dari status peramban |
| `ogma_authz_matrix_test` | send\_requests | Mengirim ulang satu permintaan dengan beberapa profil autentikasi |
| `ogma_run_active_probe_workflow` | send\_requests | Menjalankan probe aktif khusus kerentanan yang dibatasi |
| `ogma_test_race` | send\_requests | Mengirim satu permintaan secara serentak dan melaporkan respons yang menyimpang dari status modus |
| `ogma_test_smuggling` | send\_requests | Mengirim probe ketidaksinkronan permintaan CL.TE dan TE.CL melalui TCP mentah |
| `ogma_test_hpp` | send\_requests | Mengirim variasi polusi parameter HTTP |
| `ogma_run_nuclei` | send\_requests | Menjalankan pemindai berbasis templat pada URL target dengan satu templat bawaan atau yang diberikan |
| `ogma_browser_navigate` dan alat interaksi peramban | send\_requests | Mengendalikan peramban tertanam dan merekam lalu lintas yang dihasilkan |
| `ogma_crawl_site` | send\_requests | Menelusuri target dalam cakupan melalui peramban tertanam |
| `ogma_get_replay_session` | Tidak ada | Melihat metadata sesi Kirim Ulang |
| `ogma_get_replay_attempt` | Tidak ada | Melihat metadata percobaan Kirim Ulang |
| `ogma_list_replay_sessions` | Tidak ada | Mencantumkan sesi Kirim Ulang |

### Alur kerja dua langkah {#two-step-workflow}

Pasangan Kirim Ulang berbasis konfirmasi menggunakan dua pemanggilan:

1. `ogma_preview_replay_send` - tinjau permintaan, dapatkan token konfirmasi
2. `ogma_send_replay_request` - konfirmasi dan kirim dengan token

Token konfirmasi kedaluwarsa dalam 5 menit, hanya dapat digunakan sekali, dan dimiliki sesi MCP yang membuatnya. Pratinjau kembali setelah mengubah permintaan atau memulai ulang MCP. Aturan dua langkah ini tidak berlaku pada setiap alat pengiriman: alat HTTP langsung, helper pengulangan, dan tindakan peramban dapat langsung mengirim saat diaktifkan.

### Contoh sesi {#example-session}

```
Pengguna: Kirim ulang entri HTTP abc123 dan periksa responsnya
AI: (memanggil ogma_preview_replay_send dengan http_entry_id="abc123")
    - menampilkan pratinjau permintaan, token konfirmasi, status cakupan --
AI: (memanggil ogma_send_replay_request dengan confirmation_token dan request_hash)
    - menampilkan status respons, waktu, pratinjau respons --
```

### Tetap tidak tersedia dengan izin pengiriman permintaan saja {#still-not-available-with-request-sending-permissions-only}

* Eksekusi alur kerja
* Pembuatan atau pembaruan temuan
* Penghapusan

Jaga cakupan aktif tetap sempit sebelum mengaktifkan alat ini. Pemeriksaan cakupan berlaku pada jalur pengiriman yang dilindungi pemeriksaan; jangan perlakukan cakupan sebagai firewall universal untuk JavaScript peramban sembarang atau setiap helper pengambilan langsung.

## Kontrol Intersepsi {#intercept-control}

Peringatan: kontrol intersepsi memungkinkan klien MCP meneruskan, membuang, atau memodifikasi lalu lintas langsung yang sedang ditahan dalam antrean intersepsi Ogma.

Untuk mengaktifkan:

```bash
./ogma-mcp --allow-intercept-control
```

Atau melalui variabel lingkungan:

```bash
OGMA_MCP_ALLOW_INTERCEPT_CONTROL=true ./ogma-mcp
```

### Alat intersepsi {#intercept-tools}

| Alat | Izin | Deskripsi |
|------|-----------|-------------|
| `ogma_get_intercept_status` | intercept\_control | Membaca status intersepsi permintaan, respons, dan WebSocket |
| `ogma_set_intercept_enabled` | intercept\_control | Mengaktifkan atau menonaktifkan mode intersepsi |
| `ogma_list_intercept_queue` | intercept\_control | Mencantumkan item yang sedang ditahan |
| `ogma_get_intercept_item` | intercept\_control | Memeriksa satu item dalam antrean |
| `ogma_forward_intercept_item` | intercept\_control | Meneruskan item dalam antrean, dengan modifikasi opsional |
| `ogma_drop_intercept_item` | intercept\_control | Membuang item dalam antrean |
| `ogma_intercept_and_modify` | intercept\_control | Menunggu item yang cocok, memodifikasi, dan meneruskannya |

## Eksekusi Alur Kerja {#workflow-execution}

Peringatan: eksekusi alur kerja menjalankan logika alur kerja. Beberapa alur kerja mengirim lalu lintas HTTP atau membuat temuan.

Untuk mengaktifkan:

```bash
./ogma-mcp --allow-run-workflows
```

### Alat eksekusi alur kerja {#workflow-execution-tools}

| Alat | Izin | Deskripsi |
|------|-----------|-------------|
| `ogma_get_workflow_safety` | Tidak ada (baca saja) | Mengklasifikasikan efek samping alur kerja |
| `ogma_preview_workflow_run` | run\_workflows | Mempratinjau dan memperoleh token konfirmasi |
| `ogma_run_workflow` | run\_workflows | Mengeksekusi dengan token konfirmasi |
| `ogma_cancel_workflow_run` | run\_workflows | Membatalkan alur kerja aktif yang sedang berjalan |

Pratinjau dengan `workflow_id`, ditambah `input` untuk alur kerja konversi atau `trigger_entry_id` untuk masukan alur kerja aktif yang direkam. Jalankan dengan `confirmation_token` dan `definition_hash` yang dikembalikan; alur kerja konversi juga memerlukan `input_hash` dan `input` yang sama. Token kedaluwarsa setelah lima menit dan hanya dapat digunakan sekali. Baca eksekusi yang dihasilkan dengan `ogma_get_workflow_run`.

Eksekusi Otomatisasi tersedia melalui alat sesi/eksekusinya dengan **izin pengiriman permintaan**, bukan izin eksekusi alur kerja. Mencantumkan dan memeriksa eksekusi yang ada tidak memerlukan izin pengiriman.

### Persyaratan lintas izin {#cross-permission-requirements}

Alur kerja yang menggunakan `sdk.requests.send` juga memerlukan `--allow-send-requests`.
Alur kerja yang menggunakan `sdk.findings.create` juga memerlukan `--allow-write-findings`.

Deteksi didasarkan pada analisis teks statis - lihat catatan informatif di bawah.

### Catatan informatif klasifikasi keamanan {#safety-classification-advisory-note}

Klasifikasi keamanan alur kerja memeriksa teks kode sumber JavaScript untuk pola seperti `sdk.requests.send`. Deteksi ini tidak menyeluruh - pemanggilan metode SDK yang disamarkan atau dibentuk secara dinamis mungkin tidak terdeteksi. Selalu tinjau sumber JavaScript alur kerja sebelum menjalankan alur kerja yang tidak tepercaya.

### Tetap tidak tersedia dengan izin alur kerja saja {#still-not-available-with-workflow-permissions-only}

* Pemicu manual alur kerja pasif
* Penghapusan
* Perubahan variabel lingkungan

## Contoh Prompt {#example-prompts}

Setelah terhubung:

* "Tampilkan 20 permintaan HTTP terakhir ke example.com"
* "Apakah ada temuan tinggi atau kritis dalam proyek ini?"
* "Alur kerja mana yang sedang diaktifkan?"
* "Periksa apakah kueri HTTPQL `req.method.eq:\"POST\"` valid"
* "Ringkas kondisi keamanan proyek saat ini"
* "Analisis entri HTTP {id} untuk masalah keamanan"

## Pemecahan Masalah {#troubleshooting}

**Koneksi ditolak:** Mulai Ogma terlebih dahulu (`ogma --data-dir ./ogma-data`).

**Klien MCP tidak menampilkan alat:** Periksa URL transport atau path executable. Klien harus mengikuti semua kursor `tools/list`; setiap halaman memuat hingga 40 alat. Periksa pemfilteran sisi klien dan apakah rilis yang terinstal menyertakan alat yang tidak muncul.

**Sesi atau token konfirmasi tidak valid:** Hubungkan kembali setelah mulai ulang dan hasilkan token pratinjau baru.

**Peramban tidak tersedia atau tindakan gagal:** Biarkan aplikasi desktop berjalan. Periksa `ogma_browser_health`, dialog, dan [Pemulihan peramban](./guide/mcp-browser.md#recover-from-errors). Backend headless saja tidak menyediakan bridge peramban desktop.

**Tangkapan layar tidak memiliki teks yang dapat dibaca:** Gunakan klien yang mendukung konten gambar MCP native, atau periksa snapshot semantik.

**Hasil kosong:** Ogma perlu merekam lalu lintas terlebih dahulu. Jelajahi dengan proksi yang dikonfigurasi untuk meneruskan lalu lintas melalui Ogma.
