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 (10 hours ago)

Scores higher than 56% 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
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
extract_strings ~180

Typed values (URLs, IPs, paths, registry keys, crypto keys, base64) from literals, constants, resources and serialized asset fields, or native image strings (section, address), with count, locations and receiving APIs. read_result outputPath exports all (text: CSV).

NameTypeReqDescription
assemblystring–A loaded assembly; this or path.
limitinteger–Max rows.
maxAssetBytesinteger–Asset bytes to read; at most 4 GiB (default).
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip.
pathstring–An assembly, container, build folder, package, or serialized asset file or bundle.
timeLimitnumber–Seconds until the asset read stops.
typesarray–Only these types.
NameTypeReqDescription
assemblystring––
byTypeobject––
itemsarray––
valuesResultIdstring––

No examples provided.

find_call_paths ~192

Call chains that reach a method, from from= or entry points, shortest first. A native to= follows native callers and P/Invokes back to managed code.

NameTypeReqDescription
assemblystring–Assembly id, name, path; omit: all.
directOnlyboolean–No hops through virtual dispatch (native: RTTI virtual calls, pointers).
fromstring–Start method, same forms as to (native only when to is native).
limitinteger–Max rows.
maxDepthinteger–Max chain length (max 30).
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip.
tostringyesType or member (Ns.Type::Method(int), name, token) or native export (kernel32.dll!CreateFileW, native:IMAGE!NAME|#ORD|ADDR).
NameTypeReqDescription
enginestring––
fromstring––
itemsarray––
targetstring––

No examples provided.

find_callees ~154

What a method uses, in IL order with offsets: calls, field reads and writes, types, strings. A P/Invoke or native export gives native callees as call-tree rows.

NameTypeReqDescription
assemblystring–Assembly id, name, path; omit: all.
distinctboolean–One row per target, with a count.
limitinteger–Max rows.
maxTokensinteger–Page size in tokens.
methodstringyesType or member (Ns.Type::Method(int), name, token) or native export (kernel32.dll!CreateFileW, native:IMAGE!NAME|#ORD|ADDR).
offsetinteger–Rows to skip.
NameTypeReqDescription
itemsarray––
methodstring––

No examples provided.

find_counterpart ~197

Find where a type or member of the old build went in the new one: new name, token, confidence and body change, or the tied candidates. diff and il add C# and normalized IL diffs. [Long-running.]

NameTypeReqDescription
diffboolean–C# diff of each pair (cut at 300 lines).
ilboolean–Normalized IL diff of each method pair.
limitinteger–Symbols per page.
maxTokensinteger–Page size in tokens.
newAssemblystringyesNew build: id, name or path.
offsetinteger–Rows to skip.
oldAssemblystringyesOld build: id, name or path.
symbolstringyesOld build: Ns.Type, Ns.Outer+Inner, Ns.Type::Method(int), name or token.
symbolsarray–Instead of symbol: up to 100.
NameTypeReqDescription
itemsarray––
newstring––
oldstring––

No examples provided.

find_dex_references ~189

Cross-references in DEX code with method and code offset. direction=to: who calls, reads, writes or uses target; from: what a method or class calls, reads, writes and loads. Methods match by exact id. [Long-running.]

NameTypeReqDescription
directionstring–Default to: who refers to target.
kindstring–How to read target (default auto; string: taken literally).
limitinteger–Most references.
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip.
pathstringyesAn Android package, .dex or jar with classes*.dex.
targetstringyesClass, method (Lpkg/C;->m(I)V, pkg.C::m(int)), field (Lpkg/C;->f:I, pkg.C::f), "string".
NameTypeReqDescription
directionstring––
itemsarray––
notesarray––
targetstring––
targetKindstring––

No examples provided.

find_method_by_address ~174

Map a native address in AOT code to the methods whose function holds it, or the literal or metadata slot at it. Without script.json, generic instantiations are a guess.

NameTypeReqDescription
addressstringyesHex as IDA / Ghidra show it (0x1A2B3C, 1A2B3Ch, 00000001`8001A2B3); d: prefix for decimal.
assemblystring–Assembly id, name, path; omit: all.
kindstring–auto: a VA at or above the image base, else an RVA, else a file offset.
limitinteger–Max methods listed.
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip.
NameTypeReqDescription
addressstring––
itemsarray––

No examples provided.

find_r2r_method ~78

Managed method whose ReadyToRun code holds a native address: name, token, range, offset and instruction, or what an import cell resolves to.

NameTypeReqDescription
addressstringyesA VA or RVA in the code image (rva:/va:/off: prefix).
assemblystringyesAssembly id, name, path.
NameTypeReqDescription
addressstring––
beginstring––
endstring––
filestring––
importCellstring––
instructionstring––
kindstring––
methodsarray––
offsetstring––

No examples provided.

find_references ~177

Every use of a symbol in loaded assemblies: method call sites (also via base or interface), field reads, writes, address uses and type uses. A native export gives P/Invoke callers and native call sites.

NameTypeReqDescription
assemblystring–Assembly defining the symbol; default: all loaded.
directOnlyboolean–Methods: no calls through base / interface declarations.
kindstring–Symbol kind; overrides: overrides and implementations of the method.
limitinteger–Max rows.
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip.
symbolstringyesType or member (Ns.Type::Method(int), name, token) or native export (kernel32.dll!CreateFileW, native:IMAGE!NAME|#ORD|ADDR).
NameTypeReqDescription
itemsarray––
targetstring––

No examples provided.

find_similar_functions ~201

Find functions like a given one, ranked by code shape, control flow and shared strings, constants, imports, callees. view=duplicates or clusters groups look-alike functions image-wide. [Long-running.]

NameTypeReqDescription
addressstring–view=similar: an address in the function.
imagestringyesImage id, name, path.
limitinteger–Items to return (max 500).
maxTokensinteger–Page size in tokens.
minInstructionsinteger–Smallest function compared, in instructions (1-1000).
minScorenumber–Least score 0-1 (default 0.5; clusters 0.8).
offsetinteger–Rows to skip.
scopestring–all: every loaded image of the same architecture (view=similar; default image).
viewstring–Default: similar with address, else clusters.
NameTypeReqDescription
addressstring––
comparedinteger––
functionstring––
imagestring––
itemsarray––
notesarray––
viewstring––

No examples provided.

find_virtual_calls ~197

Resolve virtual call sites through RTTI or NativeAOT MethodTables: receiver class, vftable slot and the implementations it can reach (exact, possible or unresolved). [Long-running.]

NameTypeReqDescription
crossCheckboolean–Compare a sample with IDA (else Ghidra); minutes on a large image at first.
functionstring–Only sites in this function: Hex VA/RVA (rva:/va:/off:), export, module!import, function.
imagestringyesImage id, name, path.
limitinteger–Max sites (max 1000).
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip.
sampleFunctionsinteger–Cross-check: functions to sample.
statusstring–Only sites with this status.
timeoutSecondsinteger–Cross-check: time budget in seconds.
NameTypeReqDescription
crossCheckobject––
directEdgesinteger––
edgesinteger––
exactinteger––
imagestring––
itemsarray––
notesarray––
possibleinteger––
rttiClassesinteger––
sitesinteger––
unresolvedinteger––

No examples provided.

find_xrefs ~251

What references a native address: calls, jumps, data reads and writes, pointers, switch tables, each with its function; exports include other loaded images. direction=from lists what it references; Type::member finds struct member uses. [Long-running.]

NameTypeReqDescription
addressstring–Hex VA/RVA (rva:/va:/off:), export, module!import, function. Or Type::member, Type.member, Type+0xOFFSET.
addressesarray–Instead of address: up to 100.
directionstring–Default to.
enginestring–auto (default): IDA or Ghidra if analyzed, else ours. Adds RTTI virtual calls.
imagestringyesImage id, name, path.
kindstring–code: calls, jumps; data: reads, writes, pointers; metadata: .pdata, CFG, exports.
limitinteger–Max rows.
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip.
scopestring–Struct member: typed (default) or all (every function; call again to go on).
NameTypeReqDescription
boundTostring––
enginestring––
engineNotestring––
failedinteger––
imagestring––
itemsarray––
targetstring––
targetsarray––

No examples provided.

generate_cpp_binding ~220

Generate C++ binding code for a managed type of a Mono or AOT app: a struct that resolves the class once, typed field accessors, property getters and invoke wrappers.

NameTypeReqDescription
assemblystring–Assembly id, name, path; omit: all.
headerPathstring–Header path (absolute or under projectDir; default projectDir); #include base.
includeInheritedboolean–Also bind inherited property getters.
maxTokensinteger–Page size in tokens.
membersstring–Comma-separated member names; default all but compiler-generated.
offsetinteger–Character offset (nextOffset).
projectDirstring–C/C++ project of the header, scanned for a host function table and helpers.
stylestring–mono: embedding API; aot: runtime exports; hostapi: host function table. Default detected, else mono.
typestringyesNs.Type, Ns.Outer+Inner, Ns.Type::Method(int), name or token.
NameTypeReqDescription
codestring––
nextOffsetinteger––
offsetinteger––
totalCharsinteger––

No examples provided.

get_android_device_info ~150

Device properties (getprop) with a summary: SDK, model, ABIs, patch level, debug flags. view= reads processes, files, screenshots, bug reports. Read-only. [Long-running.]

NameTypeReqDescription
limitinteger–Most rows.
offsetinteger–Rows to skip.
outputPathstring–view=screen: new PNG path; bugreport: new or empty directory; default under temp.
querystring–Name or value filter; view=files: directory (default /data/local/tmp); window: local APK.
serialstring–Device serial; omit if one device.
viewstring–What to read.
NameTypeReqDescription
propertiesarray––
serialstring––
summaryobject––

No examples provided.

get_android_manifest ~105

AndroidManifest.xml decoded. view=summary: package, SDKs, permissions, exported components and why, highlights; components: each with intent filters, deep links and meta-data.

NameTypeReqDescription
limitinteger–Most components.
offsetinteger–Rows to skip.
pathstringyesAn .apk, .aab or split set (.apks, .xapk, .apkm).
viewstring–summary (default) or components.
NameTypeReqDescription
applicationobject––
compileSdkinteger––
componentCountsobject––
declaredPermissionsarray––
exportedarray––
exportedTotalinteger––
featuresarray––
highlightsarray––
issuesarray––
itemsarray––
librariesarray––
maxSdkinteger––
metaDataarray––
minSdkinteger––
packagestring––
permissionsarray––
queriesarray––
splitstring––
targetSdkinteger––
versionCodestring––
versionNamestring––

No examples provided.

get_android_package_info ~63

One installed package (dumpsys package): versions, SDKs, paths, flags, installer, uid, permissions with grant state.

NameTypeReqDescription
packagestringyesPackage (com.example.app).
serialstring–Device serial; omit if one device.
NameTypeReqDescription
codePathstring––
dataDirstring––
firstInstallTimestring––
flagsarray––
installerstring––
lastUpdateTimestring––
minSdkinteger––
packagestring––
permissionsarray––
primaryCpuAbistring––
serialstring––
targetSdkinteger––
uidinteger––
usersarray––
versionCodestring––
versionNamestring––

No examples provided.

get_android_resource ~156

One entry or resource of an Android package: an entry path (binary XML decoded, else text or hex), or @type/name / 0x7f... for its value in every configuration.

NameTypeReqDescription
maxTokensinteger–Page size in tokens.
namestringyesEntry path (res/xml/x.xml, assets/...), @type/name or resource id 0x7f...
offsetinteger–Character offset (nextOffset).
outputPathstring–Write the entry bytes to this file.
overwriteboolean–Overwrite outputPath.
pathstringyesAn .apk, .aab or split set (.apks, .xapk, .apkm).
NameTypeReqDescription
bytesinteger––
codestring––
entrystring––
nextOffsetinteger––
offsetinteger––
outputPathstring––
sha256string––
totalCharsinteger––

No examples provided.

get_assembly_info ~74

Assembly overview: identity, framework, entry point, counts, invalid IL, transformer, edits. view=references, metadata (tables, heaps), transforms (a dry run) or bindings (script names).

NameTypeReqDescription
assemblystringyesAssembly id, name, path.
viewstring–What to show.
NameTypeReqDescription
addressedMethodsinteger––
attributesarray––
entryPointstring––
fieldsinteger––
filestring––
fullNamestring––
heapsarray––
idstring––
invalidBodiesinteger––
invalidExceptionClausesinteger––
kindstring––
machinestring––
metadataIssueCountinteger––
metadataIssuesarray––
methodsinteger––
mvidstring––
namespacesinteger––
nestedTypesinteger––
referenceAssemblyboolean––
referenceCountinteger––
referencesarray––
resourcesinteger––
runtimestring––
sha256string––
tablesarray––
targetFrameworkstring––
transformersarray––
typesinteger––
unresolvedReferencesinteger––
unsavedEditsarray––

No examples provided.

get_attributes ~158

Custom attributes with arguments on a type or member (parameters and return value included), or on the assembly and module (symbol omitted; format=csharp decompiles them).

NameTypeReqDescription
assemblystring–Assembly id, name, path; omit: all. Required without symbol.
filterstring–Only attributes whose type name contains this.
formatstring–csharp only without symbol.
limitinteger–Max rows.
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip (characters with format=csharp).
symbolstring–Ns.Type, Ns.Outer+Inner, Ns.Type::Method(int), name or token. Omit for assembly-level attributes.
NameTypeReqDescription
codestring––
itemsarray––
totalCharsinteger––

No examples provided.

get_call_arguments ~168

Call sites with recovered argument values: constants, strings, addresses, earlier call results. Known Win32, CRT and libc APIs name parameters and decode flags. Pass address, callee or both. [Long-running.]

NameTypeReqDescription
addressstring–A call, or an address in a function (all its calls): Hex VA/RVA (rva:/va:/off:), export, module!import, function.
calleestring–Only calls to this API, module!name or function; without address, image-wide.
imagestringyesImage id, name, path.
limitinteger–Max call sites (max 1000).
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip.
NameTypeReqDescription
imagestring––
itemsarray––
notesarray––
scopestring––

No examples provided.

get_call_tree ~178

Callers or callees of a method across loaded assemblies, several levels deep, one row per node. Continues through P/Invokes into native code; takes a native export.

NameTypeReqDescription
assemblystring–Assembly id, name, path; omit: all.
depthinteger–Levels (1-8).
directionstring–callers or callees.
includeExternalboolean–Callees: also calls into unloaded assemblies (framework).
limitinteger–Max rows.
maxTokensinteger–Page size in tokens.
methodstringyesType or member (Ns.Type::Method(int), name, token) or native export (kernel32.dll!CreateFileW, native:IMAGE!NAME|#ORD|ADDR).
offsetinteger–Rows to skip.
NameTypeReqDescription
depthinteger––
directionstring––
itemsarray––
partialstring––
rootstring––

No examples provided.

get_cfg ~130

Basic blocks of the native function at an address, paged: range, successors, switch tables and unresolved indirect jumps. [Long-running.]

NameTypeReqDescription
addressstringyesHex VA/RVA (rva:/va:/off:), export, module!import, function.
enginestring–auto (default): IDA or Ghidra if analyzed, else ours.
imagestringyesImage id, name, path.
limitinteger–Blocks per page.
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip.
NameTypeReqDescription
addressstring––
cutboolean––
enginestring––
functionstring––
imagestring––
itemsarray––
pendingEdgesarray––
summaryobject––
switchesarray––
tailCallsarray––
unresolvedJumpsarray––

No examples provided.

get_dex_class ~154

One DEX class: superclass, interfaces, signature, inner classes, Kotlin @Metadata, annotations, fields and methods, paged.

NameTypeReqDescription
classstringyesClass: Lpkg/Name;, pkg.Name, or pkg.Outer.Inner / pkg.Outer$Inner.
limitinteger–Most members.
mappingstring–R8/ProGuard mapping.txt: shows and accepts original names; kept per package.
membersstring–all (default), fields or methods.
offsetinteger–Rows to skip.
pathstringyesAn Android package, .dex or jar with classes*.dex.
querystring–Only members whose name contains this.
NameTypeReqDescription
accessstring––
annotationsarray––
descriptorstring––
dexFilestring––
enclosingClassstring––
enclosingMethodstring––
fieldsinteger––
genericSignaturestring––
innerClassesarray––
interfacesarray––
itemsarray––
javaNamestring––
kotlinstring––
methodsinteger––
originalstring––
sourceFilestring––
superstring––

No examples provided.

get_engine_status ~122

IDA and Ghidra sessions of a native image: state, running job, engine view. Starts no engine.

NameTypeReqDescription
bookmarksboolean–Ghidra: all Error and Warning bookmarks (default 5).
cancelboolean–Cancel the running open or background run; reports cancelled.
enginestring–Default auto: both.
imagestringyesImage id, name, path.
waitSecondsinteger–Seconds to wait, 0-600; returns at the first state change, at once if settled.
NameTypeReqDescription
enginesarray––
imagestring––

No examples provided.

get_exception_info ~116

Exception handling of a native function: handlers, try blocks or call sites, landing pads, caught types. Without address: the image's counts and rejected metadata. [Long-running.]

NameTypeReqDescription
addressstring–Hex VA/RVA (rva:/va:/off:), export, module!import, function. Omit for an image summary.
imagestringyesImage id, name, path.
maxTokensinteger–Page size in tokens.
offsetinteger–Character offset (nextOffset).
NameTypeReqDescription
addressstring––
countsobject––
formatstring––
functionstring––
handlersarray––
imagestring––
parentstring––
rangesarray––
schemestring––

No examples provided.

get_il ~139

IL disassembly of a member or type (tokens, offsets, try blocks); each method starts with its normalized IL hash (stable across rebuilds) and raw IL SHA-256. Input for patch_method_il.

NameTypeReqDescription
assemblystring–Assembly id, name, path; omit: all.
maxTokensinteger–Page size in tokens.
offsetinteger–Character offset (nextOffset).
sourceboolean–Portable PDB source lines at IL offsets, local names, SourceLink URLs.
symbolstringyesNs.Type, Ns.Outer+Inner, Ns.Type::Method(int), name or token.
NameTypeReqDescription
bodiesarray––
codestring––
languagestring––
methodsarray––
nextOffsetinteger––
offsetinteger––
symbolsarray––
totalCharsinteger––

No examples provided.

get_method_addresses ~150

Native addresses, field offsets and tokens of an AOT method or type. script.json adds function bounds, shared code, generic instantiations and metadata slots; stringliteral.json adds the literals a method loads.

NameTypeReqDescription
assemblystring–Assembly id, name, path; omit: all.
limitinteger–Max entries of each long list.
offsetinteger–First entry of each long list.
slotstring–With a type: a vtable slot number to resolve to its method, or all.
symbolstringyesType or member (Ns.Type::M(int), name, token) or script.json name (List`1<int>::Add).
NameTypeReqDescription
itemsarray––
membersarray––
symbolstring––

No examples provided.

get_native_frame ~145

Stack frame of a native function: members with offset, name, type and size; locals=true adds decompiler locals. Offsets count from the lowest address, bracketed ones from the return address. [Long-running.]

NameTypeReqDescription
enginestring–Default auto.
functionstringyesHex VA/RVA (rva:/va:/off:), export, module!import, function. Comma-separated for several.
imagestringyesImage id, name, path.
limitinteger–Max rows (max 5000).
localsboolean–Decompile for the locals too.
offsetinteger–Rows to skip.
NameTypeReqDescription
enginestring––
framesinteger––
functionstring––
imagestring––
itemsarray––
localSizeinteger––
localsinteger––
localsNotestring––
membersinteger––
namestring––
returnAddressOffsetinteger––
savedRegistersinteger––

No examples provided.

get_native_type ~337

Layout of a native type (fields, bases, enum values) from PDB, RTTI, metadata, ObjC, Swift or an engine. Look up by name, id or typed address; read=true adds the values at address. [Long-running.]

NameTypeReqDescription
addressstring–A typed address: Hex VA/RVA (rva:/va:/off:), export, module!import, function.
atstring–Hex field offset to name (all union members); 0x48.0x10 goes through the pointer at 0x48.
depthinteger–Levels of by-value members inlined (0-4).
enginestring–auto (default): IDA or Ghidra if analyzed, else ours.
formatstring–c: a C declaration (default table).
idstring–Type id from a result (pdb:0x1A2B, rtti:0x140012000, metadata:Ns.Type).
imagestringyesImage id, name, path.
limitinteger–Max rows (max 5000).
maxTokensinteger–Page size in tokens.
namestring–Type name (ns::Widget, Ns.Type), case-insensitive; a glob (*Widget*) lists matches.
offsetinteger–First row (field, enumerator, slot, candidate).
readboolean–Add the field values at address (with name or id: that type read there).
sourcestring–Type source (default auto).
NameTypeReqDescription
candidatesarray––
imagestring––
offsetinteger––
ownerstring––
ownerAddressstring––
pathsarray––
querystring––
readAddressstring––
totalCandidatesinteger––
truncatedboolean––
typeobject––
valuestring––

No examples provided.

get_nativeaot_info ~151

Metadata of a NativeAOT image (.NET 7-10; PE, ELF, Mach-O): MethodTables, method names, frozen strings and statics. Recovered names apply as the nativeaot layer. [Long-running.]

NameTypeReqDescription
imagestringyesImage id, name, path.
limitinteger–Max rows.
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip.
querystring–view=type: a type name or MethodTable address; list views: substring.
viewstring–What to show (default summary); type: one MethodTable's bases, interfaces and slots.
NameTypeReqDescription
imagestring––
itemsarray––
summaryobject––
viewstring––

No examples provided.

get_pe_info ~108

Overview of a native image: headers, sections, mitigations, imports and exports, PDB, version, signature and anomalies; the ELF and Mach-O equivalents. view=code adds code index statistics.

NameTypeReqDescription
imagestringyesImage id, name, path.
maxTokensinteger–Page size in tokens.
offsetinteger–Character offset (nextOffset).
viewstring–code: code index statistics and late-bound imports; waits for the index.
NameTypeReqDescription
capabilitiesarray––
checksumMatchesboolean––
codeobject––
delayImportModulesinteger––
dotNetboolean––
entryPointstring––
exportsinteger––
fileSizeinteger––
formatstring––
imagestring––
imageBasestring––
importFunctionsinteger––
importModulesinteger––
issueListarray––
issuesinteger––
kindstring––
machinestring––
mitigationsOffarray––
mitigationsOnarray––
overlaySizeinteger––
pathstring––
pdbAgeinteger––
pdbGuidstring––
pdbPathstring––
sectionNotesarray––
sectionsarray––
sha256string––
signerstring––
subsystemstring––
timestampstring––
tlsCallbacksinteger––

No examples provided.

get_r2r_code ~165

Precompiled native code of a method in a ReadyToRun assembly: entry, code ranges, fixup cells and x86 / x64 disassembly, per compiled generic instantiation.

NameTypeReqDescription
assemblystring–Assembly id, name, path; omit: all.
instantiationstring–Only bodies whose name contains this text (Int32, __Canon).
maxBodiesinteger–Max bodies disassembled; the rest listed with addresses.
maxInstructionsinteger–Max instructions per body.
maxTokensinteger–Page size in tokens.
methodstringyesNs.Type, Ns.Outer+Inner, Ns.Type::Method(int), name or token.
offsetinteger–Character offset (nextOffset).
NameTypeReqDescription
bodiesarray––
codestring––
languagestring––
methodsarray––
nextOffsetinteger––
offsetinteger––
symbolsarray––
totalCharsinteger––

No examples provided.

get_resource ~140

Read a resource: text, a hex preview, or a .resources entry list (entry reads one; .baml as XAML); outputPath extracts the raw bytes. Native images take TYPE/NAME[/LANGUAGE].

NameTypeReqDescription
assemblystringyesAssembly id, name, path.
entrystring–Entry inside a .resources container.
maxTokensinteger–Page size in tokens.
namestringyesName from list_resources.
offsetinteger–Character offset (nextOffset).
outputPathstring–Write the raw bytes to this file.
overwriteboolean–Overwrite outputPath.
NameTypeReqDescription
codestring––
kindstring––
namestring––
nextOffsetinteger––
offsetinteger––
savedTostring––
sizeinteger––
totalCharsinteger––

No examples provided.

get_type_hierarchy ~98

Base chain, interfaces and directly derived or implementing loaded types of a type.

NameTypeReqDescription
assemblystring–Assembly id, name, path; omit: all.
limitinteger–Max rows.
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip.
typestringyesNs.Type, Ns.Outer+Inner, Ns.Type::Method(int), name or token.
NameTypeReqDescription
baseChainarray––
interfacesarray––
itemsarray––
typeobject––

No examples provided.

get_type_info ~149

Outline of a type without decompiling: declaration, attributes, member counts, the first members of each kind; section= pages one kind. A field shows its value or FieldRVA data.

NameTypeReqDescription
assemblystring–Assembly id, name, path; omit: all.
includeCompilerGeneratedboolean–Include compiler-generated members.
limitinteger–Max rows.
maxTokensinteger–Page size in tokens.
offsetinteger–Rows to skip.
sectionstring–A kind to page, or all.
typestringyesNs.Type, Ns.Outer+Inner, Ns.Type::Method(int), name or token.
NameTypeReqDescription
attributesarray––
compilerGeneratedHiddenboolean––
countsobject––
declarationstring––
declaringTypestring––
initialDataobject––
itemsarray––
sectionstring––
typeobject––

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.