io.github.johnInarti/agent-passport
NPM · @FRACTALAI/AGENT-PASSPORT-MCP · SCANNED OCT 7
Post-quantum (ML-DSA-65/FIPS-204) agent identity + AI-decision receipts, verifiable offline.
Available components
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 Security98
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- No install/post-install scripts declared.Pass
- 31 of 97 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency19
- Repository check failed: no source repository is declared. See how to fix → View diagnostics → Fail
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 7 days ago).Pass
- Security-disclosure policy not yet verified: we couldn't inspect the source repository.Unverified
Schema Quality & AI Usability66
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 2972 tokens (~247/item across 12 items; 12 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 Management80
- Stability observed for 24 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 12 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 12 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
How do I install the io.github.johnInarti/agent-passport MCP server?
io.github.johnInarti/agent-passport runs locally as an npm package, launched with npx -y @fractalai/agent-passport-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · @fractalai/agent-passport-mcp
claude mcp add johninarti-agent-passport -- npx -y @fractalai/agent-passport-mcp
{
"mcpServers": {
"johninarti-agent-passport": {
"command": "npx",
"args": [
"-y",
"@fractalai/agent-passport-mcp"
]
}
}
} {
"servers": {
"johninarti-agent-passport": {
"command": "npx",
"args": [
"-y",
"@fractalai/agent-passport-mcp"
]
}
}
} codex mcp add johninarti-agent-passport -- npx -y @fractalai/agent-passport-mcp
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"johninarti-agent-passport": {
"type": "local",
"command": [
"npx",
"-y",
"@fractalai/agent-passport-mcp"
],
"enabled": true
}
}
} openclaw mcp add johninarti-agent-passport --command npx --arg -y --arg @fractalai/agent-passport-mcp
mcp_servers:
johninarti-agent-passport:
command: "npx"
args: ["-y", "@fractalai/agent-passport-mcp"] {
"McpServers": {
"johninarti-agent-passport": {
"Transport": "stdio",
"Command": "npx",
"Arguments": [
"-y",
"@fractalai/agent-passport-mcp"
]
}
}
} assistant mcp add johninarti-agent-passport -t stdio -c npx -a -y @fractalai/agent-passport-mcp
{
"mcpServers": {
"johninarti-agent-passport": {
"command": "npx",
"args": [
"-y",
"@fractalai/agent-passport-mcp"
]
}
}
} 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.
- 7 Oct 26 −3
No change was recorded against any check on this day. Stability & Change Management went from 97 to 80.
- 5 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.
- 3 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 87 to 90. That category is still filling its 30-day observation window: 26 days of observed history at the previous scan, 27 at this one. The score rises as the window fills, whether or not the server changes.
- 1 Oct 26 +13
- Malware scan: unverified → pass ▲ security
- Stability: pass → 0.83 functional
- 30 Sept 26 −15
- Malware scan: pass → unverified ▼ security
- Stability: 0.97 → pass security
- Package version: 0.2.3 → 0.2.5 functional
- 29 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.
- 28 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 27 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 87 to 90. That category is still filling its 30-day observation window: 26 days of observed history at the previous scan, 27 at this one. The score rises as the window fills, whether or not the server changes.
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 7 Oct 2026 · Analysed npm/@fractalai/agent-passport-mcp@0.2.5
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | npm |
Background: How many MCP packages publish verified provenance →
Dependencies 97 packages
| Packages resolved | 97 |
|---|---|
| Stale | 31 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
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 →
attest_training AI training-provenance attestation (C2PA) ~256
Attest how/what an AI model was trained: a post-quantum-signed C2PA-style provenance manifest over a dataset/training hash for a given model_id. Call to give a model a verifiable training-provenance record. Privacy-preserving (send dataset_hash). Price $0.05 USDC on Base.
| Name | Type | Req | Description |
|---|---|---|---|
| content_type | string | – | Optional label (e.g. "application/jsonl", "dataset"). |
| dataset | string | – | Raw dataset/training content; we bind sha256(dataset). |
| dataset_hash | string | – | A sha256 hex you already computed; bound as-is. Provide dataset OR dataset_hash. |
| issuer | string | – | Optional declaring party (recorded). |
| model_id | string | yes | Model/dataset identifier (e.g. "fane-1", "acme-corpus-v3"). |
| payment | string | – | Optional base64 x402 X-PAYMENT (EIP-3009 exact-scheme payload, or {txHash}). x402-aware wallet clients pass this automatically via _meta["x402/payment"] — set it explicitly only if your client does n… |
No output schema declared.
No examples provided.
issue_passport Issue a verifiable agent passport ~428
Issue a verifiable agent passport = an agent id + a SIGNED assertion + a re-verifiable permalink. It (a) resolves the agent on the FRC-55 registry when agent_id is an on-chain id (fractal_getAgent), and (b) seals the assertion through the REAL x402 (HTTP 402) attest-decision flow: the assertion is Dilithium-2 signed, Black-Box chained and anchored on FractalAI's L1, returning a receipt anyone can re-check with verify_passport. WHAT IT PROVES: this exact assertion was attested by (and bound to) this agent id, is cryptographically intact, and is anchored on-chain. WHAT IT DOES NOT PROVE: that the assertion is TRUE, that the agent's decision was CORRECT, or any decentralized/consensus-scored reputation — it does NOT register reputation. PAYMENT: this is a paid x402 resource ($0.05 USDC on Base). Call once WITHOUT payment_tx_hash to get the exact payment challenge (accepts[]: amount, USDC asset, payTo); pay that USDC yourself; then call again WITH payment_tx_hash set to the confirmed transaction hash. Without payment it returns the challenge — it never fabricates a passport.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_id | string | yes | The agent's identifier. A 0x FRC-55 on-chain id is resolved against the registry; any other stable label is bound as-is (and flagged agent_resolved:false). |
| assertion | string | yes | The action/claim to attest and bind to the agent (becomes the sealed decision output). |
| input | string | – | Optional context/input that produced the assertion (defaults to the assertion itself). |
| model | string | – | Optional model/agent version that produced the assertion. |
| payer | string | – | Optional payer address hint. |
| payment_tx_hash | string | – | A confirmed USDC-on-Base transaction hash paying the required amount. If omitted, the tool returns the x402 payment challenge instead of a passport. One txHash issues exactly one passport. |
No output schema declared.
No examples provided.
list_fractalai_proofs Discover FractalAI's post-quantum proof catalog ~92
Free. Return the live catalog of FractalAI's x402 post-quantum proof services (price, algorithm, endpoint, and what each proves) read straight from the canonical /.well-known/x402.json. Call this first to discover every proof you can buy: signatures, AI-decision notarization, dataset/training provenance, CBOM sealing, Know-Your-Agent, and signature verification.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
lookup_agent Look up an agent's public on-chain state ~149
Free. Read an agent's PUBLIC state from the FRC-55 registry on the live FractalAI L1 node (fractal_getAgent) — name, owner, status, model, price_per_call, total_calls, rating, total_ratings, created_at — for reputation/status checks. Omit agent_id to list all registered agents (fractal_listAgents). Always returns registry-wide stats (fractal_getAgentStats). This is on-chain registry data as reported by the node; ratings are the registry's own counters, not an independent audit.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_id | string | – | A 0x FRC-55 on-chain agent id to fetch. Omit to list all agents. |
No output schema declared.
No examples provided.
notarize_decision Notarize an AI decision (auditable, on-chain) ~257
Notarize an AI decision: bind (input, output, model) into a post-quantum-signed, Black-Box-chained, on-chain-anchored attestation with a re-verifiable permalink. Call to make an autonomous agent's decision auditable and non-repudiable (EU AI Act Art. 12 alignment). Proves the decision was sealed intact — NOT that it was correct. Price $0.05 USDC on Base.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_id | string | yes | REQUIRED. Agent id (a 0x FRC-55 id is resolved on-chain; any label is bound as-is). |
| input | string | yes | The context/input that produced the decision. |
| model | string | – | Model/agent version that produced the decision (bound as model_id). |
| output | string | yes | The decision/output to seal. |
| payment | string | – | Optional base64 x402 X-PAYMENT (EIP-3009 exact-scheme payload, or {txHash}). x402-aware wallet clients pass this automatically via _meta["x402/payment"] — set it explicitly only if your client does n… |
No output schema declared.
No examples provided.
prove_provenance Post-quantum provenance seal (dataset/content) ~241
Seal the provenance of a dataset / training run / AI-generated content: a post-quantum signature + a drand lower-bound timestamp (cannot be backdated) + an on-chain anchor. Call to prove PRIOR EXISTENCE and INTEGRITY of AI data your agent produced or consumed. Privacy-preserving (send a hash). Price $0.05 USDC on Base.
| Name | Type | Req | Description |
|---|---|---|---|
| content | string | – | Raw content to seal; we seal sha256(content). |
| content_hash | string | – | A sha256 hex you already computed; sealed as-is (content never leaves you). Provide content OR content_hash. |
| issuer | string | – | Optional declaring party (recorded). |
| kind | string | – | Provenance kind: "dataset" | "training" | "content". |
| payment | string | – | Optional base64 x402 X-PAYMENT (EIP-3009 exact-scheme payload, or {txHash}). x402-aware wallet clients pass this automatically via _meta["x402/payment"] — set it explicitly only if your client does n… |
No output schema declared.
No examples provided.
seal_cbom Seal a Cryptographic Bill of Materials (CBOM) ~210
Seal a CycloneDX CBOM (ECMA-424, cryptographic inventory) with a post-quantum signature + drand timestamp — a machine-readable PQC-readiness / crypto-posture disclosure (CNSA 2.0, procurement). Call to certify your declared cryptographic inventory. Price $0.05 USDC on Base.
| Name | Type | Req | Description |
|---|---|---|---|
| cbom | object | yes | The CycloneDX CBOM (ECMA-424) as a JSON object. |
| issuer | string | – | Optional organization declaring the inventory (recorded). |
| payment | string | – | Optional base64 x402 X-PAYMENT (EIP-3009 exact-scheme payload, or {txHash}). x402-aware wallet clients pass this automatically via _meta["x402/payment"] — set it explicitly only if your client does n… |
| subject | string | – | Optional target system/product this CBOM describes (recorded). |
No output schema declared.
No examples provided.
seal_ml_dsa Post-quantum signature (ML-DSA-65 / Dilithium-3) ~198
Get a post-quantum ML-DSA-65 / Dilithium-3 (NIST FIPS 204) signature over any message or hash — signed locally, verifiable OFFLINE, with a verifiable on-chain-anchored receipt. Call when your agent needs a durable, quantum-safe signature or proof of authenticity. Price $0.02 USDC on Base.
| Name | Type | Req | Description |
|---|---|---|---|
| hash | string | – | Hex digest already computed; signed directly. Provide message OR hash. |
| message | string | – | UTF-8 message; we sign sha256(message). |
| payment | string | – | Optional base64 x402 X-PAYMENT (EIP-3009 exact-scheme payload, or {txHash}). x402-aware wallet clients pass this automatically via _meta["x402/payment"] — set it explicitly only if your client does n… |
No output schema declared.
No examples provided.
verify_agent_kya Know-Your-Agent: verify an agent credential ~201
Know-Your-Agent (KYA): verify another agent's FractalAI credential (post-quantum signature) and read its live FRC-55 on-chain reputation. Call BEFORE trusting, delegating to, or paying another agent. Returns a post-quantum-signed verdict. Price $0.03 USDC on Base.
| Name | Type | Req | Description |
|---|---|---|---|
| check_reputation | boolean | – | Default true: re-read live FRC-55 on-chain reputation. |
| credential | object | yes | A FractalAI KYA credential ({ claim, signature, public_key, credential_id }) to verify. |
| payment | string | – | Optional base64 x402 X-PAYMENT (EIP-3009 exact-scheme payload, or {txHash}). x402-aware wallet clients pass this automatically via _meta["x402/payment"] — set it explicitly only if your client does n… |
No output schema declared.
No examples provided.
verify_passport Independently verify an agent passport ~455
Free. Independently verify a verifiable agent passport / attestation. Give it an attestation permalink (https://fractalai.net.co/attestation/0x…) or the bare 0x hash — optionally plus the receipt JSON you were handed at issue time (if it carries an `ml_dsa65` field). It: (1) fetches the public attestation record, (2) [independent] recomputes sha256(input)/sha256(output) and reconstructs the exact canonical signed message, (3) [independent] verifies the ML-DSA-65 (NIST FIPS 204) signature 100% OFFLINE with @noble/post-quantum against a key PINNED IN SOURCE (the FractalAI receipt key — NEVER the key quoted in the receipt), (4) [server-assisted] verifies the Dilithium-2 signature over the canonical bytes plus a tamper negative-control, and (5) reads the agent's on-chain FRC-55 state (fractal_getAgent) when agent_id is an on-chain id. Returns { valid_independent, valid_server_assisted, valid, algorithm, checks[], anchored, decision, agent }. TRUST: rely on `valid_independent` — it is true ONLY when an ML-DSA-65 signature verifies against the pinned key (fail-closed: no/empty signature ⇒ false). `valid_server_assisted` trusts the FractalAI server. `valid` aliases the conservative independent verdict. HONEST SCOPE: a pass means the signature is intact over the exact bytes and the record is internally consistent and anchored on FractalAI's L1 — it does NOT prove the assertion is true or that the agent's decision was correct.
| Name | Type | Req | Description |
|---|---|---|---|
| attestation | string | yes | Attestation permalink (…/attestation/0x…) or the bare 0x attestation hash. |
| receipt | object | – | Optional: the receipt JSON handed to you at issue time. If it contains an `ml_dsa65` { signature, public_key, signed_payload_sha256 } object, the ML-DSA-65 signature is verified fully offline against… |
No output schema declared.
No examples provided.
verify_proof Verify a post-quantum signature (floor primitive) ~274
Verify a post-quantum signature over a message against a public key — auto-detects ML-DSA-65 / Dilithium-3 (verified offline) or Dilithium-2 (node). The floor primitive ($0.01) for any proof pipeline; returns a post-quantum-signed verdict receipt. Price $0.01 USDC on Base.
| Name | Type | Req | Description |
|---|---|---|---|
| message | string | – | The UTF-8 message that was signed. Provide message OR message_b64. |
| message_b64 | string | – | The exact base64 bytes that were signed (use for /sign outputs). |
| payment | string | – | Optional base64 x402 X-PAYMENT (EIP-3009 exact-scheme payload, or {txHash}). x402-aware wallet clients pass this automatically via _meta["x402/payment"] — set it explicitly only if your client does n… |
| public_key | string | yes | Base64 public key to verify against (1952B ML-DSA-65 or 1312B Dilithium-2). |
| signature | string | yes | Base64 signature to verify (ML-DSA-65 3309B or Dilithium-2 2420B). |
No output schema declared.
No examples provided.
witness_payment Witness an x402 payment settlement ~211
Obtain a FractalAI ML-DSA-65 attestation of a declared payment settlement. The service checks the claimed transfer when a transaction is supplied. Call without payment first for the current price and requirements. Keep the exact request and payment authorization for recovery; this tool never retries payments. Use the witness SDK to construct request_binding for bound requests. An attestation does not prove the purchased content is true.
| Name | Type | Req | Description |
|---|---|---|---|
| payment | string | – | Optional base64 x402 X-PAYMENT (EIP-3009 exact-scheme payload, or {txHash}). x402-aware wallet clients pass this automatically via _meta["x402/payment"] — set it explicitly only if your client does n… |
| request_binding | object | – | SDK-generated binding; preserve unchanged on recovery. |
| seal_body | object | yes | Settlement seal body built by the witness SDK. |
| settlement_tx | string | – | Known transaction for recovering an uncertain settlement. |
No output schema declared.
No examples provided.
What is the io.github.johnInarti/agent-passport MCP server?
io.github.johnInarti/agent-passport is an MCP server listed in the public MCP registry as io.github.johnInarti/agent-passport. Post-quantum (ML-DSA-65/FIPS-204) agent identity + AI-decision receipts, verifiable offline. This page covers its npm package (@fractalai/agent-passport-mcp).
Is the io.github.johnInarti/agent-passport MCP server safe to use?
io.github.johnInarti/agent-passport scores 74 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 7 October 2026. It declares no install or post-install scripts. 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 io.github.johnInarti/agent-passport MCP server expose?
io.github.johnInarti/agent-passport exposes 12 tools: verify_passport, issue_passport, lookup_agent, list_fractalai_proofs, witness_payment, and 7 more. Their descriptions and schemas cost roughly 2,972 tokens of context every time the server is loaded.
Is the io.github.johnInarti/agent-passport MCP server still maintained?
io.github.johnInarti/agent-passport is still listed as active in the MCP registry. We last reached this channel on 7 October 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 io.github.johnInarti/agent-passport MCP server under?
io.github.johnInarti/agent-passport declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.