Network Evidence MCP
Read-only offline network profiles, caller-supplied Discovery and historical/synthetic cases.
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"network-evidence": {
"url": "https://network-evidence-mcp-preview-jrkc26rjga-ew.a.run.app/mcp"
}
}
}Remote-Endpunkte
https://network-evidence-mcp-preview-jrkc26rjga-ew.a.run.app/mcpstreamable-httphttps://network-evidence-mcp-jrkc26rjga-ew.a.run.app/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (3)
🟢list_network_profiles
Returns the FIXED public profile inventory (Base mainnet eip155:8453, Base Sepolia eip155:84532, Solana mainnet, Solana devnet, zkSYS Tanenbaum testnet eip155:57057 replay-only) with each resolver manifest's DECLARED capabilities and the truth boundaries. Nothing is observed: every currentSupport/currentAvailability is 'not_assessed'. Profile membership is not live availability. Takes no arguments.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Ausgabe-Schema
{
"type": "object",
"properties": {
"schema": {
"type": "string",
"const": "ne-mcp-network-profiles/v0.1"
},
"liveObservation": {
"type": "boolean",
"const": false
},
"inventoryOrder": {
"type": "string"
},
"profiles": {
"type": "array",
"items": {
"type": "object",
"properties": {
"profileId": {
"type": "string"
},
"label": {
"type": "string"
},
"networkId": {
"type": "string"
},
"chainId": {
"type": [
"number",
"null"
]
},
"genesisHash": {
"type": [
"string",
"null"
]
},
"environment": {
"type": "string",
"enum": [
"mainnet",
"testnet"
]
},
"family": {
"type": "string",
"enum": [
"opstack",
"solana",
"zksys"
]
},
"source": {
"type": "string"
},
"resolverManifest": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"version": {
"type": "string"
},
"digest": {
"type": "string"
},
"package": {
"type": [
"string",
"null"
]
}
},
"required": [
"id",
"version",
"digest",
"package"
],
"additionalProperties": false
},
"acceptedObservationKinds": {
"type": "array",
"items": {
"type": "string",
"enum": [
"probe",
"historical_replay"
]
}
},
"capabilities": {
"type": "array",
"items": {
"type": "object",
"properties": {
"capability": {
"type": "string"
},
"declaredByResolverManifest": {
"type": "boolean"
},
"currentSupport": {
"type": "string",
"const": "not_assessed"
},
"currentAvailability": {
"type": "string",
"const": "not_assessed"
}
},
"required": [
"capability",
"declaredByResolverManifest",
"currentSupport",
"currentAvailability"
],
"additionalProperties": false
}
},
"currentStatus": {
"type": "string",
"const": "not_assessed"
},
"doesNotEstablish": {
"type": "array",
"items": {
"type": "string"
}
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"profileId",
"label",
"networkId",
"chainId",
"genesisHash",
"environment",
"family",
"source",
"resolverManifest",
"acceptedObservationKinds",
"capabilities",
"currentStatus",
"doesNotEstablish",
"notes"
],
"additionalProperties": false
}
},
"truthBoundaries": {
"type": "array",
"items": {
"type": "string"
}
},
"howToAssess": {
"type": "string"
}
},
"required": [
"schema",
"liveObservation",
"inventoryOrder",
"profiles",
"truthBoundaries",
"howToAssess"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢discover_network_candidates(requestId, generatedAt, requirements, candidates, scope)
Runs the real @nec/discovery discoverNetworks (classification by @nec/core only) over 1..16 EXPLICIT, complete, already-derived candidate contexts you supply (network + ResolverManifest + CapabilitySnapshot in nec-wire-json-v1 form) and Core DiscoveryRequirements. Returns the Core-built, Core-verified DiscoverNetworksResult with digests and per-candidate eligible/conditional/ineligible copied from Core. The outcome depends ONLY on the supplied snapshots; this server observes nothing and does NOT choose, rank or recommend a network — you choose, then run the resolver-specific evidence preflight. Invalid or incoherent contexts fail closed with a coded error.
Eingabe-Schema
{
"type": "object",
"properties": {
"requestId": {
"type": "string",
"minLength": 1,
"maxLength": 256,
"description": "Becomes DiscoverNetworksResult.requestId (NEC identifier grammar, e.g. 'disc-1')."
},
"generatedAt": {
"type": "string",
"maxLength": 64,
"description": "Explicit result time, exactly YYYY-MM-DDTHH:mm:ss.sssZ. The server reads no clock."
},
"requirements": {
"type": "object",
"properties": {
"requirements": {
"maxItems": 20,
"type": "array",
"items": {
"type": "object",
"properties": {
"capability": {
"type": "string",
"enum": [
"execution",
"observedEffects",
"dataBinding",
"settlement",
"finality",
"executionModel",
"accountModel",
"gasModel",
"simulation",
"batching"
],
"description": "Closed Core capability vocabulary."
},
"strength": {
"type": "string",
"enum": [
"required",
"desired"
]
}
},
"required": [
"capability",
"strength"
],
"additionalProperties": false
},
"description": "Required unsatisfied/unknown => ineligible; desired unsatisfied/unknown => conditional (Core semantics)."
},
"networkAllowlist": {
"description": "Core request semantics: unlisted candidates are reported ineligible.",
"maxItems": 64,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"networkDenylist": {
"description": "Core request semantics: listed candidates are reported ineligible.",
"maxItems": 64,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"metadata": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"required": [
"requirements"
],
"additionalProperties": false,
"description": "Core DiscoveryRequirements (validated by @nec/core)."
},
"candidates": {
"minItems": 1,
"maxItems": 16,
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 256,
"description": "Opaque presentation id (NEC identifier grammar), unique in the request."
},
"environment": {
"type": "string",
"enum": [
"mainnet",
"testnet"
],
"description": "Presentation-only label; never evidence. Must not contradict the fixed profile for a listed network (e.g. zkSYS eip155:57057 is testnet only)."
},
"network": {
"type": "object",
"properties": {
"networkId": {
"type": "string",
"description": "CAIP-2 style network id, e.g. eip155:84532 or solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1."
},
"observedAt": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {},
"description": "NetworkAnchor: { timestamp?, blockNumber? (decimal string), blockId? }."
}
},
"required": [
"networkId",
"observedAt"
],
"additionalProperties": {},
"description": "Core NetworkFingerprint in nec-wire-json-v1 form. MUST be canonically identical to snapshot.network (full fingerprint equality; same networkId alone is insufficient)."
},
"manifest": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"version": {
"type": "string"
},
"digest": {
"type": "string",
"description": "sha256:<64 hex>; verified by @nec/core."
},
"networkFamilies": {
"type": "array",
"items": {
"type": "string"
}
},
"implementation": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"supportedCapabilities": {
"type": "array",
"items": {
"type": "string"
}
},
"sourceRequirements": {
"type": "array",
"items": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
}
},
"required": [
"id",
"version",
"digest",
"networkFamilies",
"implementation",
"supportedCapabilities",
"sourceRequirements"
],
"additionalProperties": {},
"description": "The COMPLETE Core ResolverManifest behind snapshot.resolver (nec-wire-json-v1)."
},
"snapshot": {
"type": "object",
"properties": {
"schemaVersion": {
"type": "string",
"const": "0.1"
},
"id": {
"type": "string"
},
"generatedAt": {
"type": "string"
},
"network": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"evidenceCapabilities": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"executionCapabilities": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"evidence": {
"type": "array",
"items": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"resolver": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"artifactDigest": {
"type": "string"
}
},
"required": [
"schemaVersion",
"id",
"generatedAt",
"network",
"evidenceCapabilities",
"executionCapabilities",
"evidence",
"resolver",
"artifactDigest"
],
"additionalProperties": {},
"description": "The COMPLETE Core CapabilitySnapshot for exactly this network, in nec-wire-json-v1 form (every blockNumber is a canonical decimal STRING). Produce it with a public resolver BEFORE derivation (e.g. deriveOpStackBeforeFoundation(...).snapshot) and encodeNecWireJson('capability-snapshot', ...)."
}
},
"required": [
"id",
"environment",
"network",
"manifest",
"snapshot"
],
"additionalProperties": false
},
"description": "1..16 EXPLICIT, complete, already-derived candidate contexts. No default or demo candidates exist."
},
"scope": {
"description": "Optional presentation scope; removes candidates from the result, never changes a classification.",
"type": "object",
"properties": {
"candidateIds": {
"description": "Exact presentation ids.",
"minItems": 1,
"maxItems": 16,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 256
}
},
"environments": {
"minItems": 1,
"maxItems": 2,
"type": "array",
"items": {
"type": "string",
"enum": [
"mainnet",
"testnet"
]
}
}
},
"additionalProperties": false
}
},
"required": [
"requestId",
"generatedAt",
"requirements",
"candidates"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Ausgabe-Schema
{
"type": "object",
"properties": {
"schema": {
"type": "string",
"const": "ne-mcp-discovery/v0.1"
},
"liveObservation": {
"type": "boolean",
"const": false
},
"networkChoice": {
"type": "string"
},
"qualification": {
"type": "array",
"items": {
"type": "string"
}
},
"coreVerification": {
"type": "object",
"properties": {
"builtAndVerifiedBy": {
"type": "string"
},
"reverifiedAtMcpBoundary": {
"type": "boolean",
"const": true
},
"resultArtifactDigest": {
"type": "string"
},
"wireProfile": {
"type": "string"
}
},
"required": [
"builtAndVerifiedBy",
"reverifiedAtMcpBoundary",
"resultArtifactDigest",
"wireProfile"
],
"additionalProperties": false
},
"candidates": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"environment": {
"type": "string",
"enum": [
"mainnet",
"testnet"
]
},
"environmentLabelSource": {
"type": "string",
"const": "caller"
},
"networkId": {
"type": "string"
},
"resolver": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"version": {
"type": "string"
},
"digest": {
"type": "string"
}
},
"required": [
"id",
"version",
"digest"
],
"additionalProperties": false
},
"classification": {
"type": "string",
"enum": [
"eligible",
"conditional",
"ineligible"
]
},
"suppliedSnapshot": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"artifactDigest": {
"type": "string"
},
"generatedAt": {
"type": "string"
},
"networkObservedAt": {
"type": [
"string",
"null"
]
},
"declaredObservationKind": {
"type": [
"string",
"null"
]
},
"evidenceSourceIds": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"artifactDigest",
"generatedAt",
"networkObservedAt",
"declaredObservationKind",
"evidenceSourceIds"
],
"additionalProperties": false
}
},
"required": [
"id",
"environment",
"environmentLabelSource",
"networkId",
"resolver",
"classification",
"suppliedSnapshot"
],
"additionalProperties": false
}
},
"scope": {
"type": "object",
"properties": {
"candidateIds": {
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "null"
}
]
},
"environments": {
"anyOf": [
{
"type": "array",
"items": {
"type": "string",
"enum": [
"mainnet",
"testnet"
]
}
},
{
"type": "null"
}
]
},
"inScopeCandidateIds": {
"type": "array",
"items": {
"type": "string"
}
},
"outOfScopeCandidateIds": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"candidateIds",
"environments",
"inScopeCandidateIds",
"outOfScopeCandidateIds"
],
"additionalProperties": false
},
"verificationContextRefs": {
"type": "object",
"properties": {
"capabilitySnapshots": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"digest": {
"type": "string"
}
},
"required": [
"id",
"digest"
],
"additionalProperties": false
}
},
"resolverManifests": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"version": {
"type": "string"
},
"digest": {
"type": "string"
}
},
"required": [
"id",
"version",
"digest"
],
"additionalProperties": false
}
}
},
"required": [
"capabilitySnapshots",
"resolverManifests"
],
"additionalProperties": false
},
"coreResult": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {},
"description": "THE Core DiscoverNetworksResult (nec-wire-json-v1)."
}
},
"required": [
"schema",
"liveObservation",
"networkChoice",
"qualification",
"coreVerification",
"candidates",
"scope",
"verificationContextRefs",
"coreResult"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_reviewed_evidence_case(caseId)
Returns ONE case by exact id (f1, f2, f3, synthetic-local-core-golden) from the shipped, checksum-pinned examples/ne-maps/data/collection.json: the browser-safe Lens envelope verbatim (all limitations, unavailable/unknown states and nonClaims preserved), its source provenance and an explicit label. f1/f2/f3 are HISTORICAL reviewed exports of past public-network observations; synthetic-local-core-golden is a SYNTHETIC fixture, not a network observation. No case is live evidence.
Eingabe-Schema
{
"type": "object",
"properties": {
"caseId": {
"type": "string",
"enum": [
"f1",
"f2",
"f3",
"synthetic-local-core-golden"
],
"description": "Exact case id; no paths, no prefixes, no fuzzy matching."
}
},
"required": [
"caseId"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Ausgabe-Schema
{
"type": "object",
"properties": {
"schema": {
"type": "string",
"const": "ne-mcp-reviewed-case/v0.1"
},
"caseId": {
"type": "string"
},
"evidenceClass": {
"type": "string",
"enum": [
"historical-reviewed-public-network-fixture",
"synthetic-local-fixture"
]
},
"label": {
"type": "string"
},
"liveObservation": {
"type": "boolean",
"const": false
},
"currentAvailability": {
"type": "string",
"const": "unknown"
},
"source": {
"type": "object",
"properties": {
"path": {
"type": "string"
},
"sha256": {
"type": "string"
},
"pinnedBy": {
"type": "array",
"items": {
"type": "string"
}
},
"collectionSchemaVersion": {
"type": "string"
},
"validatedBy": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"path",
"sha256",
"pinnedBy",
"collectionSchemaVersion",
"validatedBy"
],
"additionalProperties": false
},
"caseProvenance": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"collectionNonClaims": {
"type": "array",
"items": {
"type": "string"
}
},
"serverNonClaims": {
"type": "array",
"items": {
"type": "string"
}
},
"envelope": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {},
"description": "The shipped ne-maps-case/v0.1 envelope, verbatim (browser-safe Lens projection)."
}
},
"required": [
"schema",
"caseId",
"evidenceClass",
"label",
"liveObservation",
"currentAvailability",
"source",
"caseProvenance",
"collectionNonClaims",
"serverNonClaims",
"envelope"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Community
Nachweis