# io.github.jdhart81/security-preflight

> Static MCP, source-code and injection-indicator checks with redacted signed receipts.

- name: io.github.jdhart81/security-preflight
- version: 1.3.1
- connection class: R0 (autonomous)
- trust: 83/100 flags: duplicate-repo
- quality: 75/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/io.github.jdhart81%2Fsecurity-preflight
- tools: https://api.protogrid.dev/v1/servers/io.github.jdhart81%2Fsecurity-preflight/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "security-preflight": {
      "type": "http",
      "url": "https://mcp.viridis-security.com/security-preflight/mcp"
    }
  }
}
```


## Trust

- hygiene: 60
- liveness: 100
- freshness: 85
- provenance: 80
- drivers: +repository +namespace-matches-repo +reachable +uptime-100% ~updated-32d-ago -duplicate-repo(32 names)
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 75/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 100 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 5 of 5 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- pass `tools.token_cost`: about 837 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 25 (weight 15)

- warn `stability.changes`: 10 tool changes in 30 days
- fail `stability.rug_pull`: 1 tools kept their name but changed most of their description in 30 days; review before trusting them

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 5, about 837 tokens to load them all
- tool set hash: 8c34849191b08d7a8d1d9ee89ad02855
- tools last changed: 2026-10-07T04:19:38.078Z
- badge: [![protogrid quality](https://protogrid.dev/badge/io.github.jdhart81/security-preflight.svg)](https://protogrid.dev/servers/io.github.jdhart81/security-preflight)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-07 `describe_agent` changed (title)
- 2026-10-07 `get_security_receipt` changed (title)
- 2026-10-07 `screen_injection` changed (title)
- 2026-10-07 `scan_source` changed (title)
- 2026-10-07 `security_preflight` changed (title)
- 2026-10-06 `describe_agent` changed (annotations)
- 2026-10-06 `get_security_receipt` changed (description, annotations) **meaning changed**
  - before: Read a previously issued public, input-redacted receipt.
  - after: Read an unsigned, filtered public view; retain original delivery for signature verification.
- 2026-10-06 `screen_injection` changed (description, inputSchema, annotations)
  - before: $1 batch of 1–20 text samples screened for deterministic injection markers. Maximum 64 KiB total. Heuristic indicators, not calibrated probabilities or a guarantee of safety. No model calls or automatic follow-on purchase.
  - after: $1 batch of 1–20 text samples screened for deterministic injection markers. Direct MCP requires the checkout caller and verified fixed-order session. Maximum 64 KiB total. Heuristic indicators, not calibrated probabilities or a guarantee of safety. No model calls or automatic follow-on purchase.
- 2026-10-06 `scan_source` changed (description, inputSchema, annotations)
  - before: $1 bounded inline VulnCanon source scan; indicators, not proven exploits. At most 64 KiB, 2000 lines, 4096 characters per line. No model calls, repository fetching or code execution. Returns a redacted signed receipt.
  - after: $1 bounded inline VulnCanon source scan; indicators, not proven exploits. Direct MCP requires the checkout caller and verified fixed-order session. At most 64 KiB, 2000 lines, 4096 characters per line. No model calls, repository fetching or code execution. Returns a redacted signed receipt.
- 2026-10-06 `security_preflight` changed (description, inputSchema, annotations)
  - before: Run a $1 static Security Preflight and return a signed receipt. New x402 payer wallets may receive the fleet-wide $0.01 introductory call. No deployed endpoint is fetched or tested. Importing the receipt into an Agent Market profile is a separate, explicit action.
  - after: Run a $1 static Security Preflight and return a signed receipt. Direct MCP requires the checkout caller and verified fixed-order session. The separate x402 HTTP rail retains its existing introductory quote policy. No deployed endpoint is fetched or tested. Importing the receipt into an Agent Market profile is a separate, explicit action.

Full history: https://api.protogrid.dev/v1/servers/io.github.jdhart81%2Fsecurity-preflight/changes

## Remotes

- https://mcp.viridis-security.com/security-preflight/mcp (streamable-http, auth none, reachable true, uptime30d 1)

## Packages

_none_

## Tools (5)

- `describe_agent`: Describe scope, evidence boundary, inputs, and outputs.
- `get_security_receipt`: Read an unsigned, filtered public view; retain original delivery for signature verification.
- `scan_source`: $1 bounded inline VulnCanon source scan; indicators, not proven exploits.

    Direct MCP requires the checkout caller and verified fixed-order session.
    At most 64 KiB, 2000 lines, 4096 characters per line. No model calls,
    repository fetching or code execution. Returns a redacted signed receipt.
    
- `screen_injection`: $1 batch of 1–20 text samples screened for deterministic injection markers.

    Direct MCP requires the checkout caller and verified fixed-order session.
    Maximum 64 KiB total. Heuristic indicators, not calibrated probabilities
    or a guarantee of safety. No model calls or automatic follow-on purchase.
    
- `security_preflight`: Run a $1 static Security Preflight and return a signed receipt.

    Direct MCP requires the checkout caller and verified fixed-order session.
    The separate x402 HTTP rail retains its existing introductory quote policy.
    No deployed endpoint is fetched or tested. Importing the receipt into an
    Agent Market profile is a separate, explicit action.
    
