Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Fuse

NUGET · FUSE · SCANNED SEP 20

Local .NET compiler verification, change impact, and typed wiring for AI agents.

Available components

0 this week 79 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security88
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • Install-script risk not yet assessed.Unverified
  • No production dependencies, so there is no dependency health to assess. View diagnostics → Pass
Provenance & Transparency48
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
  • Clear OSI-approved license (Apache-2.0).Pass
  • Actively maintained (last published 51 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability76
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 3318 tokens (~368/item across 9 items; 9 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management83
  • Stability observed for 25 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 9 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 10 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

How do I install the Fuse MCP server?

Fuse runs locally as a NuGet package, launched with dnx Fuse@4.4.0 --yes. Ready-made configuration for Claude, Cursor, VS Code, Codex and 3 more is on this page, copied from each client's own documentation.

nuget · Fuse

# add to Claude Code
claude mcp add litenova-solutions-fuse -- dnx Fuse@4.4.0 --yes
// .cursor/mcp.json
{
  "mcpServers": {
    "litenova-solutions-fuse": {
      "command": "dnx",
      "args": [
        "Fuse@4.4.0",
        "--yes"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "litenova-solutions-fuse": {
      "command": "dnx",
      "args": [
        "Fuse@4.4.0",
        "--yes"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add litenova-solutions-fuse -- dnx Fuse@4.4.0 --yes
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "litenova-solutions-fuse": {
      "type": "local",
      "command": [
        "dnx",
        "Fuse@4.4.0",
        "--yes"
      ],
      "enabled": true
    }
  }
}
# ~/.hermes/config.yaml
mcp_servers:
  litenova-solutions-fuse:
    command: "dnx"
    args: ["Fuse@4.4.0", "--yes"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "litenova-solutions-fuse": {
      "Transport": "stdio",
      "Command": "dnx",
      "Arguments": [
        "Fuse@4.4.0",
        "--yes"
      ]
    }
  }
}
// mcp.json
{
  "mcpServers": {
    "litenova-solutions-fuse": {
      "command": "dnx",
      "args": [
        "Fuse@4.4.0",
        "--yes"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 19 Sept 26 −3
    • Stability: pass → 0.80 functional
  • 18 Sept 26 +1
    • Stability: 0.97 → pass security
  • 16 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.

  • 14 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

  • 12 Sept 26 −3
    • Stability: pass → 0.80 functional
  • 11 Sept 26 +1
    • Stability: 0.97 → pass security
  • 9 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.

  • 7 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 20 Sept 2026 · Analysed nuget/Fuse@4.4.0

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem nuget
Reason Package not fetched

Background: How many MCP packages publish verified provenance →

Dependencies 0 packages
Packages resolved 0
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 9 exposed · ~2,922 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
fuse_check ~390

Speculatively typecheck a proposed single-file edit: the compiler errors and warnings it would produce, without writing the file. Verification never shrugs (D11): oracle-grade (sub-second, no build) when the repo is captured at tier-1; otherwise build-grade, running dotnet build scoped to the owning project (tens of seconds) and parsing the same diagnostics; abstains only when even the toolchain cannot run, naming the reason. Every answer is stamped with its grade. Delta mode (S2): pass a session id with no content to get the diagnostics your on-disk edits introduced or resolved since the session baseline (needs a resident workspace; does not run a build); full:true returns the whole current set; markGreen:true resets the baseline to now. Analyzer parity (S4): when a resident workspace serves the root, analyzers:true (the default) also runs the repo's configured analyzers and nullable warnings at their editorconfig severities, so a green check matches CI.

NameTypeReqDescription
analyzersbooleanAlso run the repo's configured analyzers and nullable warnings at their editorconfig severities (CI parity), when a resident workspace serves the root. Default on.
contentstringThe proposed full new content of that file.
filestringThe repo-relative path of the file being changed.
fullbooleanDelta mode: return the whole current diagnostic set instead of the delta since the baseline.
markGreenbooleanDelta mode: reset the session baseline to the current diagnostics (mark green), so later deltas are measured from here.
pathstringAbsolute or relative path to the workspace directory.
sessionstringDelta mode: a session id. With no content, returns the diagnostics introduced or resolved since the session baseline (needs a resident workspace; does not run a build).

No output schema declared.

No examples provided.

fuse_context ~248

Plan and emit context (source bodies, mixed render tiers, manifest, provenance) for a set of seeds. Feed it the file paths from fuse_find (kind=task) or the names it resolves from wiring kinds. Pass a sessionId to elide files already sent in the session.

NameTypeReqDescription
configsarray|nullConfig section seeds to resolve and expand.
depthintegerGraph expansion depth.
filesarray|nullFile path seeds (for example the paths returned by fuse_find kind=task).
formatstringOutput format: xml (default), markdown, or json.
maxTokensintegerToken budget; must-keep seeds are always included.
pathstringAbsolute or relative path to the workspace directory.
requestsarray|nullRequest/command seeds to resolve and expand.
routesarray|nullRoute seeds, for example "POST /api/orders/{id}".
seedsarray|nullSymbol seeds.
servicesarray|nullService seeds to resolve and expand.
sessionIdstring|nullSession id; files already sent unchanged in this session are elided.

No output schema declared.

No examples provided.

fuse_find ~197

The find union: locate what a task needs by kind. Exact lookup - kind=symbol (by name), path (by fragment), text (full-text), or all. Wiring - kind=service, request, route, or config resolves the query to its implementation/handler/action/options. kind=signatures returns the query symbol's exact signature. kind=neighbors returns the query symbol's callers and implementers. kind=task ranks candidate files for the query with the graded refuse-and-route contract. Use instead of broad grep when the name, wiring, or task is known.

NameTypeReqDescription
kindstringThe kind: symbol, path, text, all (exact); service, request, route, config (wiring); signatures; neighbors; task.
pathstringAbsolute or relative path to the workspace directory.
querystringyesThe name, path fragment, text, wiring identifier, or task to find.

No output schema declared.

No examples provided.

fuse_impact ~283

Blast radius for a symbol before you edit it: the callers, implementers, consumers, and referencing types a change would touch, from the persisted semantic graph. No bodies. The exact signature-change break set (which call sites would no longer bind) needs an oracle-grade (tier-1) load and is reported unavailable otherwise, rather than guessed. Package-upgrade mode (F3): pass package + fromVersion + toVersion to get the public-API break set between two cached NuGet package versions (removed/changed public members), so a bump's risk is knowable before the lockfile changes; it abstains when a version is not in the local cache and names its blind spots.

NameTypeReqDescription
fromVersionstringPackage-upgrade mode: the currently referenced version.
limitintegerMaximum impacted items to return.
packagestringPackage-upgrade mode: the NuGet package id whose bump to analyze.
pathstringAbsolute or relative path to the workspace directory.
sessionstringOptional session id: when set, this call's graded claims are appended to the session's claim ledger (U2).
symbolstringThe symbol (simple or qualified name) whose blast radius to compute.
toVersionstringPackage-upgrade mode: the target (upgrade) version.

No output schema declared.

No examples provided.

fuse_reduce ~180

Compact a specific set of files (or raw content) by running Fuse's reduction, without collecting a whole directory. Pass `files` or `content` (+ `extension`).

NameTypeReqDescription
contentstring|nullRaw content to reduce instead of files. Provide extension to select the reducer.
extensionstringExtension that selects the reducer for content (for example .cs, .ts, .py). Defaults to .cs.
filesarray|nullFile paths to reduce, absolute or relative to path.
levelstringReduction level: none, standard, aggressive, skeleton, publicApi. Defaults to standard.
maxTokensintegerMaximum tokens the reduced output may use, or 0 for no limit.
pathstringBase directory for resolving relative file paths. Ignored in content mode.

No output schema declared.

No examples provided.

fuse_refactor ~672

Compiler-executed, verify-gated refactors returned as a staged diff (nothing is written to disk). operation=rename (default): rename a symbol and all its references through Roslyn (a same-named unrelated symbol is not touched). operation=add-parameter: add a trailing parameter to a method and its override/interface family, threading an explicit argument (the `argument` value) into every call site. operation=add-cancellation-token: add a CancellationToken parameter and thread an in-scope token into every call site that has one, listing token-less sites as manual follow-ups. operation=remove-parameter: remove a parameter (named by parameterName) and drop its argument at every call site, abstaining when the parameter is used in a body or a call site passes a non-trivial (possibly side-effecting) argument. operation=reorder-parameters: reorder parameters into `newOrder` (comma-separated names), abstaining if any call site uses positional arguments (only named-argument call sites are safe to reorder). operation=extract-interface: generate an interface from a class's public instance methods and properties (name it with newName, else I<Class>) and make the class implement it. operation=move-type: move a top-level type (symbol) to its own new file named after it, removing it from its current file. operation=apply-codefix: apply the repo's own analyzer code fix for `diagnosticId` in `file`, driving that diagnostic to zero (discovers the analyzers and [ExportCodeFixProvider] fixes from the project's analyzer references). The signature and type operations recompile the solution and return the diff ONLY when no new diagnostic is introduced; otherwise they abstain naming the offending sites (never a mostly-right diff). Rename and the signature ops answer only when the whole solution loads cleanly; abstain otherwise. Review and apply the staged diff with normal editing tools, then run the repository's required gates.

NameTypeReqDescription
argumentstringThe argument expression added at every call site (add-parameter; defaults to 'default').
containingTypestringThe declaring type's simple name, to disambiguate a method shared across types (signature operations).
diagnosticIdstringThe diagnostic id to fix (apply-codefix), for example IDE0090 or a repo analyzer id.
filestringThe repo-relative file to apply the code fix in (apply-codefix).
newNamestringThe new name (rename only).
newOrderstringThe parameter names in the desired order, comma-separated (reorder-parameters).
operationstringThe operation: rename (default), add-parameter, add-cancellation-token, remove-parameter, reorder-parameters, extract-interface, move-type, or apply-codefix.
parameterNamestringThe new parameter's name (add-parameter; defaults to cancellationToken for add-cancellation-token).
parameterTypestringThe new parameter's type, as written in source (add-parameter).
pathstringAbsolute or relative path to the workspace directory.
symbolstringThe simple name of the symbol to rename, or the method name for a signature operation.

No output schema declared.

No examples provided.

fuse_review ~266

Review the semantic impact of a change since a git base ref: changed files, the blast radius (callers, DI consumers, route/request handlers, options consumers, tests), and the packed context. The flagship tool for PR/change work.

NameTypeReqDescription
changedSincestringThe git base ref to diff against (branch, commit, or HEAD~N).
checkSessionstringFor handoff: the fuse_check session id to gate on (refuses while it has unresolved introduced errors).
formatstringOutput format: xml (default), markdown, or json.
handoffbooleanProduce a paste-ready PR handoff packet instead of the review context; refuses while the check session has unresolved introduced errors (U2).
includeTestsbooleanInclude related test files.
maxChangedFilesintegerMaximum changed files before review returns a bounded partial (changed-file list only). 0 uses FUSE_REVIEW_MAX_CHANGED_FILES or the default of 150.
maxTokensintegerToken budget; changed files are always kept.
pathstringAbsolute or relative path to the workspace directory.
sessionIdstring|nullSession id; files already sent unchanged in this session are elided.

No output schema declared.

No examples provided.

fuse_test ~328

Run the covering tests for a symbol: the tests that reach it through the persisted tests edges, run at build grade (dotnet test scoped by filter to just those test types, the whole suite never run), with per-test verdicts. Selection-only when no tests edge reaches the symbol. Build-grade runs the real build; the emit fast path is future work. Candidate racing (F2): pass candidates (a JSON array of {id?, file, content} single-file edits, bounded k) to speculatively typecheck all of them over the live resident compilation and get per-candidate diagnostics plus a winner by strict dominance (a lone clean candidate beats any with errors; ties reported); each candidate reuses the shared held compilation (only its own changed file rebinds), racing needs a resident workspace (FUSE_RESIDENT=1) and never applies a candidate.

NameTypeReqDescription
analyzersbooleanCandidate racing: also run the repo's configured analyzers against each candidate overlay (CI parity). Default on.
candidatesstringCandidate racing (F2): a JSON array of single-file edits to race, each {id?, file, content}. When set, races them through the speculative typecheck instead of running the covering tests.
limitintegerMaximum covering test types to run.
maxCandidatesintegerCandidate racing: the maximum number of candidates accepted (the bound on k; default 4).
pathstringAbsolute or relative path to the workspace directory.
symbolstringThe symbol whose covering tests to run.

No output schema declared.

No examples provided.

fuse_workspace ~358

Workspace status and lifecycle (the loop's first stop). action=status (default): index mode, verification grade, freshness, and active job. action=index: start or join the syntax index job. action=cancel: stop the active index job. action=map: symbols, routes, and counts. action=doctor: daemon, configuration, storage, compiler-target, and job diagnostics. action=apply: write a proposed single-file edit (file + content) to the working tree; it is a dry run unless write=true and refuses paths outside the workspace root.

NameTypeReqDescription
actionstringThe action: status, index, cancel, map, doctor, or apply.
contentstringFor the apply action: the full new content to write to that file.
detailstringFor the map action: detail to include (symbols, routes, all).
expectedHashstringFor the apply action: the SHA-256 (hex) of the file content this edit was derived from. When set, apply refuses if the file changed since (a concurrent edit), rather than clobbering it.
filestringFor the apply action: the repo-relative file to write.
maxRowsintegerFor the map action: maximum rows per section.
pathstringAbsolute or relative path to the workspace directory.
refreshbooleanFor the doctor action: force a live MSBuild load diagnosis instead of reporting the diagnosis stamped in the warm index (R43). Default false reports from the index in sub-second time when it is prese…
writebooleanFor the apply action: actually write (otherwise a dry run reports the change without writing).

No output schema declared.

No examples provided.

Common questions

What is the Fuse MCP server?

Fuse is an MCP server listed in the public MCP registry as io.github.Litenova-Solutions/fuse. Local .NET compiler verification, change impact, and typed wiring for AI agents. This page covers its NuGet package (Fuse).

Is the Fuse MCP server safe to use?

Fuse scores 79 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 20 September 2026. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Fuse MCP server expose?

Fuse exposes 9 tools: fuse_reduce, fuse_refactor, fuse_review, fuse_impact, fuse_test, and 4 more. Their descriptions and schemas cost roughly 2,922 tokens of context every time the server is loaded.

Is the Fuse MCP server still maintained?

Fuse is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the Fuse MCP server under?

Fuse declares the Apache-2.0 licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.