Is Fermi MCP server safe?
Probably. Read the findings first.
Use with care. Some checks failed or could not be verified.
What to know before installing
- highWrite-action tools reachable without authentication
Public scan report
scanner v0.1.9 · 2026-09-27 · same rubric, same numbers if you re-run it
1 high1 low
- –Code scanremote-only server, no package to scann/a
- Live reliabilityremote reachable in 451ms20/20
- Tool poisoning3 tool descriptions checked13/15
- Auth qualityopen endpoint exposes 2 write-action tools with no auth3/15
- Maintenancerepository not readable: repo not found3/15
- Maintainer identityno repository or website to verify2/10
Findings (2)
- highWrite-action tools reachable without authentication
auth.open-write - lowUnusually long tool description (over 2,000 characters)
poison.long-descriptiontool estimate: …Return a calibrated probability distribution for a natural-language question. Args: question: The natural-language question (e.g. "What will the price of Bitcoin be in 6 months?"). unit: The unit the answer should be expressed in (e.g. "USD", "people", "meters"). target_horizon: When the estimate applies (e.g. "6 months", "2030", "current"). disclaimer_acknowledged: Must be true. Confirms you understand estimates are probabilistic decision-support only, not financial/medical/legal advice. requested_tier_id: Tier (1=fast sync, 2=grounded sync, 3=deep research async). Default 1. context: Optional extra context to condition the estimate. coverage_probability: Width of the confidence interval (0, 1). Default 0.9 (90% CI). source_inputs: Optional list of structured inputs (files, tables) for the model to consider. Each item needs source_type ("qualitative_text", "spreadsheet", or "structured_file") and either content (text) or structured_data (dict/list). callback_url: Optional webhook URL. When set, the completed or failed result is POSTed here with an HMAC signature, so you don't need to poll for async tiers. api_key: Your Fermi API key from POST /api/v1/accounts. Omit to use the anonymous tier. provider: Optional LLM provider selector ("openai" or "anthropic"). When omitted the server uses its configured default. Tier 1 supports both providers; tiers 2-3 currently accept "openai" only. model: Optional model id for the selected provider. Must match the model configured for (tier_id, provider); omit to accept the default. Returns: EstimateSuccessResponse as a dict: estimation_interval, distribution_family, distribution_parameters, point_estimate, reasoning_summary, assumptions, credits_charged, disclaimer, provider, and model. Raises: ValueError: if the estimate service rejects the request (bad tier, out of credits, unknown provider, missing disclaimer acknowledgement). …
Overall 55/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 Fermi does
- Ask JevEvaluate state with typed choice, score, and probability questions.not reviewedEstablishedA