Skip to content

History / MCP Server

Revisions

  • docs(roe): sync the wiki with RoE replace, remove and history Pages around the Rules of Engagement page now match the feature: Global Settings (Upload RoE / Replace RoE, where the model chip shows), Home, Recon Presets (Load Preset reads first, names the settings the document set, refuses a stale save), Scan Timeline and AI Gauntlet (schedules paused by a replace; AI Gauntlet re-confirm asks for the RoE again), Red Zone (the Limits badge and the RoE tab), Pentest Reports (document and applied-after-scan note), Data Export and Import (the RoE history travels and is re-checked), MCP Server (lastRun.roeChangedSince), Recon Pipeline Workflow (the Upload it in RoE link) and a Troubleshooting table of RoE upload errors. New screenshots of the remove review and the superseded-documents history, on the RoE page. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

    @samugit83 samugit83 committed Oct 14, 2026
  • docs(mcp): 5,000 findings per mute or unmute call, no daily budget MCP Server and the generated MCP API Reference follow the new limits: one call names up to 5,000 findings, a token makes at most 200 mute or unmute calls a minute, and the daily mute budget is gone. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

    @samugit83 samugit83 committed Oct 5, 2026
  • docs(wiki): restyle all Mermaid diagrams for light and dark mode Pin every diagram to theme:base with explicit themeVariables, and give every node a fill and text colour, so the diagrams render identically on GitHub light, GitHub dark, and the VS Code Markdown Preview (which draws Mermaid with the light theme on a dark page, leaving theme-coloured text invisible before this change). One shared palette carries meaning across all diagrams: blue = user, violet = agent/LLM, slate = infra/steps, teal = datastore, green = good, amber = warning/secret/output, red = danger/finding. Edge labels get padded slate chips; subgraphs get dashed grey borders. Also redraw the Tradecraft resource-lifecycle state diagram left-to-right (the auto-layout overlapped labels) and drop the now-obsolete greyscale rationale comment in Authenticated-Session-Recording. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

    @samugit83 samugit83 committed Sep 30, 2026
  • docs(triage): hardening notes for reviews, verdicts, stops and Ask agent get_finding_triage returns review text (fix lever included) only with includeQuotes and separates host proof from finding proof; a proven finding takes a raising review; evidence redacts credential headers and shows the nuclei matcher and GVM port/solution type; an agent image older than the webapp refuses MCP verdicts (agent_outdated); an agent's stop reaches every open tab; Ask agent fences the node name as untrusted. MCP API reference regenerated. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

    @samugit83 samugit83 committed Sep 29, 2026
  • docs: Multi mute, Models by feature and the three-layer Priority Board Multi mute on Muted Nodes and the Red Zone, Models by feature in Global Settings and on every feature page that asks for a model, the settings that retire the per-project CypherFix model, and the Priority Board's rules, review and decision layers with the MCP review and run tools. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

    @samugit83 samugit83 committed Sep 29, 2026
  • docs(mcp): mute re-check, unknown outcomes on server errors, codes in the message Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

    @samugit83 samugit83 committed Sep 29, 2026
  • docs(mcp): schedule pause on rescope, live agent check, badge that follows - update_project_scope: a batch that gains hosts pauses the project's scheduled scans (pausedSchedules); resume them in the Scans tab - an agent session counts as busy only while the agent confirms it - the Preset applied badge follows a rename and is cleared by a delete; badges from before presets dropped two switches show again - regenerate MCP-API-Reference.md Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

    @samugit83 samugit83 committed Sep 29, 2026
  • docs(mcp): regenerate the MCP Server screenshots with triage:mute The token list, the edit and new-token forms and the reveal panel are re-rendered by captureMcpServerDocsShots.spec.ts. The Agent Profile picker now shows Triage assistance offering triage:mute unticked, and its alt text says so. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

    @samugit83 samugit83 committed Sep 29, 2026
  • docs(mcp): mute and unmute over MCP - MCP-Server: the three tools; a "mute_findings and unmute_findings: hiding and revealing findings" section with what bounds an agent that mutes, the unknown-outcome contract, and review and revert by token; the triage:mute permission, "always left unticked"; the write bucket and the daily mute budget; the new never-do and refusal lines; the audit rows. - Muted Nodes: the Agent (MCP) badge and filter, the Token filter, reverting one token's mutes, the refusals during an activation, and the brief re-mute after a scan. - Mute Rules: an agent's mute is never touched by a rule; an agent releases a rule's mute only with includeRuleMutes, which records an exemption. - Data export: muted_token (a token prefix, never the token) travels with the graph. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

    @samugit83 samugit83 committed Sep 29, 2026
  • docs(mcp): recon presets and project rescope over MCP Document the preset tools (list, create, update, delete, apply) and update_project_scope, their three permissions and profile ticks, the settings-surface counts and compare-and-swap, the stale-form 409, the agent-written preset badge and the presets no longer carrying the MCP sandbox switch. Regenerate the MCP API reference and the settings registry page from the committed code. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

    @samugit83 samugit83 committed Sep 29, 2026
  • docs(red-zone): document the Node ID and Mute columns and Node ID lookups Adds the Node ID and Mute columns section and updates the Node Inspector, Priority Board, Muted Nodes, Recon Delta and Insights Top Findings pages. MCP Server: APOC functions and variable-length paths are now refused, and how to look a node up by nodeId. Adds the missing Node Inspector screenshot and refreshes the All Nodes one (Technology rows, no target addresses). Also fixes the Top Findings columns and the Node Inspector export format (CSV), both stale before this change. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

    @samugit83 samugit83 committed Sep 29, 2026
  • docs(mcp): disabled-server message, sandbox-off tool withdrawal; regenerate API reference A disabled server now answers 404 with a message that names MCP_SERVER_ENABLED, and MCP_KALI_EXEC_ENABLED=false withdraws kali_toolbox, kali_exec, kali_output and kali_cancel from tools/list. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

    @samugit83 samugit83 committed Sep 26, 2026
  • docs: Mute Rules on the MCP surface, kali:exec defaults, regenerate MCP API reference - MCP-Server: set_finding_verdict is refused on a muted finding; a Mute Rules apply blocks start_recon and reads as agent_writing; kali:exec defaults. - Mute-Rules: an MCP verdict cannot release a rule mute. - MCP-API-Reference regenerated with `npm run docs:mcp`. - Project-Settings-Registry refreshed. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

    @samugit83 samugit83 committed Sep 24, 2026
  • docs: the UI the engagement split actually shipped A deep check of every hand-written page against the branch found six gaps. The two generated pages (Project Settings Registry, MCP API Reference) were already current; every gap was in prose nobody regenerates. Rules of Engagement - `roeForbiddenCategories` listed four tokens. There are five: `exploitation` was missing. - `roeForbiddenTools` read as free text. Both lists are now closed vocabularies ticked from the registry, and the page says why that is a safety property rather than tidiness: the gate matches these strings EXACTLY, so a near-miss is not partially enforced, it is not enforced at all. A live project held `execute_sqlmap`, which is not a tool, beside categories reading "Denial of Service" and "Brute Forcing", which the gate does not know. - The parse section did not mention that an oversized proposal is refused with 422 and writes nothing, nor that a policy's identification header now reaches `engagementIdentityHeader` - the single most common concrete instruction such documents carry, in 28 of 60 sampled. - The authorization history panel was undocumented: append-only, digest only, and a failed fetch is not the same as "no record". Project Settings Reference - The page told readers the agent's limits were in Agent Behaviour and then never listed them. All six are documented there now. - The "Advanced" block was undocumented. It is in seventeen module sections and exists because sixty-five columns were writable over the API with an input nowhere in the form. MCP Server - "The thirty tools" is thirty-four. `create_project`, `attach_engagement_authorization` and `list_engagement_authorizations` were missing from the table, and `project:create` and `engagement:authorize` from the permissions. - "Not exposed, deliberately" still listed the scope fields. Scope is now a create-only exception with a stricter rule, and the page states it. - "Only about 126 tuning fields are settable" is 648 of 714. Screenshots retaken (the old ones predate the split by six months) and two added: the engagement limits in Agent Behaviour showing the tool checkboxes, and the registry-generated Advanced block. Checked and clean: no stated default or numeric bound on any hand-written page disagrees with the registry; no page still names `tighten_engagement_roe` or `roeEnabled` as a switch.

    @samugit83 samugit83 committed Sep 17, 2026
  • docs: split Rules of Engagement into limits and record The engagement is two unrelated things, and the wiki described it as one. Rules-of-Engagement.md is rewritten around the split: the LIMITS are ordinary settings, reachable from the form and the API alike and enforced at scan start, and the RECORD is the contract a person writes and no token can touch. The "set once at creation, read-only afterwards" claim is gone; only the record is creation-time. Also updated: - Recon-Presets: a preset never carries the engagement, at capture or at apply, and the exclusion is a registry query rather than a name-prefix match - MCP-Server: update_recon_settings reaches the limits in either direction, and what keeps that safe is enforcement at scan start, not a write-time rule - Creating-a-Project: tab 1 is the Engagement Record; the limits live elsewhere and stay editable - Origin-Discovery: the mechanism is unchanged, the field classification is not - AI-Gauntlet: its RoE checkbox is a per-launch confirmation, distinct from the project's engagement limits - Project-Settings-Reference: an Engagement Limits section, and two checked counts instead of one wrong one. "714 configurable parameters" overstated the surface exactly as the "245+" it replaced understated it - Project-Settings-Registry and MCP-API-Reference: regenerated A test fails any page that still names tighten_engagement_roe, the tighten_only disposition, or a roe* field as MCP-settable.

    @samugit83 samugit83 committed Sep 17, 2026
  • docs: refresh the MCP Server tab screenshot for the row actions menu The image still showed Edit | Revoke spelled out per row, which predates both the Onboard action and the menu. Reshot with the same demo tokens and the same framing, with one row's menu open so the page shows what the kebab contains. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

    @samugit83 samugit83 committed Sep 17, 2026
  • docs: the token row's actions are a menu, and Revoke is now Delete Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

    @samugit83 samugit83 committed Sep 17, 2026
  • docs(mcp): agent onboarding, and kali:exec described as the shell it is The API reference is regenerated from the live tools/list, so the kali:exec permission row and the kali_exec tool now describe a shell rather than the allowlist that no longer exists. MCP-Server.md gains the Agent Profile table and the onboarding-pack section, with screenshots for the profile picker, a profile change and the export. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

    @samugit83 samugit83 committed Sep 14, 2026
  • docs: the inbound MCP surface at thirty tools, and kali_exec MCP-API-Reference is generated by `npm run docs:mcp` from the server's own tools/list; a unit test compares it byte for byte, so it is never edited by hand. MCP-Server gains the kali_exec section: the four switches that gate it, the per-tool flag allowlist and what it refuses, the 300s sandbox cap, and the rate limits. Plus the Agent Profiles and onboarding screenshots.

    @samugit83 samugit83 committed Sep 14, 2026
  • docs(mcp): sections for the seventeen new tools, and refreshed screenshots The page documented thirty tools in its table but explained only the original handful. Eight new sections cover what the rest actually mean: - findings, and the triageState trap: on a project no triage run has completed NOTHING is scored, so an unscored finding is not an unimportant one - list_muted_findings, and the false negative it closes: "zero open findings" and "somebody suppressed thirty criticals" otherwise look identical - what changed since the last scan, including which versions survive retention and why comparing two saved versions beats comparing against the live graph - the three precomputed views, and why blast radius answers a different question from "what is the worst finding" - saved views, and why a view that works in the app can still be refused here - the queue, including the two residuals: a queued job outlives the token, and it appears in the operator's own queue attributed to them - verdicts, and why the surface can rank a finding but never hide or reveal one - the settings manual and why presets are read-only: a half-applied stealth preset is LOUDER than not applying it Also a section on withdrawing a single tool, which had no user-facing documentation at all, and three corrections where the page still described the old boundary: the token-limits list now covers mute/unmute, the refusals list covers comparing across a state change and writing a verdict under a triage run, and the audit table lists the verdict and queue records. Screenshots regenerated: the tab and the new-token form now show all nine permissions rather than six.

    @samugit83 samugit83 committed Sep 14, 2026
  • docs(mcp): get_project_activity is metered as a question, not a cheap read

    @samugit83 samugit83 committed Sep 14, 2026
  • docs(mcp): the verdict tool, the scanner status read, and triage:write Tool table, permissions row, the write rate-limit row, and the permission count (now nine). The "not exposed" paragraph now draws the distinction that matters: an agent can record a VERDICT, which ranks a finding, and can never MUTE or unmute one, which hides or reveals it. MCP-API-Reference.md regenerated.

    @samugit83 samugit83 committed Sep 13, 2026
  • docs(mcp): seven more tools and the recon:queue permission Tool table and heading, a permissions row, the rate-limit table (queue_recon takes the per-project start window, not the write budget; run_graph_view and the analytics views take the query one), and the permission count in the alt text and in Global-Settings, now eight. MCP-API-Reference.md regenerated from the live tools/list.

    @samugit83 samugit83 committed Sep 13, 2026
  • docs(mcp): eight new tools, the triage:read permission, regenerated reference MCP-API-Reference.md is regenerated from the live tools/list, never hand-edited. MCP-Server.md: the tool table and its heading, a permissions row, the rate-limit table (its "Applies to" column enumerates tools per bucket, so every row was wrong), the concurrency paragraph now that the findings path takes the same ceiling, and the "not exposed" paragraph - the other scanners' findings are readable while starting them is not. Global-Settings.md and the MCP-Server alt text both said "five permissions", which was already stale at six before this and is now seven.

    @samugit83 samugit83 committed Sep 13, 2026
  • docs(mcp): the liveGraphState table was missing two states and overpromising `stable` claimed the counts are trustworthy in cases where they were not: five of the seven scan kinds never moved the state off it. Document the two new states (`agent_writing`, `unknown`), say that `scan_running` now covers all seven kinds, and describe `hiddenFromCounts.stale` including why the key is absent rather than 0 when it cannot be read.

    @samugit83 samugit83 committed Sep 13, 2026
  • docs: document the MCP Server surface, incl. kali_exec Rename MCP-Access-Tokens to MCP-Server and cover the whole inbound surface rather than just the token screen. - MCP-Server: thirteen tools, the four switches guarding kali_exec, the per-tool flag allowlist and what it refuses, rate limits and audit rows. - MCP-API-Reference: generated by `npm run docs:mcp` from the server's own tools/list. Never hand-edit; a unit test compares it byte for byte. - Sidebar, Home and Global-Settings point at the new page name.

    @samugit83 samugit83 committed Sep 13, 2026