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.

Corvus

NUGET · CORVUSRE

Reverse engineering and security analysis of .NET and native binaries: decompile, compare, patch.

Available components

+4 this week 77 Trust /100

Last scanned (16 hours ago)

Scores higher than 57% of NuGet servers

Category Developer Tools

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
  • Build provenance not yet verified. View diagnostics → Unverified
  • Clear OSI-approved license (Apache-2.0).Pass
  • Actively maintained (last published 0 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability73
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 28245 tokens (~170/item across 166 items; 165 tools + 1 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 Management67
  • Stability check failed: the tool surface changed between 2.3.0 and 2.11.0: 4 tool removals, 0 breaking changes, 13 additions. See how to fix → Fail
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
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • All 2 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
  • An AI judge read all 167 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
What we tested

Checks we ran (14)

  • Malware scan
  • Known CVEs
  • Dependency health
  • Source repository
  • License
  • Maintenance
  • Security disclosure
  • Schema quality
  • Stability
  • Tool coverage
  • Injection markers
  • Destructive annotations
  • Judged manipulation
  • MCP protocol

Checks we could not complete (2)

These are gaps on our side, not findings about this package. We only credit what we can confirm, so a category made up entirely of them scores 0.

  • Install scripts in Supply Chain SecurityInstall-script risk not yet assessed.
  • Provenance in Provenance & TransparencyBuild provenance not yet verified.

Does not apply to this package (2)

  • Endpoint SecurityScored on hosted endpoints only. A package has no live endpoint of its own for us to probe.
  • Transport & ReachabilityScored on hosted endpoints only. A package has no live endpoint of its own for us to probe.

The score does not measure everything. What the score does not measure →

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.

  • 5 Nov 26 +1
    • Stability: fail → unverified ▼ security
    • Tool safety: pass → unverified ▼ security
    • Capabilities: pass → unverified ▼ functional
    • Tool coverage: 100 → unverified ▼ functional
    • Schema quality: 100 → unverified ▼ functional
    • Tool coverage: 81% → 100% ▲ functional
    • Package version: 2.10.0 → 2.11.0 functional
  • 4 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 61 to 64.

  • 3 Nov 26 +1
    • Package version: 2.7.3 → 2.10.0 functional
  • 31 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 47 to 51.

  • 29 Oct 26 +1
    • Stability: fail → unverified ▼ security
    • Tool safety: pass → unverified ▼ security
    • Capabilities: pass → unverified ▼ functional
    • Tool coverage: 100 → unverified ▼ functional
    • Schema quality: 100 → unverified ▼ functional
    • Package version: 2.7.2 → 2.7.3 functional
  • 28 Oct 26 +15
    • Stability: fail → unverified ▼ security
    • Tool safety: pass → unverified ▼ security
    • Malware scan: unverified → pass ▲ security
    • Capabilities: pass → unverified ▼ functional
    • Tool coverage: 100 → unverified ▼ functional
    • Schema quality: 100 → unverified ▼ functional
    • Package version: 2.7.0 → 2.7.2 functional
    • Package version: 2.7.0 → 2.7.1 functional
  • 27 Oct 26 −14
    • Malware scan: pass → unverified ▼ security
    • Stability: 0.37 → fail ▼ security
    • Schema quality: 182 → 163 ▲ functional
    • Package version: 2.6.0 → 2.7.0 functional
  • 25 Oct 26 0
    • Tool safety: pass → unverified ▼ security
    • Stability: 0.30 → unverified ▼ security
    • Capabilities: pass → unverified ▼ functional
    • Tool coverage: 100 → unverified ▼ functional
    • Schema quality: 100 → unverified ▼ functional
    • Licence: MIT → Apache-2.0 functional
    • Package version: 2.5.1 → 2.6.0 functional
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 5 Nov 2026 · Analysed nuget/CorvusRE@2.11.0

Provenance Inconclusive

We could not complete the check, so nothing is claimed either way. This is a gap on our side, not a finding about the package.

Result Inconclusive
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 · 165 exposed · ~27,723 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
search_native_strings ~184

Strings referenced by code or data of a native image, with address, reference count and first referencing function. Metadata literals appear after apply_metadata_names; an engine adds unreferenced strings. [Long-running.]

NameTypeReqDescription
enginestring–auto (default): IDA or Ghidra if analyzed, else ours.
imagestringyesImage id, name, path.
limitinteger–Max rows.
maxLengthinteger–Characters per string (max 4000); longer ones are clipped.
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip.
querystring–Case-insensitive substring, or regex (regex=true, or /pattern/: always a regex; regex=true keeps the slashes); omit for all.
regexboolean–query is a regex.
NameTypeReqDescription
imagestring––
itemsarray––
notEvaluatedinteger––

No examples provided.

search_pdb_symbols ~115

Search the PDB or DWARF symbols loaded for a native image: address, kind, size, name, signature, object file.

NameTypeReqDescription
imagestringyesImage id, name, path.
kindstring–Only this kind (default all).
limitinteger–Max rows.
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip.
querystring–Name or decorated name substring (case-insensitive); empty for all.
NameTypeReqDescription
imagestring––
itemsarray––

No examples provided.

search_strings ~143

Find string literals (ldstr, string constants) by substring, wildcard or regex, with each user's method and IL offset. Dummy assemblies: literals with slot RVAs and, with the binary, the functions loading them.

NameTypeReqDescription
assemblystring–Assembly id, name, path; omit: all.
limitinteger–Max rows.
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip.
querystringyesSubstring, wildcard, regex or /pattern/.
regexboolean–query is a regex.
usesPerLiteralinteger–Dummy assemblies: max functions per literal.
NameTypeReqDescription
itemsarray––
notEvaluatedinteger––

No examples provided.

search_symbols ~154

Find types and members by name in loaded assemblies: case-insensitive substring, wildcard (Get*Value?) or regex; queries with . or :: match full names. Exact matches first, then by name length, assembly and token.

NameTypeReqDescription
assemblystring–Assembly id, name, path; omit: all.
kindstring–Restrict to this kind.
limitinteger–Max rows.
maxTokensinteger–Page size in tokens.
namespacestring–Only namespaces starting with this.
offsetinteger–Rows to skip.
querystringyesName, substring, wildcard, regex or /pattern/.
regexboolean–query is a regex.
NameTypeReqDescription
itemsarray––
notEvaluatedinteger––

No examples provided.

server_status ~71

Version, program, client, catalog digest, loaded files, limits, capabilities with fixes and unusable tools. expectedCatalogDigest detects a stale server; expectedExecutable checks the registered copy.

NameTypeReqDescription
expectedCatalogDigeststring–Catalog digest to compare.
expectedExecutablestring–Registered server path to compare.
NameTypeReqDescription
actionNotesarray––
backgroundIndexingstring––
capabilitiesarray––
catalogDifferencestring––
catalogDigeststring––
catalogMatchesboolean––
clientobject––
engineSessionsarray––
engineTimeLimitsobject––
executablestring––
executableMatchesboolean––
informationalVersionstring––
installKindstring––
loadedAssembliesinteger––
longRunningToolsarray––
protocolVersionstring––
sectionsarray––
serverstring––
startedAtstring––
toolsinteger––
toolsFileAndTraceobject––
toolsetsarray––
unavailableToolsarray––
uptimeSecondsinteger––
versionstring––
workingSetMBinteger––

No examples provided.

set_native_local ~271

Rename or retype a native pseudocode local or argument as decompile_native names it (v3, a1) or stack:0x28. The first name or clear drops the edit; a type that does not fit is refused. Kept in annotations. [Long-running.]

NameTypeReqDescription
clearboolean–Drop the user name and type.
enginestring–Default auto.
functionstringyesHex VA/RVA (rva:/va:/off:), export, module!import, function.
imagestringyesImage id, name, path.
inferStructstring–Ghidra: declare this struct from the local's accesses; the local points to it.
itemsstring–Instead: lines local = newName, or JSON [{local, newName?, type?, clear?}].
localstring–The variable: its pseudocode name, or stack:OFFSET (hex).
newNamestring–New name (a C identifier).
showDecompilestring–after: pseudocode after the edit; diff: its unified diff.
storagestring–Move an argument to this register; auto: where the convention puts it.
typestring–New C type.
NameTypeReqDescription
appliedboolean––
changesarray––
digeststring––
dryRunboolean––
editIdsarray––
failedinteger––

No examples provided.

set_native_operand ~163

Set how an instruction operand displays in engine disassembly and pseudocode. Kept in annotations. [Long-running.]

NameTypeReqDescription
addressstringyesHex VA/RVA (rva:/va:/off:), export, module!import, function.
displaystring–offset: an address; struct: IDA only.
enginestring–Default auto.
imagestringyesImage id, name, path.
itemsstring–Instead: lines address operand display [type], or JSON [{address, operand, display, type?}].
operandinteger–Operand index, 0 for the first.
typestring–display=enum or struct: the type name (struct: optionally +delta).
NameTypeReqDescription
appliedboolean––
changesarray––
digeststring––
dryRunboolean––
editIdsarray––
failedinteger––

No examples provided.

set_native_stack_var ~227

Rename, retype or delete a stack frame member; a type at an empty offset creates one. Return address and saved registers are refused. Kept in annotations. [Long-running.]

NameTypeReqDescription
clearboolean–Drop the user edit, restoring the engine member.
deleteboolean–Delete the member.
enginestring–Default auto.
functionstringyesHex VA/RVA (rva:/va:/off:), export, module!import, function.
imagestringyesImage id, name, path.
itemsstring–Instead: lines member = newName, or JSON [{variable, newName?, type?, delete?, clear?}].
newNamestring–New name (a C identifier).
showDecompilestring–after: pseudocode after the edit; diff: its unified diff.
typestring–New C type.
variablestring–The member: get_native_frame name (var_28) or frame offset (hex, from the lowest address).
NameTypeReqDescription
appliedboolean––
changesarray––
digeststring––
dryRunboolean––
editIdsarray––
failedinteger––

No examples provided.

set_native_type ~200

Set a native function prototype or a global's C type in the engine; named types must exist there. __noreturn ends caller flow at the call. Kept in annotations. [Long-running.]

NameTypeReqDescription
addressstring–Hex VA/RVA (rva:/va:/off:), export, module!import, function.
enginestring–Default auto.
guessboolean–Report the engine guess at address, not applied.
imagestringyesImage id, name, path.
itemsstring–Instead of address and type: lines address = type.
renameboolean–Name the function as its prototype does.
showDecompilestring–after: pseudocode after the edit; diff: its unified diff.
typestring–C prototype (int __fastcall Parse(Packet *p, int len)) or global type (Handler *[8]); empty clears.
NameTypeReqDescription
appliedboolean––
changesarray––
digeststring––
dryRunboolean––
editIdsarray––
failedinteger––

No examples provided.

simplify_methods ~189

Clean transformed method bodies: fold (string decoders run in a safe IL interpreter), cfg (constant branches, flattened control flow), inline (forwarders, call proxies). What is left has a reason code (docs/simplify.md). [Long-running.]

NameTypeReqDescription
assemblystring–Assembly id, name, path; omit: all. Required without symbol.
budgetinteger–Max IL instructions per evaluated call, nested calls included.
deterministicEnvironmentboolean–Fold machine reads (paths, environment, names) against fixed stand-ins.
dryRunboolean–true previews; false applies.
maxDepthinteger–Max evaluation call depth.
passesarray–Passes to run; omit for all three.
symbolstring–Method or type (nested included): Ns.Type::M(int), name or token; omit: whole assembly.
NameTypeReqDescription
appliedboolean––
changesarray––
digeststring––
dryRunboolean––
editIdsarray––
failedinteger––

No examples provided.

stub_method ~125

Replace a method body with "return <value>;" ("return;" for void) in memory: force a check true, disable a call.

NameTypeReqDescription
assemblystring–Assembly id, name, path; omit: all.
dryRunboolean–true previews; false applies.
methodstringyesNs.Type, Ns.Outer+Inner, Ns.Type::Method(int), name or token.
valuestring–true/false, integer (decimal or 0x), float, "string" or null; omit for void or default(T).
NameTypeReqDescription
appliedboolean––
changesarray––
digeststring––
dryRunboolean––
editIdsarray––
failedinteger––

No examples provided.

summarize_build ~102

Summarize an application build without loading it: engine version, scripting backend (aot or mono), metadata version, platform, architecture and next calls.

NameTypeReqDescription
detectItEasyboolean–Also run Detect It Easy (CORVUS_DIE or PATH) on the main binaries; about 1 s each.
pathstringyesFolder, executable, *_Data, global-metadata.dat or package (.apk, .ipa, .app, zip).
NameTypeReqDescription
appDirectorystring––
architecturestring––
architectureSourcestring––
backendobject––
companystring––
dataDirectorystring––
engineobject––
executablestring––
foldersarray––
inputstring––
markersarray––
nextStepsarray––
notesarray––
platformstring––
productstring––

No examples provided.

summarize_file ~237

Summarize a file, folder or assembly, never run: type, hashes, signature, containers, assemblies, entry points. view= opens one aspect.

NameTypeReqDescription
assemblystring–A loaded assembly; this or path.
columnsarray–With table=: these columns and rowid.
limitinteger–Max rows.
offsetinteger–Rows to skip.
overwriteboolean–Overwrite either file.
passwordstring–Password to decrypt with; only it is tried.
pathstring–A file or folder.
sbomPathstring–Write dependencies here, CycloneDX 1.6.
scriptstring–assets: assets of this script class.
stixPathstring–Write findings here, STIX 2.1.
tablestring–Table; lmdb, berkeleydb: database; evtx: provider/id; procmon: process/PID/operation/result; registry: key; pri: name; esp32: namespace.
viewstring–A view the overview lists.
NameTypeReqDescription
assembliesarray––
capaobject––
containerstring––
detailobject––
entropynumber––
entryPointsarray––
findingTotalinteger––
findingsarray––
highlightTotalinteger––
highlightsarray––
levelstring––
md5string––
pathstring––
ruleTablestring––
sha1string––
sha256string––
signaturestring––
sizeinteger––
typestring––
valuesobject––
viewstring––
viewsarray––

No examples provided.

survey_features ~162

Capabilities by rules over calls, imports and strings; category= adds evidence. Apps add MASVS findings; category=capa adds labels (CORVUS_CAPA): waitSeconds waits, cancel stops it.

NameTypeReqDescription
assemblystring–A loaded assembly; this or path.
cancelboolean–Stop the capa run.
categorystring–Category or MASVS prefix; all: everything.
imagestring–A native image or path (instead of assembly).
locationsinteger–Locations per entry, 1-100; default 5.
pathstring–A .NET, native or app file, not loaded.
waitSecondsinteger–Seconds to wait for capa, 0-600.
NameTypeReqDescription
assemblystring––
categorystring––
featuresarray––
methodsScannedinteger––

No examples provided.

symbolize_stack_text ~216

Resolve crash text (logs, .NET exceptions, WER reports, Event Log entries, debugger stacks, Android tombstones) against the loaded builds. Each frame gets a name, a build check and the C# statement at an IL offset. [Long-running.]

NameTypeReqDescription
allFramesboolean–One row per frame; default folds 3+ matching native frames of an image.
formatstring–Text format (auto detects it).
imagesstring–Image ids or paths, ;-separated; default all loaded.
limitinteger–Max rows.
maxTokensinteger–Page size in tokens.
moduleBasesstring–Module load addresses (name=0xBASE;...) when the text has no module list.
offsetinteger–Rows to skip.
pathstring–A log or report file; its last 8 MiB are read.
textstring–Crash text (up to 1 MiB); this or path.
NameTypeReqDescription
exceptionobject––
formatstring––
framesinteger––
itemsarray––
modulesMissingarray––
notesarray––
unrecognizedLinesinteger––
unrecognizedSamplearray––

No examples provided.

trace_native_feature ~219

Find the native functions behind a behaviour: strings, names, imports, exports, classes and constants matching query lead to their references, ranked by function, with the callers that reach several. [Long-running.]

NameTypeReqDescription
callerDepthinteger–Caller levels searched for hubs (0-3).
enginestring–auto (default): IDA or Ghidra if analyzed, else ours.
imagestringyesImage id, name, path.
kindsstring–Comma-separated: strings, names, imports, exports, classes, constants (default all).
limitinteger–Functions per page (max 500).
maxSeedsinteger–Matches followed (1-500); the rest are counted.
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip.
querystringyesCase-insensitive substring ("quoted": exact), or a regex with regex=true or written /pattern/.
regexboolean–query is a regex.
NameTypeReqDescription
functionsarray––
hubsarray––
imagestring––
nextOffsetinteger––
notesarray––
offsetinteger––
querystring––
seedsarray––
totalFunctionsinteger––
totalSeedsinteger––

No examples provided.

trace_native_values ~364

Trace a value through native code across functions and images: backward to the constants, strings, pointers and API results that reach it, or forward to its uses. [Long-running.]

NameTypeReqDescription
addressstringyesAn instruction, call, function start (with argument) or writable global: Hex VA/RVA (rva:/va:/off:), export, module!import, function.
argumentstring–Argument of the call or parameter of the function at address: 1-based or API name.
directionstring–backward (default): values reaching it; forward: its uses.
enginestring–Slice engine (default auto: an engine that analyzed the image, else ours).
imagestringyesImage id, name, path.
limitinteger–Nodes per page (max 1000).
locationstring–Value at address: register (rdx, xmm1, x1), stack slot ([rsp+28h], [x29-8]), op1 / op2 (operand) or result (call return).
maxCallersinteger–Call sites bound per parameter or return (1-256).
maxDepthinteger–Function boundaries to cross (0-8).
maxFunctionsinteger–Functions to slice (1-256).
maxNodesinteger–Nodes in the graph (1-5000).
maxTokensinteger–Page size in tokens.
maxWritersinteger–Writers (backward) or readers (forward) per global (1-256).
offsetinteger–Rows to skip.
stopAtGlobalsboolean–Stop at writable globals instead of following writers / readers.
NameTypeReqDescription
directionstring––
edgesarray––
enginestring––
frontierarray––
functionsinteger––
imagestring––
nodesarray––
notesarray––
offsetinteger––
pendingEdgesarray––
seedobject––
totalEdgesinteger––
totalNodesinteger––
truncatedboolean––
valuesarray––

No examples provided.

undo_edit ~73

Undo the last edit or one by number: the others are replayed on the original image; a conflict changes nothing. [Long-running.]

NameTypeReqDescription
assemblystringyesAssembly id, name, path.
numberinteger–Edit number from list_edits (#n of its editId); omit for the last.
NameTypeReqDescription
appliedboolean––
changesarray––
digeststring––
dryRunboolean––
editIdsarray––
failedinteger––

No examples provided.

undo_native_edit ~85

Undo native edits by editId, the last by default, and push the previous values to the engines. Refused while a later edit changed the same item. [Long-running.]

NameTypeReqDescription
editIdstring–image#n or #n; comma-separated for several, undone in order; default the last.
imagestringyesImage id, name, path.
NameTypeReqDescription
appliedboolean––
changesarray––
digeststring––
dryRunboolean––
editIdsarray––
failedinteger––
itemsarray––
pushedToarray––

No examples provided.

uninstall_android_package ~70

Remove an app (and its data unless keepData) from a device; needs --allow-device-changes.

NameTypeReqDescription
keepDataboolean–Keep app data and cache.
packagestringyesPackage (com.example.app).
serialstring–Device serial; omit if one device.
NameTypeReqDescription
appliedboolean––
changesarray––
digeststring––
dryRunboolean––
editIdsarray––
failedinteger––
itemsarray––
pushedToarray––

No examples provided.

unload_assembly ~38

Remove an assembly, discarding unsaved edits, or close a dump id.

NameTypeReqDescription
assemblystringyesAssembly id, name, path.
NameTypeReqDescription
discardedEditsinteger––
idsarray––

No examples provided.

unpack_container ~263

Extract a container, load its .NET assemblies: single-file bundles, Costura, .nupkg, .apk, .aab, zips, .asar, captures (HAR, pcap), JS bundles with source maps, single compressed streams. Nothing runs; runnable and shell-parsed names get .bin. algorithm: cipher dry run. A repeat call pages the kept report. [Long-running.]

NameTypeReqDescription
algorithmstring–aes-128 or blowfish.
extractOnlyboolean–Extract without loading; ids are in loadedAs.
keyLogstring–TLS key log (SSLKEYLOGFILE) to decrypt a pcap.
limitinteger–Max rows.
modestring–ecb (default) or cbc.
offsetinteger–Rows to skip.
outputDirectorystring–Empty directory or earlier extract; default: temp.
parameterFilestring–JSON: key, iv, expected (hex), direction, padding, offset, length.
passwordstring–Password of encrypted zip, 7z, RAR, PDF, Office document; only it is tried.
pathstringyesContainer file, Blazor or ClickOnce folder.
NameTypeReqDescription
containerstring––
itemsarray––
nextobject––
outputDirectorystring––
sourcestring––
transformobject––

No examples provided.

update_note ~189

Change a note's status, kind, text, tags or evidence. verify=true re-checks linked records and sets a hypothesis confirmed or refuted; a stale expectedRevision is a conflict.

NameTypeReqDescription
addEvidencearray–At most 10: {result: r-... or last:N, expect: supports|refutes}, {tool, args} of a call made here, or {text}.
addTagsarray–Tags to add.
appendTextstring–Text appended on a new line.
expectedRevisionintegeryesThe revision last read.
idstringyesNote id.
kindstring–New kind.
removeTagsarray–Tags to remove.
statusstring–New status.
textstring–Replacement text.
verifyboolean–Re-check linked records after the other changes.
NameTypeReqDescription
anchorobject––
authorstring––
createdstring––
evidencearray––
idstring––
kindstring––
originstring––
revisioninteger––
statusstring––
tagsarray––
textstring––
updatedstring––

No examples provided.

update_to_new_build ~261

Carry names, comments, types, name layers, patches, code patterns and notes from an old native build to a new one by one function match. Re-runs report already_present; .NET pairs carry notes only. [Long-running.]

NameTypeReqDescription
categorystring–Only items of this category.
codeOnlyboolean–Match by code, not names.
dryRunboolean–true previews; false applies.
includearray–Categories to carry (default all).
limitinteger–Max rows.
maxPatternsinteger–Most code patterns made (0-1000).
maxTokensinteger–Page size in tokens.
newImagestringyesNew build: image id or path.
newMetadataarray–Dummy assemblies, new build.
offsetinteger–Rows to skip.
oldImagestringyesOld build: image id or path.
oldMetadataarray–Dummy assemblies, old build.
outcomestring–Only items with this outcome.
patchSetstring–Patch set (export_native_patches json): text or path.
stubPlacementstring–Placement of re-created patch stubs.
NameTypeReqDescription
categoriesarray––
dryRunboolean––
editIdsarray––
functionsMatchedinteger––
includedarray––
itemsarray––
methodMappingobject––
newFunctionsinteger––
newImagestring––
notesarray––
oldFunctionsinteger––
oldImagestring––
summarystring––

No examples provided.

verify_native_imports ~133

Check P/Invoke declarations, PE imports or Mach-O load commands against library exports as the loader resolves them. Verdicts: verified, contradicted, unresolved, dynamic_only, not_checked. [Long-running.]

NameTypeReqDescription
assemblystringyesAssembly id, name, path.
limitinteger–Max rows (max 5000).
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip.
platformstring–Target platform (default auto).
statusstring–Only this verdict or reason (contradicted, missing_export...).
NameTypeReqDescription
assemblystring––
countsarray––
declarationsinteger––
dynamicLoadsarray––
dynamicLoadsTotalinteger––
filterstring––
itemsarray––
metadataIssuesarray––
notesarray––

No examples provided.

Install

How do I install the Corvus MCP server?

Corvus runs locally as a NuGet package, launched with dnx CorvusRE@2.11.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 · CorvusRE

# add to Claude Code
claude mcp add albasha0x0-corvus -- dnx CorvusRE@2.11.0 --yes
Common questions

What is the Corvus MCP server?

Corvus is an MCP server listed in the public MCP registry as io.github.Albasha0x0/corvus. Reverse engineering and security analysis of .NET and native binaries: decompile, compare, patch. This page covers its NuGet package (CorvusRE).

Is the Corvus MCP server safe to use?

Corvus scores 77 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 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 Corvus MCP server expose?

Corvus exposes 165 tools: get_engine_status, export_edits, list_types, resolve_call_targets, search_constants, and 160 more. Their descriptions and schemas cost roughly 27,723 tokens of context every time the server is loaded.

Is the Corvus MCP server still maintained?

Corvus is still listed as active in the MCP registry. We last reached this channel on 5 November 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 Corvus MCP server under?

Corvus 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.

What did VerifyMCP test on the Corvus MCP server?

VerifyMCP ran 14 checks on Corvus, covering Malware scan, Known CVEs, Dependency health, Source repository and 10 more. 2 items could not be completed, a gap on our side rather than a finding about Corvus: Install scripts and Provenance. Endpoint Security and Transport & Reachability do not apply to a NuGet package, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.