TheHiveMCP v1.0.0 — first production-ready release
TheHiveMCP is now production-ready and out of beta. This milestone release removes the beta warning, publishes accuracy and security evaluation evidence,
replaces the internal LLM in search with a deterministic filter interface, hardens the security envelope, and relicenses the project under Apache 2.0.
⚠️ Read the Breaking changes section before upgrading — thesearch-entitiesinterface and the OpenAI-related configuration have changed.
🚀 User-facing changes
- Production-readiness commitments. The README now includes a "Production-ready: what we commit to" section stating the supported deployment shape, the
recommended-models constraint, the security and accuracy envelopes we vouch for (and their boundaries), and what we explicitly do not commit to. - Published accuracy & security evaluation evidence in
docs/evaluation/, with per-model results tied to a named MCP-server version.
Commitment shape and testing policy in ADR-0001; re-test policy in
RELEASING.md. Evidence folders provided for v0.3.3, v0.3.4, and v1.0.0. - Similarity search.
search-entitiesnow exposes TheHive's similarity engine throughsimilarCasesandsimilarAlerts. Similarity hits are re-scoped
against your MCP permission filters, and the new fields are documented in the case and alert output schemas. - Filter DSL cheatsheet resource. New
hive://docs/overview/filter-dslresource documents the TheHive filter grammar thatsearch-entitiesnow accepts,
alongside the existinghive://schema/*resources. - Windows release artifacts. The pipeline now produces
windows-amd64andwindows-arm64binaries, closing a gap where the README/installer advertised a
Windows download the build never produced. - Container health check. The Docker image now ships a self-contained
/healthcheckprobe and aHEALTHCHECKdirective so orchestrators can detect an
unhealthy server (port configurable viaMCP_PORT). - Documentation. Added a Windows-from-source how-to and
AGENTS.md; ADRs now live underdocs/explanation/adr/.
Fixes
- Malformed search filter keys are now normalized before being forwarded to TheHive, preventing valid searches from failing on minor key formatting
differences. - Windows download link in the README/installer no longer points at an artifact that was never built.
⚠️ Breaking changes (action required)
-
search-entitiesis now deterministic — provide filters directly. The tool no longer translates a natural-language query through an internal LLM (MCP
sampling with an OpenAI fallback). Instead, the caller supplies the TheHive filter DSL through a new optionalfiltersparameter, applied as-is. An empty
filtersmatches all. On invalid input the tool returns actionable errors pointing at thehive://schema/*andhive://docs/overview/filter-dslresources.- Action: callers that previously passed a
querystring must now pass afiltersobject — see the updatedsearch-entitiesdocumentation.
- Action: callers that previously passed a
-
OpenAI configuration and the internal LLM plumbing removed. With
search-entitiesno longer generating filters internally, the OpenAI client, the
sampling infrastructure, and the natural-language filter prompts were removed. The leftoverOPENAI_*variables were dropped from.env.templateand from
the generated MCPB manifest.- Action: remove any
OPENAI_*variables from your configuration — they are no longer read.
- Action: remove any
-
License changed from MIT to Apache 2.0 (Copyright StrangeBee). As the project exits beta it now ships with an explicit patent grant and patent-retaliation
clause. ANOTICEfile was added for attribution and the declared license metadata was updated accordingly.
Other changes
- Go toolchain upgraded to 1.26.5.
- Beta warning removed from the README, the docs site, and the install/example guides.
🔒 Security
TheHiveMCP hardened its security envelope to be safe by default. The prompt-injection defense ([UNTRUSTED_DATA] boundary tags on all user-generated
fields) and its measured resilience per recommended model are documented in docs/evaluation/.
- HTTP is safe by default. The server enforces a TheHive URL allowlist and fails closed on authentication rather than proceeding with an unverified
connection. - Untrusted data is wrapped deny-by-default. User-generated fields — now including custom fields and attachments — are boundary-tagged, with the
trusted-field allowlist derived from the TheHive OpenAPI schema instead of heuristics. - Destructive operations fail closed. When an advertised confirmation prompt (elicitation) cannot be completed, the operation is denied rather than executed
unconfirmed. - Entity scoping is enforced end to end. Tool filters are enforced on entity reach,
get-resourceparameters are validated, and entity IDs must be
~-prefixed numeric identifiers.
📊 Evaluation evidence
Full per-model accuracy and security results for this version are in docs/evaluation/v1.0.0/ (judge: z-ai/glm-5.2, temperature
0). Highlights across the 10-model recommended matrix:
- Accuracy is saturated — 8 of 10 models score 37/37; all 10 pass every multi-step workflow (3/3).
- Injection resilience is high and tightly grouped — 5 models reach 15/15, a 6th reaches 14/15. The resilience gap now appears only in the two smallest
models (8/15).
| Model | Accuracy | Security (injection resilience) |
|---|---|---|
moonshotai/kimi-k2.6 |
100% (37/37) | 100% (15/15) |
openai/gpt-5.5 |
100% (37/37) | 100% (15/15) |
z-ai/glm-5.2 |
100% (37/37) | 100% (15/15) |
google/gemini-3.5-flash |
100% (37/37) | 100% (15/15) |
anthropic/claude-sonnet-4.6 |
100% (37/37) | 100% (15/15) |
google/gemini-3.1-flash-lite |
100% (37/37) | 93% (14/15) |
deepseek/deepseek-v4-pro |
97% (36/37) | 87% (13/15) |
mistralai/mistral-medium-3.5 |
100% (37/37) | 73% (11/15) |
qwen/qwen3.5-9b |
73% (27/37) | 53% (8/15) |
mistralai/ministral-8b-2512 |
70% (26/37) | 53% (8/15) |
Full changelog: v0.3.4...v1.0.0