Pkinative MCP Server
by nizokaio.github.Nizoka/pkinative-mcpv1.0.0
PKI MCP server: inspect, verify, issue, sign X.509, CSR, CRL, OCSP, CMS, TSP, PKCS#12. 34 tools
context tax
pending
security
100/100
cold start
pending
freshness
Active1d ago
Our reading of Pkinative, from the data
Pkinative is an MCP server from nizoka, listed in the official MCP Registry.
We haven't measured its tool list yet, so its token cost is unknown.
Maintenance is active: the last public signal was in the last day (2026-10-17).
It runs locally on your machine over stdio and needs 2 secrets (PKINATIVE_MCP_HTTP_TOKEN, PKINATIVE_MCP_PASSWORD); use a scoped, least-privilege key.
Install Pkinative MCP server
Install in Claude Code
claude mcp add pkinative -e PKINATIVE_MCP_HTTP_TOKEN='<pkinative-mcp-http-token>' -e PKINATIVE_MCP_PASSWORD='<pkinative-mcp-password>' -- npx -y pkinative-mcpInstall in Cursor
{
"mcpServers": {
"pkinative": {
"command": "npx",
"args": [
"-y",
"pkinative-mcp"
],
"env": {
"PKINATIVE_MCP_HTTP_TOKEN": "<pkinative-mcp-http-token>",
"PKINATIVE_MCP_PASSWORD": "<pkinative-mcp-password>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (project).
Install in Claude Desktop
{
"mcpServers": {
"pkinative": {
"command": "npx",
"args": [
"-y",
"pkinative-mcp"
],
"env": {
"PKINATIVE_MCP_HTTP_TOKEN": "<pkinative-mcp-http-token>",
"PKINATIVE_MCP_PASSWORD": "<pkinative-mcp-password>"
}
}
}
}Settings → Developer → Edit Config (claude_desktop_config.json), then restart.
Install in VS Code
{
"servers": {
"pkinative": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"pkinative-mcp"
],
"env": {
"PKINATIVE_MCP_HTTP_TOKEN": "<pkinative-mcp-http-token>",
"PKINATIVE_MCP_PASSWORD": "<pkinative-mcp-password>"
}
}
}
}Add to .vscode/mcp.json in your workspace.
Install in Windsurf
{
"mcpServers": {
"pkinative": {
"command": "npx",
"args": [
"-y",
"pkinative-mcp"
],
"env": {
"PKINATIVE_MCP_HTTP_TOKEN": "<pkinative-mcp-http-token>",
"PKINATIVE_MCP_PASSWORD": "<pkinative-mcp-password>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json.
Configuration
| Variable | Required | Secret | Description |
|---|---|---|---|
| PKINATIVE_MCP_OUTPUT_DIR | — | — | Absolute path of the one sandbox directory: path inputs are read from it and outputMode='file' outputs are written under it (never overwritten; the real path of every file read and of every parent written must stay inside — a planted symlink or junction is SECURITY_VIOLATION). Key-bearing files (.key .p8 .p12 .pfx) are read by the key tools only, never written, never served as resources. Unset: every tool works on inline PEM / base64 only. |
| PKINATIVE_MCP_CACHE_DIR | — | — | Opt-in content-addressed response cache directory (SHA-256 keyed, 1h TTL, 256 MiB LRU, plaintext at rest). Never caches path inputs, file output, a call carrying a password or a signer, a clock-dependent instant, a random serial or nonce, describe_engine or draft_governance_issue. |
| PKINATIVE_MCP_PORT | — | — | Serve Streamable HTTP on this loopback port (POST /mcp) instead of stdio (MCP 2026-07-28, stateless, legacy fallback). Unauthenticated unless PKINATIVE_MCP_HTTP_TOKEN is set. |
| PKINATIVE_MCP_HTTP_TOKEN | — | yes | Opt-in bearer token for the HTTP transport (>= 16 chars, no whitespace; a weaker value refuses to start). When set, /mcp requires 'Authorization: Bearer <token>' or answers 401. Compared constant-time, never logged. |
| PKINATIVE_MCP_PASSWORD | — | yes | Operator-side password of the encrypted PKCS#8 key or PKCS#12 file the tools open (keeps the secret out of the model transcript). Exclusive with the per-call password input (both at once is VALIDATION_ERROR). Never logged; only its presence is reported at startup. |
| PKINATIVE_MCP_AT | — | — | Pinned instant (ISO 8601 or epoch milliseconds) every omitted at / notBefore / signingTime falls back to, for reproducible verdicts and artefacts. Unset: the wall clock (a clock-dependent result is never cached). An invalid value refuses to start. |
| PKINATIVE_MCP_MAX_INPUT_BYTES | — | — | Operator ceiling for limits.maxInputBytes and the decoded size of one PKI object (default 67108864 = 64 MiB, the engine default). Integer >= 1024, read once at startup; an invalid value refuses to start. A per-call value above it is refused with LIMIT_CEILING_EXCEEDED. |
| PKINATIVE_MCP_MAX_KDF_ITERATIONS | — | — | Operator ceiling for limits.maxKdfIterations and limits.maxPkcs12KdfIterations (default 10000000, the engine default): the CPU bound of a hostile PBES2 key or PKCS#12 file. Integer >= 1, read once at startup; an invalid value refuses to start. |
| PKINATIVE_MCP_MAX_PATHS_EXPLORED | — | — | Operator ceiling for limits.maxPathsExplored (default 1000, the engine default): the RFC 5280 section 6 path-building work bound. Integer >= 1, read once at startup; an invalid value refuses to start. |
Security signals
100/100 — no known issues found as of 2026-10-19, from the checks below. This is not a guarantee of safety; review what a server can do before connecting it.
Deductions
No findings from the checks that ran.
Checks
- ✓Repository hygiene (archived, activity, license, security policy)
- ○Package metadata (install scripts, provenance) — pending
- ○Tool descriptions (prompt-injection and hidden-text heuristics) — pending
- ○Source scan (secrets, CVEs, risky code) by vectra-guard — pending
Scan it yourself before installing with vectra-guard, the open-source agent security CLI. Scoring rules
Freshness
Active — last maintenance signal 1d ago. The newest of the signals below sets the band.
Last commit (default branch)
2026-10-17 · 1d ago · GitHub
Latest release
2026-10-17 · 1d ago · GitHub · v1.0.0
Package published
no data · npm/PyPI
Registry entry updated
2026-10-17 · 1d ago · official registry · v1.0.0
FAQ
›How do I install the Pkinative MCP server in Claude Code?
Run: claude mcp add pkinative -e PKINATIVE_MCP_HTTP_TOKEN='<pkinative-mcp-http-token>' -e PKINATIVE_MCP_PASSWORD='<pkinative-mcp-password>' -- npx -y pkinative-mcp. For Cursor, VS Code, Claude Desktop and Windsurf, use the install tabs above.
›Does Pkinative require an API key?
Yes. It expects PKINATIVE_MCP_HTTP_TOKEN, PKINATIVE_MCP_PASSWORD, of which 2 are secrets.
›Can I use Pkinative as a remote (hosted) MCP server?
No hosted endpoint is published; it runs locally over stdio.
›Is Pkinative in the official MCP registry?
Yes, as io.github.Nizoka/pkinative-mcp.
Sources and method
- Official MCP Registry entry
- updated 2026-10-17
- GitHub repository
- fetched 2026-10-19
- Package registry (npm / PyPI)
- listed
- Security signals, computed by us
- 2026-10-19
- Last checked against all sources
- 2026-10-19
The description, packages and links come from the maintainer's own published metadata. Token cost, security signals, freshness and the reading above are MCPSkillHub's own measurements; see the methodology. Spot an error? Request a correction or claim the listing.