Skip to content
BEAD

PEM Key Formatter

Validate and reformat PEM blocks — keys, certificates, CSRs — into clean 64-character lines.

PUBLIC KEYBody contains non-base64 characters.
Reformatted PEM
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAylzXLG1ZeR1Ng3X37/sZ
9pYNQ9HbbqEJsZkVcKnT9OvB1MaglP7eRm6jKAEbE6OoFb3PpNX79V0NTqpqEUv1
example_data_for_demo_only_replace_with_a_real_PEM_block_thanks_
QIDAQAB
-----END PUBLIC KEY-----

🔒 PEM blocks are parsed locally. Nothing is uploaded.

</>Use this tool programmaticallycurl · JavaScript · MCP

Same tool, callable from any HTTP client or from Claude (via MCP). Anonymous: 100 req/day per IP. Sign up for 1,000 req/day.

curl
curl https://api.b-e-a-d.com/tools/pem-formatter/run \
  -H "Content-Type: application/json" \
  -d '{
  "input": "your input here"
}'
JavaScript (fetch)
const res = await fetch("https://api.b-e-a-d.com/tools/pem-formatter/run", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
  "input": "your input here"
}),
});
const data = await res.json();
console.log(data.result);
MCP (Claude Desktop / Claude Code)
# In Claude Desktop / Claude Code, add to your MCP config:
{
  "mcpServers": {
    "bead": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://mcp.b-e-a-d.com"]
    }
  }
}

# Then ask Claude to call:
mcp__bead__bead_pem_formatter

Full reference: developer docs · OpenAPI spec

What this does

  • Detects each -----BEGIN X----- / -----END X----- block.
  • Verifies the base64 body decodes cleanly.
  • Reformats each body to 64-character lines per RFC 7468.
  • Reports the byte length of the decoded DER for each block.

It does not verify signatures or parse the DER structure — if you need that, a certificate decoder is the right next step.

You might also like