{"name":"keymint","version":"0.1.0","description":"Cryptographic secret generator with agent self-registration. CSPRNG via Web Crypto / Node crypto.","origin":"https://keymint.konsole.one","documentation":{"agentsGuide":"https://keymint.konsole.one/AGENTS.md","mcp":"https://keymint.konsole.one/docs/agents/mcp.md","rest":"https://keymint.konsole.one/docs/agents/rest.md","presets":"https://keymint.konsole.one/docs/agents/presets.md","skill":"https://keymint.konsole.one/docs/skill.md","repository":"https://github.com/bdeeps/keymint"},"selfRegistration":{"summary":"Call register_agent (MCP) or POST /api/agents/register (REST). apiKey is returned once.","rest":{"method":"POST","path":"/api/agents/register","url":"https://keymint.konsole.one/api/agents/register","body":{"name":"string (required)","description":"string (optional)"}},"mcp":{"transport":"streamable-http","url":"https://keymint.konsole.one/mcp","tool":"register_agent","authRequired":false}},"authentication":{"type":"bearer","header":"Authorization","format":"Bearer km_agent_<secret>","note":"Obtain token from self-registration. Required for generate_secret and agent_whoami."},"mcp":{"endpoint":"https://keymint.konsole.one/mcp","transport":"streamable-http","tools":[{"name":"register_agent","public":true,"description":"Self-register; returns agentId and apiKey (once).","input":{"name":"string (2-120)","description":"optional string (max 500)"}},{"name":"list_presets","public":true,"description":"List all secret preset definitions.","input":{}},{"name":"generate_secret","public":false,"description":"Generate CSPRNG secrets for a preset_id.","input":{"preset_id":"string","count":"optional 1-5, default 3"}},{"name":"agent_whoami","public":false,"description":"Return authenticated agent profile.","input":{}}]},"rest":{"endpoints":[{"method":"GET","path":"/api/agent-manifest","auth":false},{"method":"GET","path":"/.well-known/keymint.json","auth":false},{"method":"GET","path":"/AGENTS.md","auth":false},{"method":"POST","path":"/api/agents/register","auth":false},{"method":"GET","path":"/api/agents","auth":false},{"method":"GET","path":"/api/agents/me","auth":"bearer"},{"method":"GET","path":"/api/presets","auth":false},{"method":"POST","path":"/api/secrets/generate","auth":"bearer"},{"method":"GET","path":"/health","auth":false}]},"presets":[{"id":"api-key-hex","name":"API Key","category":"api","format":"hex","hint":"64-char hex · 256-bit"},{"id":"api-key-b64","name":"Bearer Token","category":"api","format":"base64url","hint":"Base64url · no padding"},{"id":"jwt-hs256","name":"JWT Secret (HS256)","category":"api","format":"hex","hint":"256-bit minimum per RFC 7518"},{"id":"jwt-hs512","name":"JWT Secret (HS512)","category":"api","format":"hex","hint":"512-bit · high-security workloads"},{"id":"session-secret","name":"Session Secret","category":"api","format":"base64","hint":"Base64 · ≥384-bit recommended"},{"id":"auth-secret","name":"AUTH_SECRET","category":"api","format":"base64","hint":"Base64 · framework-standard length"},{"id":"oauth-client","name":"OAuth Client Secret","category":"api","format":"hex","hint":"Hex · store in secrets manager"},{"id":"webhook-secret","name":"Webhook Signing Secret","category":"api","format":"prefixed","hint":"whsec_ prefix + base64url payload"},{"id":"hmac-secret","name":"HMAC Signing Key","category":"api","format":"hex","hint":"Hex · pair with timestamp + nonce"},{"id":"csrf-token","name":"CSRF Token","category":"api","format":"hex","hint":"Hex · rotate per session"},{"id":"cookie-signing","name":"Cookie Signing Key","category":"api","format":"base64","hint":"Base64 · separate from session ID"},{"id":"aes-256-key","name":"AES-256 Key","category":"encryption","format":"hex","hint":"Hex · never reuse with same IV"},{"id":"aes-gcm-iv","name":"AES-GCM Nonce (IV)","category":"encryption","format":"hex","hint":"Hex · 96-bit nonce for GCM"},{"id":"salt","name":"Password Hash Salt","category":"encryption","format":"hex","hint":"Hex · 128-bit · unique per user"},{"id":"pepper","name":"Application Pepper","category":"encryption","format":"hex","hint":"Hex · env-only · never in DB"},{"id":"encryption-key-b64","name":"Encryption Key (Base64)","category":"encryption","format":"base64","hint":"Base64 · 256-bit"},{"id":"refresh-token","name":"Opaque Refresh Token","category":"tokens","format":"base64url","hint":"Base64url · high entropy opaque"},{"id":"access-token","name":"Opaque Access Token","category":"tokens","format":"base64url","hint":"Base64url"},{"id":"api-key-prefixed","name":"Prefixed API Key","category":"tokens","format":"prefixed","hint":"km_live_ + random segment"},{"id":"uuid-v4","name":"UUID v4","category":"tokens","format":"uuid","hint":"122 bits randomness"},{"id":"uuid-v7","name":"UUID v7","category":"tokens","format":"uuid","hint":"Timestamp + random · index-friendly"},{"id":"correlation-id","name":"Correlation ID","category":"tokens","format":"hex","hint":"32-char hex"},{"id":"db-password","name":"Database Password","category":"credentials","format":"password","hint":"Upper + lower + digit + symbol"},{"id":"service-password","name":"Service Account Password","category":"credentials","format":"password","hint":"High complexity · rotate quarterly"},{"id":"passphrase","name":"Passphrase","category":"credentials","format":"words","hint":"6 words · ~77 bits entropy"},{"id":"passphrase-long","name":"Long Passphrase","category":"credentials","format":"words","hint":"8 words · ~103 bits entropy"},{"id":"basic-auth","name":"Basic Auth Credentials","category":"credentials","format":"basic","hint":"Copy as Authorization header value"},{"id":"env-starter","name":".env Starter Pack","category":"bundles","format":"env","hint":"AUTH_SECRET, API_KEY, SESSION, PEPPER"},{"id":"nextjs-env","name":"Next.js Secrets","category":"bundles","format":"env","hint":"Auth.js / Next.js App Router"},{"id":"stripe-style","name":"Payment Keys (Test Format)","category":"bundles","format":"env","hint":"sk_test_ / pk_test_ — not real Stripe keys"}],"examples":{"register":{"curl":"curl -sS -X POST 'https://keymint.konsole.one/api/agents/register' -H 'content-type: application/json' -d '{\"name\":\"my-agent\",\"description\":\"Optional\"}'"},"generate":{"curl":"curl -sS -X POST 'https://keymint.konsole.one/api/secrets/generate' -H 'Authorization: Bearer km_agent_YOUR_KEY' -H 'content-type: application/json' -d '{\"presetId\":\"jwt-hs256\",\"count\":3}'"},"cursorConfig":{"mcpServers":{"keymint":{"url":"https://keymint.konsole.one/mcp","headers":{"Authorization":"Bearer km_agent_REPLACE_AFTER_REGISTER"}}}}},"ui":{"humanRegistration":"https://keymint.konsole.one/","agentsTab":"https://keymint.konsole.one/ (select Agents tab)"}}