Longbridge
resmiPasar AS/HK — 110 alat: kuotasi real-time, opsi, pesanan, fundamental, peringatan, DCA & portofolio
Apa yang bisa Anda lakukan dengan Longbridge MCP?
- Kutipan real-time — Minta kutipan langsung dan historis, candlestick, kedalaman pasar, serta data opsi di pasar AS dan HK.
- Portofolio dan perdagangan — Tinjau posisi, saldo, dan eksekusi, atau ajukan, batalkan, dan ganti pesanan, termasuk kombinasi opsi multi-leg.
- Fundamental dan riset — Ambil laporan keuangan, dividen, pandangan analis, valuasi, dan informasi eksekutif perusahaan untuk suatu saham.
- Penyaringan dan kalender — Jalankan pencarian penyaring saham atau periksa kalender keuangan untuk laporan laba, dividen, IPO, dan data makro.
- Peringatan dan rencana berkala — Buat peringatan harga, kelola rencana dollar-cost averaging, dan siapkan strategi grid trading.
- Respons terfilter — Berikan ekspresi
_jqke alat apa pun untuk memangkas respons besar sehingga hanya menyisakan kolom yang Anda perlukan.
Server MCP Terhosting
npx add-mcp 'https://mcp.longbridge.com'Terpasang ke Claude Code, Codex, Cursor, dan lainnya
Dokumentasi
Longbridge MCP Server
Server MCP resmi untuk broker Longbridge. 164 alat untuk kuotasi real-time, opsi, perutean order, fundamental, peringkat analis, kalender, IPO, peringatan harga, rencana DCA, perdagangan grid, analitik portofolio, dan daftar saham komunitas — mencakup pasar AS dan HK. Dibuat dengan Rust menggunakan rmcp dan axum.
Kini tersedia di ChatGPT dan Claude
Longbridge resmi tercantum di direktori Apps ChatGPT dan direktori Connectors Claude.
Berinteraksilah dengan pasar menggunakan bahasa sehari-hari — kuotasi, opsi, fundamental, dan portofolio Anda sendiri —
tanpa perlu mengedit file konfigurasi atau menempelkan token.
| Tambahkan di satu tempat | Lalu cukup tanyakan | |
|---|---|---|
| ChatGPT | Settings → Apps & Connectors → tambahkan Longbridge | "Bagaimana perdagangan NVDA hari ini?" · "Tampilkan posisi HK saya" |
| Claude | Settings → Connectors → tambahkan Longbridge (web · desktop · mobile) | "Bandingkan valuasi AAPL dan MSFT" · "Apakah ada IPO minggu ini?" |
Masuk sekali dengan akun Longbridge Anda. Setiap permintaan menggunakan endpoint ter-host yang sama dan diamankan dengan OAuth 2.1 seperti yang didokumentasikan di bawah — data pasar hanya-baca ditambah alat akun, portofolio, dan perdagangan lengkap, semuanya dilindungi oleh kredensial Anda sendiri.
Sorotan
- 164 alat, satu endpoint — kuotasi, opsi, perutean order, fundamental, riset analis, penyaring, IPO, peringatan, DCA, perdagangan grid, dan analitik portofolio di pasar AS dan HK.
- Dirancang tanpa status — setiap permintaan meneruskan token Bearer langsung ke SDK Longbridge. Tidak ada sesi, basis data, atau data yang disimpan di sisi server.
- OAuth 2.1, ditemukan otomatis — metadata protected-resource RFC 9728 dan authorization-server RFC 8414; klien menyelesaikan alur tanpa perlu menempelkan token.
- Respons yang rapi dan bertipe — kolom snake_case, stempel waktu RFC 3339, simbol yang mudah dibaca, dan skema respons bertipe yang tersedia sebagai resource MCP.
Dibuat dengan Rust menggunakan rmcp dan axum.
Filter respons alat dengan jq
Setiap alat menerima string _jq opsional dalam argumennya. Ekspresi dijalankan
pada JSON lengkap yang dikembalikan, setelah serialisasi respons normal. Nama _jq
dicadangkan untuk pemfilteran respons agar tidak berbenturan dengan parameter bisnis.
Panduan penggunaan dikirim satu kali dalam initialize respons MCP pada bagian instructions;
setiap skema alat hanya mendeklarasikan nama dan tipe parameter opsional.
Contohnya:
{
"name": "quote",
"arguments": {
"symbols": ["AAPL.US", "MSFT.US"],
"_jq": "map({symbol, last_done})"
}
}
Gunakan .data[:5] untuk mengambil lima entri pertama dari array data,
.data | map(select(.price > 10)) untuk memilih baris, atau {total: .total} untuk
memproyeksikan kolom. Ekspresi menggunakan sintaks yang kompatibel dengan jq dari mesin jaq;
tidak diperlukan executable jq terpisah.
- Hilangkan
_jq(atau berikannull) untuk mempertahankan respons asli. - Satu nilai keluaran dikembalikan langsung, beberapa nilai sebagai array, dan tanpa
nilai sebagai
[]. Skalar dan array berupa teks JSON; objek juga muncul distructuredContent, yang hanya berisi kolom hasil filter. - Respons teks biasa tersedia sebagai string JSON. Beberapa blok konten tanpa konten terstruktur tersedia sebagai array.
- Kesalahan alat dan penjelasan izin/tidak ada data tidak difilter.
- Ekspresi kosong, tidak valid, atau bukan string ditolak sebelum alat dijalankan. Jika pemfilteran gagal saat runtime, respons menyatakan dengan jelas bahwa alat sudah dijalankan. Jangan otomatis mengulangi operasi tulis seperti mengirim order.
- Akses lingkungan, impor sistem berkas, dan filter pencatatan log tidak tersedia. Keluaran dibatasi hingga 10.000 nilai dan 8 MiB; jika batas terlampaui, akan dikembalikan kesalahan, bukan hasil parsial.
Karena filter dapat mengubah bentuk respons, alat tidak mengiklankan outputSchema tetap.
Skema bertipe asli tetap tersedia melalui resources/list
dan resources/read di lb://tools/{tool-name}/output-schema untuk alat yang didukung skema.
Hubungkan klien Anda sendiri
Longbridge menyediakan endpoint ter-host di https://mcp.longbridge.com — arahkan klien MCP apa pun ke sana dan selesaikan OAuth saat diminta. Otorisasi ditemukan otomatis melalui RFC 9728; tidak ada token yang perlu ditempelkan.
Claude Code
claude mcp add --transport http longbridge https://mcp.longbridge.com
Claude Desktop — tambahkan ke claude_desktop_config.json, lalu mulai ulang:
{ "mcpServers": { "longbridge": { "url": "https://mcp.longbridge.com" } } }
Codex — tambahkan server, lalu selesaikan OAuth di browser:
codex mcp add longbridge --url https://mcp.longbridge.com
codex mcp login longbridge
Cursor · Cline · Windsurf · Zed · klien lainnya — arahkan ke https://mcp.longbridge.com dengan transport streamable-http.
Perintah Claude Code lainnya
# Local self-hosted instance (see Self-hosting below)
claude mcp add --transport http longbridge-local http://localhost:8000/mcp
claude mcp list # registered servers
claude mcp get longbridge # config + auth status
claude mcp remove longbridge # unregister
claude mcp logout longbridge # re-trigger OAuth after revocation
Saat pertama kali digunakan, klien membaca tantangan WWW-Authenticate, mengambil /.well-known/oauth-protected-resource (RFC 9728), lalu membuka browser untuk alur OAuth Longbridge. Token di-cache per sesi dan diperbarui secara otomatis.
164 alat
Dua puluh kategori yang mencakup data pasar, perdagangan, riset, dan pengelolaan akun.
| Kategori | Jumlah | Cakupan |
|---|---|---|
| Quote | 32 | Kuotasi real-time dan historis, candlestick, kedalaman pasar, broker, opsi, waran, daftar pantauan, arus modal, suhu pasar, posisi short, volume opsi |
| Fundamental | 33 | Laporan/laporan keuangan, segmen bisnis, pandangan institusi, perusahaan sejenis/valuasi industri, dividen, prakiraan EPS, valuasi & perbandingan valuasi, info perusahaan/eksekutif, pemegang saham, aksi korporasi, metrik operasional |
| Trade | 15 | Pengajuan/pembatalan/penggantian order, order kombinasi opsi multi-leg, posisi, saldo, eksekusi, arus kas, margin |
| Market | 15 | Status pasar, peringkat industri/penggerak teratas, kepemilikan broker, premi A/H, statistik perdagangan, anomali, perdagangan/margin short, konstituen indeks |
| DCA | 9 | Buat/perbarui/jeda/lanjutkan/hentikan rencana dollar-cost averaging, riwayat eksekusi, statistik, pemeriksaan dukungan |
| Grid | 11 | Kirim/ganti/batalkan/tangguhkan/mulai ulang order perdagangan grid, baca daftar/detail/riwayat pemicu, info pengaturan per simbol, persetujuan strategi satu kali |
| Sharelist | 8 | CRUD daftar saham komunitas, tambah/hapus/urutkan anggota, daftar populer |
| IPO | 7 | Langganan IPO, kalender, saham yang tercatat, detail order, analisis laba/rugi |
| Content | 7 | Daftar/detail berita, CRUD topik diskusi dan balasan |
| Alert | 5 | CRUD peringatan harga (tambah, hapus, aktifkan, nonaktifkan, daftar) |
| Screener | 5 | Pencarian penyaring saham, indikator, rekomendasi/pengelolaan strategi |
| Portfolio | 4 | Nilai tukar, analisis laba/rugi (ringkasan, detail, terealisasi) |
| ATM | 3 | Kartu bank, catatan penarikan, catatan setoran |
| Macrodata | 2 | Daftar dan detail indikator makroekonomi |
| Search | 2 | Pencarian berita, pencarian topik komunitas |
| Statement | 2 | Daftar dan ekspor laporan rekening |
| Calendar | 1 | Kalender keuangan (laporan laba, dividen, IPO, data makro, penutupan) |
| Quant | 1 | Jalankan skrip indikator kuantitatif pada data K-line historis |
| Authenticate | 1 | Pertukaran kode OAuth untuk klien yang tidak dapat menyelesaikan pengalihan browser |
| Utility | 1 | Waktu UTC saat ini |
Hosting sendiri
Lebih suka menjalankan instans sendiri? Jalankan image yang dipublikasikan:
docker run -p 8443:8443 \
-v /path/to/certs:/certs:ro \
ghcr.io/longbridge/longbridge-mcp \
--bind 0.0.0.0:8443 \
--base-url https://mcp.example.com \
--tls-cert /certs/cert.pem \
--tls-key /certs/key.pem
Atur
--base-urlke URL yang dapat dijangkau dari luar pada deployment publik mana pun — URL ini dipublikasikan dalam metadata OAuth yang digunakan klien untuk menemukan server otorisasi. Nilai defaultnya adalahhttp://localhost:{port}, yang tidak dapat digunakan oleh klien jarak jauh.
Atau bangun dari sumber: cargo build --release && ./target/release/longbridge-mcp.
Konfigurasi & variabel lingkungan
Konfigurasi berada di ~/.longbridge/mcp/config.json (ganti direktori dengan LONGBRIDGE_MCP_CONFIG_DIR). Flag CLI memiliki prioritas lebih tinggi. Jika tls_cert dan tls_key sama-sama diatur, server berjalan menggunakan HTTPS; jika tidak, HTTP. base_url secara default bernilai https://localhost:{port} dengan TLS atau http://localhost:{port} tanpa TLS.
| Opsi | Kunci Konfigurasi | Flag CLI | Default | Deskripsi |
|---|---|---|---|---|
| Alamat bind | bind | --bind | 127.0.0.1:8000 | Alamat listen server HTTP |
| URL dasar | base_url | --base-url | otomatis | URL dasar publik untuk metadata resource |
| Direktori log | log_dir | --log-dir | (stderr) | Direktori untuk file log bergulir |
| Sertifikat TLS | tls_cert | --tls-cert | (tidak ada) | File sertifikat PEM untuk HTTPS |
| Kunci privat TLS | tls_key | --tls-key | (tidak ada) | File kunci privat PEM untuk HTTPS |
| Upstream canary | canary | --canary | false | Hubungkan ke lingkungan canary Longbridge (*.longbridge.xyz). --canary=false memaksa penggunaan production meskipun file konfigurasi mengaktifkannya |
Lingkungan Tiongkok daratan (*.longbridge.cn) bukan flag: lingkungan ini dipilih otomatis saat LONGBRIDGE_REGION=cn diatur (variabel yang sama dengan yang digunakan SDK), sehingga klaster Tiongkok daratan tidak memerlukan pengaturan khusus.
Endpoint upstream ditetapkan berdasarkan lingkungan yang dipilih:
| Production (default) | Canary (--canary) | Mainland (LONGBRIDGE_REGION=cn) | |
|---|---|---|---|
| OpenAPI | https://openapi.longbridge.com | https://openapi-global.longbridge.xyz | https://openapi.longbridge.cn |
| Quote WebSocket | wss://openapi-quote.longbridge.com/v2 | wss://openapi-global-quote.longbridge.xyz/v2 | wss://openapi-quote.longbridge.cn/v2 |
| Trade WebSocket | wss://openapi-trade.longbridge.com/v2 | wss://openapi-global-trade.longbridge.xyz/v2 | wss://openapi-trade.longbridge.cn/v2 |
| OAuth / halaman connect | openapi.longbridge.com / open.longbridge.com | openapi-global.longbridge.xyz / open.longbridge.xyz | openapi.longbridge.cn / open.longbridge.cn |
Canary menggunakan gateway -global, bukan openapi.longbridge.xyz: hanya gateway pertama yang berada di balik CloudFront dan melakukan perutean pusat data x-dc-region, yang diperlukan server ini untuk melayani kredensial berawalan us_ dan ap_ dari satu proses.
Canary dan mainland menetapkan semua URL di atas saat startup; production menyerahkan resolusi kepada SDK, kecuali kredensial us_ tanpa override upstream yang ditetapkan ke gateway global .com. Lihat src/endpoints.rs untuk aturan pemilihan yang tepat.
Variabel lingkungan lanjutan — sebagian besar deployment tidak pernah mengubahnya; variabel ini tersedia untuk debugging SDK dan deployment edge/entri global.
| Variabel | Default | Deskripsi |
|---|---|---|
LONGBRIDGE_MCP_CONFIG_DIR | ~/.longbridge/mcp | Direktori file konfigurasi |
LONGBRIDGE_PUBLIC_HOSTS | (tidak ada) | Nama host yang dipisahkan koma dan diterima dari header X-Host yang disisipkan edge; permintaan yang cocok akan mengembalikan host tersebut dalam tantangan 401 / metadata RFC 9728. Tidak diatur = X-Host diabaikan |
LONGBRIDGE_GLOBAL_OAUTH_URL | (tidak ada) | URL server otorisasi yang diumumkan kepada permintaan yang datang melalui X-Host yang diizinkan (entri global satu domain). Tidak diatur = gunakan URL dasar OpenAPI mode |
LONGBRIDGE_MCP_QUOTE_WS_IDLE_TTL_SECS | 600 | Detik tanpa aktivitas sebelum konteks WebSocket kuotasi yang di-cache dikeluarkan |
LONGBRIDGE_MCP_QUOTE_WS_MAX_CONTEXTS | 1024 | Jumlah maksimum konteks WebSocket kuotasi yang di-cache per proses server |
LONGBRIDGE_MCP_LOG_PAYLOADS | (tidak diatur) | 1 menghapus batas log payload (lihat di bawah). Jangan pernah mengaturnya di production |
LONGBRIDGE_LOG_PATH | (tidak ada) | Jalur log internal SDK. Biarkan tidak diatur di production — SDK menulis isi permintaan/respons tanpa filter ke sana |
Pencatatan log & data pelanggan
Permintaan dan respons MCP membawa data pelanggan — saldo kas, posisi, riwayat pesanan — dan frame SDK upstream membawa token akses. Tidak satu pun boleh masuk ke file log, jadi server membatasi target log yang akan mencetaknya, terlepas dari `RUST_LOG`:| Target | Batas | Yang akan dicetak jika tidak dibatasi |
|---|---|---|
longbridge_httpcli | warn | Permintaan OpenAPI dan isi respons lengkap (INFO) |
longbridge_wscli | warn | Setiap frame WebSocket, termasuk token autentikasi (INFO) |
longbridge::trade | warn | Peristiwa push pesanan (INFO) |
rmcp | info | Permintaan MCP yang didekode dan hasil tool lengkap (DEBUG), frame JSON-RPC mentah (TRACE) |
Jadi, meningkatkan tingkat verbositas aman: RUST_LOG=debug (atau trace) menampilkan log server itu sendiri tanpa membocorkan data pelanggan. Ada dua opsi yang menonaktifkan perlindungan ini, dan keduanya secara default nonaktif — LONGBRIDGE_MCP_LOG_PAYLOADS=1 (menghapus batas; gunakan hanya secara lokal dengan akun pengujian) dan LONGBRIDGE_LOG_PATH (membuat SDK menulis isi tanpa filter ke direktori tersebut; server akan memberi peringatan saat startup jika opsi ini disetel).
Endpoint HTTP, autentikasi & metrik
Server mengharapkan token akses OAuth Longbridge di Authorization: Bearer <token>. Jika autentikasi tidak ada atau tidak valid, server mengembalikan 401 dengan header WWW-Authenticate yang mengarah ke metadata protected resource, yang mengarahkan klien ke server otorisasi OAuth Longbridge.
Kirim x-papertrading: true (atau 1) dalam permintaan untuk menjalankannya di lingkungan perdagangan simulasi. Upstream menolak permintaan perdagangan simulasi yang menggunakan token uang sungguhan, jadi header ini berfungsi sebagai pengaman, bukan sebagai sakelar perutean: header ini hanya dapat membatasi tindakan yang boleh dilakukan oleh sebuah token. LONGBRIDGE_PAPERTRADING=true mengaktifkannya untuk seluruh deployment.
| Metode | Jalur | Deskripsi |
|---|---|---|
| GET | /.well-known/oauth-protected-resource | Metadata Protected Resource (RFC 9728) |
| GET | /.well-known/oauth-authorization-server | Metadata Authorization Server (RFC 8414); mengiklankan endpoint authorize/register Longbridge langsung serta endpoint token/revoke yang diproksikan |
| POST | /oauth2/token | Proksi token OAuth; menentukan x-dc-region dari kode/token refresh, dengan AP sebagai nilai default |
| POST | /oauth2/revoke | Proksi pencabutan OAuth; menentukan x-dc-region dari token, dengan AP sebagai nilai default |
| GET | /metrics | Metrik Prometheus |
| POST/GET/DELETE | /mcp | Endpoint MCP Streamable HTTP (memerlukan token Bearer) |
Metrik Prometheus: mcp_tool_calls_total (counter), mcp_tool_call_duration_seconds (histogram), dan mcp_tool_call_errors_total (counter) — masing-masing diberi label berdasarkan tool_name.
Pengembangan
cargo +nightly fmt # format
cargo clippy # lint
cargo test # test
Lisensi
Dirilis di bawah Lisensi MIT.