Is FinBridge MCP server safe?
Yes, with the usual care.
Safe to use. Minor gaps such as a missing repository or slower maintenance.
No critical or high findings in the latest scan.
Public scan report
scanner v0.1.9 · 2026-09-19 · same rubric, same numbers if you re-run it
1 low
- –Code scanremote-only server, no package to scann/a
- Live reliabilityremote reachable in 2029ms17/20
- Tool poisoning44 tool descriptions checked13/15
- Auth qualityAPI key sent as a header8/15
- Maintenancelast push 11 days ago15/15
- Maintainer identitynamespace and repository owner differ; GitHub account older than a year; website matches verified namespace7/10
Findings (1)
- lowUnusually long tool description (over 2,000 characters)
poison.long-descriptiontool import_portfolio: …Store the structured holdings explicitly entered by the user in their FinBridge portfolio. Uploaded files, screenshots, chat history and extracted file content are not supported sources for this connector. Accepts listed stocks (KR/US/TW/JP) as well as cash, crypto (BTC etc.) and physical assets (gold): stocks are matched against the database, crypto and gold (PAXG) get live ccxt quotes, cash and physical assets are stored at the given value. For ETFs or foreign products not in the database, pass value directly. If the user specifies an asset class, pass asset_class as well (cash|bond|physical|growth|dividend|crypto|other; Korean labels 현금|채권|현물|성장주|배당주|가상자산|기타 are accepted). Registered listed stocks are also added to the watchlist automatically. Use when: the user explicitly enters what they hold and wants it stored for get_portfolio. There is no per-holding edit or delete tool: to change or remove holdings, re-import the complete corrected list with replace=true (replace=false only adds/updates the rows given). Not this tool for: the watchlist (manage_watchlist — companies followed, no quantities), valuing a company (get_valuation), or reading what is already stored (get_portfolio). IMPORTANT — read the response before telling the user you are done: 1. Confirmation gate: if the user already has a stored portfolio, this call returns `preview:true` with a `changes` diff (added/removed/changed) and does NOT save anything, unless you pass confirm=true. Show the diff to the user — call out `changes.removed` especially: if the submission was only part of their holdings, those positions will look fully sold. Only pass confirm=true after the user has seen and accepted the diff (skip this if `get_portfolio` was empty to begin with — there is nothing to compare against). 2. Missing fields: each saved row reports `missing_fields` (commonly `acquired_on`, since brokerage statements rarely include it) and unresolved symbols appear in `needs_input` — ambiguous names/codes list `candidates` (do not guess one), unmatched symbols need a ticker/code or a `value`. Rows with missing fields ARE saved (never block on incompleteness) — ask the user for the missing pieces and call this tool again for just those rows to fill them in. 3. Cash: check the `cash` field. If `status` is `not_asked`, the stored portfolio has no cash balance on file (this is different from a confirmed zero) — ask the user for their cash balance (amount or % of the portfolio) and its currency, then import it as one more holding: `{symbol:'현금', value, currency, asset_class:'현금'}`. Without it, equity weights in get_portfolio are overstated. 4. Always show the user the per-row summary (name/qty/avg_price recognized) before treating the import as authoritative — a misread quantity produces a wrong return. If something was saved wrong, undo it with restore_portfolio_snapshot (defaults to the snapshot right before this one).…
Overall 80/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON
Other servers that do what FinBridge does
aikstockdata — Korean Stock DataKorean stocks: median price path after each DART filing type, T+1 closes, earnings. 12 tools, no keynot reviewedGrowingA- KronosStock price forecasting for China A-shares — Kronos K-line time-series modelnot reviewedEstablishedB
- ru-marketplace-mcpRead-only MCP servers for Russian marketplaces: prices, stock, ratings, reviews, seller identitynot reviewedGrowingA