pkinative MCP — X.509, CMS, OCSP, time-stamps and PKCS#12 without a key byte leaving

io.github.Nizoka/pkinative-mcp

About pkinative MCP — X.509, CMS, OCSP, time-stamps and PKCS#12 without a key byte leaving

pkinative MCP — X.509, CMS, OCSP, time-stamps and PKCS#12 without a key byte leaving is an MCP server published by the GitHub account Nizoka. PKI MCP server: inspect, verify, issue, sign X.509, CSR, CRL, OCSP, CMS, TSP, PKCS#12. 34 tools

It runs on your own machine: your AI client starts it from the npm package pkinative-mcp at version 1.0.0.

It asks for 2 secrets: PKINATIVE_MCP_HTTP_TOKEN and PKINATIVE_MCP_PASSWORD. Give it a key with the least access that still works.

Version 1.0.0 was published on 17 October 2026, and the source code is public, so you can read it before installing.

Written from the registry entry. 9 automated checks on the registry entry and the package code: 7 pass, 0 warn, 0 fail, 2 info. How we check.

What it asks for

VariableRequiredSecretDescription
PKINATIVE_MCP_OUTPUT_DIRNoNoAbsolute 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_DIRNoNoOpt-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_PORTNoNoServe 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_TOKENNoYesOpt-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_PASSWORDNoYesOperator-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_ATNoNoPinned 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_BYTESNoNoOperator 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_ITERATIONSNoNoOperator 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_EXPLOREDNoNoOperator 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.

Checks

CheckResultDetail
Source repository linkedPasshttps://github.com/Nizoka/pkinative-mcp
Version pinnedPassEvery package has an explicit version
Secrets requestedInfoAsks for 2 secrets: PKINATIVE_MCP_HTTP_TOKEN, PKINATIVE_MCP_PASSWORD
Known package registryPassAll packages come from npm, PyPI, OCI, NuGet or MCPB
Namespace ownershipInfoName verified via GitHub account Nizoka
Registry text aimed at the AIPassDescription and settings contain no hidden characters or instructions to the AI
Install scriptsPasspkinative-mcp@1.0.0 runs nothing at install
Code red flagsPassRead 165 files in pkinative-mcp@1.0.0: no obfuscation, encoded execution, credential reads or data-collection endpoints found
Text aimed at the AIPassNo hidden characters or instructions to the AI in 165 files, including comments and the README

Popularity & health: 50 / 100

Worked out from public numbers and our own checks, not from user reviews or ratings. It says how used and how looked-after a server is, not whether it is safe.

Popularity7 / 40

0 GitHub stars, 82 downloads last week, no Hacker News posts found. Best two of the three, each on a log scale.

Activity15 / 25

Last push 2026-10-26, last release 2026-10-17, 0 commits in 90 days.

Issue health8 / 15

0 closed of 0 issues, too few to judge. No data, so half marks.

Our checks20 / 20

0 warnings, each costing a fifth.

0 forks, 1 merged pull requests. Sources: GitHub, npm, PyPI (pypistats.org) and Hacker News (Algolia), fetched 2026-10-31.

What people say

No Hacker News threads link to its source code.

Look further: search Reddit, search Hacker News, read its GitHub issues. These are not reviews we checked.

Facts

Registry nameio.github.Nizoka/pkinative-mcp
PublisherGitHub account Nizoka
How the name is verifiedName verified via GitHub account Nizoka. The registry ties the name prefix to that account or domain; it does not check the code.
TypeLocal: runs on your machine from a package
Packagesnpm pkinative-mcp 1.0.0 (stdio)
Version1.0.0
Published
Last updated
Source repositoryhttps://github.com/Nizoka/pkinative-mcp
Websitehttps://github.com/Nizoka/pkinative-mcp#readme
CategoryAgent safety & governance (assigned by keyword rule, not by hand)

Related servers in Agent safety & governance