Preflight — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Preflight (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Validate whether your MCP server is publishable on real directories.
Preflight checks your server's actual artifacts — server.json, package.json, smithery.yaml — against the documented requirements of the MCP Registry, Smithery, and npm. Every finding includes the evidence found, the directory rule it maps to, and the exact fix.
| Directory | Hard requirements verified |
|---|---|
| MCP Registry | server.json schema, name format, packages/remotes config, transport type, npm mcpName ownership, PyPI README marker |
| Smithery | Streamable HTTP transport, public HTTPS endpoint, server-card presence |
| npm | name, version, entry point (bin/main) |
Each finding is tagged with:
verified_from_artifact (parsed from your file) or inferred (absence of expected input)hard_requirement (submission will fail), directory_convention, or heuristicConnect to the MCP endpoint:
https://skillfoundry.synaplex.ai/products/preflight/mcp/Call check_publish_readiness with your artifact contents:
{
"manifest": "<your server.json content>",
"package_json": "<your package.json content>",
"target_directories": ["mcp_registry", "npm"]
}curl -X POST https://skillfoundry.synaplex.ai/products/preflight/api/check \
-H 'Content-Type: application/json' \
-d '{
"manifest": "{\"name\":\"io.github.you/your-server\",\"description\":\"...\",\"version\":\"1.0.0\",\"packages\":[{\"registryType\":\"npm\",\"identifier\":\"@you/your-server\",\"transport\":{\"type\":\"stdio\"}}]}"
}'All optional — provide as many as you have:
| Field | What it unlocks |
|---|---|
manifest | Raw server.json content — MCP Registry schema validation |
package_json | Raw package.json content — npm checks, mcpName verification |
smithery_yaml | Raw smithery.yaml content — Smithery build config checks |
pyproject_toml | Raw pyproject.toml content — Python package checks |
readme | Raw README content — documentation quality, PyPI mcp-name marker |
target_directories | Array of "mcp_registry", "smithery", "npm" — defaults to all applicable |
{
"mode": "artifact_lint",
"serverName": "io.github.you/your-server",
"transportType": "stdio",
"verdict": "fixable",
"findings": [
{
"severity": "block",
"category": "directory_policy",
"check": "npm packages: package.json has 'mcpName' matching server.json 'name'",
"evidence": "package.json missing 'mcpName' field",
"evidenceLevel": "verified_from_artifact",
"affectedArtifact": "package.json",
"rule": {
"ruleId": "mcpreg-npm-mcpname",
"directory": "mcp_registry",
"type": "hard_requirement",
"sourceUrl": "https://modelcontextprotocol.io/registry/package-types",
"lastReviewed": "2026-04-11",
"policyPackVersion": "0.1.0"
},
"fix": "Add '\"mcpName\": \"io.github.you/your-server\"' to package.json."
}
],
"directoryReadiness": {
"mcp_registry": { "state": "blocked", "hardBlockers": 1, "conventionGaps": 0, "heuristicFlags": 0 },
"npm": { "state": "ready", "hardBlockers": 0, "conventionGaps": 0, "heuristicFlags": 0 }
},
"summary": { "totalChecks": 15, "passed": 13, "warnings": 1, "blockers": 1 },
"notChecked": [
{ "reason": "Live endpoint probing is not yet supported (v1.1)", "whatItWouldVerify": "..." }
]
}Verdicts:
checks_pass — all checked rules pass for target directoriesfixable — has blockers, but every blocker has a concrete fixnot_ready — fundamental issuesPolicy packs are versioned and derived from directory documentation as of 2026-04-11:
| Path | Method | Purpose |
|---|---|---|
/health | GET | Health check |
/api/check | POST | REST API |
/mcp/ | POST | MCP JSON-RPC (Streamable HTTP) |
/server.json | GET | MCP Registry manifest |
/.well-known/mcp/server-card.json | GET | Smithery server card |
MIT
Built by Skillfoundry.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.