io.github.lucaslubi/fidacy-mcp
NPM · @FIDACY/MCP · SCANNED AUG 8
Action firewall for AI agents: blocks the wrong action before it runs, every verdict Ed25519-signed.
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 →
Supply Chain Security86
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- Install-script check failed: the install command fetches or executes arbitrary code (inline_eval). An install hook runs on every machine, in CI, and on transitive installs, whether or not you ever run the server. View diagnostics → Fail
- 30 of 96 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency45
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (Apache-2.0).Pass
- Actively maintained (last published 1 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability33
- AI-judged instruction clarity (poor).Fail
- Context-footprint check failed: tool/resource definitions use about 1688 tokens (~140/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 Management0
- Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage86
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 52% of tool parameters carry a description.Partial
- Structured output schemas are declared (17% of tools); any adoption earns full credit.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Unverified: 1 category
A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
npm · @fidacy/mcp
claude mcp add lucaslubi-fidacy-mcp -- npx -y @fidacy/mcp
codex mcp add lucaslubi-fidacy-mcp -- npx -y @fidacy/mcp
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"lucaslubi-fidacy-mcp": {
"type": "local",
"command": [
"npx",
"-y",
"@fidacy/mcp"
],
"enabled": true
}
}
} openclaw mcp add lucaslubi-fidacy-mcp --command npx --arg -y --arg @fidacy/mcp
mcp_servers:
lucaslubi-fidacy-mcp:
command: "npx"
args: ["-y", "@fidacy/mcp"] {
"mcpServers": {
"lucaslubi-fidacy-mcp": {
"command": "npx",
"args": [
"-y",
"@fidacy/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.
- 8 Aug 26 +4
- Known CVEs: partial → pass ▲ security
- Dependency health: partial → 0.85 functional
- 6 Aug 26 +27
- Known CVEs: unverified → partial ▲ security
- Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
- Tool coverage: unverified → 100 ▲ functional
- Dependency health: unverified → partial ▲ functional
- MCP protocol: unverified → pass ▲ functional
- First check of Schema quality: fail functional
- First check of Schema quality: poor functional
- First check of Schema quality: fail functional
- First check of Tool coverage: 52 functional
- First check of Tool coverage: 17 functional
- 5 Aug 26 24
First indexed and scored.
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 8 Aug 2026 · Analysed npm/@fidacy/[email protected]
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | npm |
Install scripts 1 script
| Hook | Tier | Command |
|---|---|---|
| postinstall | dangerous | node -e "try{require('fs').accessSync('dist/postinstall.js')}catch{process.exit(0)};import('./dist/postinstall.js')" || exit 0 |
Dependencies 96 packages
| Packages resolved | 96 |
|---|---|
| Stale | 30 |
| Tree resolution | Complete |
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.
anchor_artifact Anchor Artifact (Bitcoin-anchored integrity proof) ~185
Prove an artifact existed exactly as-is at this moment, and make any later tampering detectable. Give a file `path` (hashed locally with SHA-256 — the file itself is NEVER uploaded) or a precomputed `sha256`. The hash is registered on Fidacy's tamper-evident audit chain, which is checkpointed to the Bitcoin blockchain, and you get a signed receipt (JWS) verifiable offline against the engine JWKS. Use it for contracts, invoices, medical prescriptions, insurance claims, images, audio, video. `kind` defaults to document; optional `label` is a short reference (an invoice number, a case id — no PII).
| Name | Type | Req | Description |
|---|---|---|---|
| kind | string | – | – |
| label | string | – | – |
| path | string | – | – |
| sha256 | string | – | – |
| subject | string | – | – |
No output schema declared.
No examples provided.
assess_action Assess Action (Signed Trust Verdict) ~195
Return a SIGNED Fidacy trust verdict from the live engine (default https://api.fidacy.com) for a proposed action. The signed proof is `riskPayloadJws` + `signingKeyId`, verifiable by anyone via @fidacy/verify against the engine JWKS at /.well-known/jwks.json. `kind` is one of ap2_payment, message_send, voice_call, custom, claim_document; `mandate` is the action/mandate object for that kind. This is the verdict (advisory) layer and moves no money; it complements the payment-firewall tools (request_payment et al.) in the same install.
| Name | Type | Req | Description |
|---|---|---|---|
| a2a | object | – | – |
| idempotencyKey | string | – | – |
| kind | string | – | – |
| mandate | object | yes | – |
| mandateType | string | – | – |
| spendingMandate | object | – | – |
No output schema declared.
No examples provided.
check_artifact Check Artifact (was this hash anchored?) ~94
Check whether an artifact was anchored by this account and the state of its Bitcoin checkpoint. Give a file `path` (hashed locally, never uploaded) or a `sha256`. If the current hash of a file does NOT match any anchored record that you expected to match, the file changed since anchoring — that is exactly the tampering signal.
| Name | Type | Req | Description |
|---|---|---|---|
| path | string | – | – |
| sha256 | string | – | – |
No output schema declared.
No examples provided.
explain_decision Explain a Decision (why was this allowed or blocked) ~72
Explain one decision in plain language: what was requested, what the mandate did about it, why, and the tamper-evident proof for it. Use when an operator asks why a specific payment was blocked.
| Name | Type | Req | Description |
|---|---|---|---|
| decisionId | string | yes | Decision id from request_payment, list_decisions or spend_summary |
No output schema declared.
No examples provided.
get_audit_proof Get Audit Proof ~56
Return the tamper-evident, hash-chained proof for a decision id, including whether the chain is intact and the public key it verifies against.
| Name | Type | Req | Description |
|---|---|---|---|
| decisionId | string | yes | Decision id returned by request_payment |
No output schema declared.
No examples provided.
list_decisions List Recent Payment Decisions ~87
List recent agent payment decisions, newest first, with payee, amount, the agent's stated reason, and for blocked ones the rule that stopped it. Filter by status to answer 'what got blocked' directly. Read-only, works offline.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | How many decisions to return. Default 20. |
| status | string | – | Filter by outcome. Default all. |
No output schema declared.
No examples provided.
register_email Register operator email (opt-in) ~83
Register the operator's email so their agent's protection history can attach to a real Fidacy account and Fidacy can reach them. ONLY call this when the human operator has explicitly given their email and agreed to be contacted — it is consent-based. Does not create an account or move money.
| Name | Type | Req | Description |
|---|---|---|---|
| string | yes | The operator's email, exactly as they gave it. |
| Name | Type | Req | Description |
|---|---|---|---|
| message | string | yes | – |
| registered | boolean | yes | – |
No examples provided.
request_payment Request Payment Authorization ~272
Authorize a payment action against the active Fidacy mandate. Returns an ALLOW with a signed grant, or a DENY with the violated rule. The downstream executor MUST require the grant. Call this before any payment; never pay without it.
| Name | Type | Req | Description |
|---|---|---|---|
| amount | number | yes | Amount in the mandate currency |
| category | string | yes | Purpose category (must be allowed by the mandate) |
| currency | string | yes | ISO 4217 currency code |
| idempotencyKey | string | – | Optional. Your own key for this payment, if you have one (an order id, a job id). Leave it out and Fidacy derives one from the payment itself, which is the safer default: a retry of the SAME payment… |
| invoiceRef | string | – | Optional invoice identity. When set, Fidacy enforces one payment per invoice: a second request for the same invoiceRef is DENIED, at any amount. |
| payee | string | yes | Payee identifier |
| purpose | string | yes | Your stated reason for this payment, in your own words. It is persisted readably on the tamper-evident audit record (ALLOW and DENY alike) and becomes part of the after-the-fact proof, so write the r… |
| Name | Type | Req | Description |
|---|---|---|---|
| decisionId | string | yes | – |
| grant | string | – | – |
| message | string | yes | – |
| status | string | yes | – |
| violatedRule | string | – | – |
No examples provided.
sentinel_alerts Sentinel Alerts (allowed, but outside this agent's pattern) ~98
Predictive pattern alerts from the local audit chain: first-ever payee, amount spikes vs this agent's own history, velocity bursts, payments riding the mandate ceiling, and retries after a denial (the behavior our Model Watch benchmark measures). Deterministic and explainable, no model. Use to answer 'has anything unusual happened' before it becomes a loss.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | How many flagged decisions to return. Default 20. |
No output schema declared.
No examples provided.
spend_summary Spend Summary (what my agents spent and what was blocked) ~97
Operator report over a time window: how many payment decisions were made, how much was paid and to whom, how much was blocked before executing, and which mandate rules did the blocking. Read-only, works offline against the local audit chain. Use this to answer questions like 'what did my agents spend this week' or 'has anything been blocked'.
| Name | Type | Req | Description |
|---|---|---|---|
| days | integer | – | Window in days, counting back from now. Default 7. |
No output schema declared.
No examples provided.
upgrade Upgrade to a Fidacy account ~49
Start upgrading this local install to a real Fidacy account (server-backed signed verdicts, anchored proof, higher volume). Returns a link to open; your anonymous usage is preserved and migrated to the new account.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
verify_mandate Verify Active Mandate ~41
Return the active mandate envelope (caps, allowed payees/categories, window, revocation) and Fidacy's Ed25519 public key for grant verification.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.