{"openapi":"3.0.3","info":{"title":"Gnist Context — Password Generator","description":"Secure password, passphrase, and PIN generator with strength estimation.\n\n- **MCP endpoint:** `https://context.gnist.ai/mcp/password-generator/`\n- **Toolkit page:** `/toolkits/password-generator`\n- **Full API spec:** `/api/openapi.json`\n- **Get an API key:** `/signup`","version":"1.0.0","contact":{"name":"GnistAI","url":"https://gnist.ai"}},"servers":[{"url":"https://context.gnist.ai","description":"Production"}],"paths":{"/rest/password-generator/generate_password":{"post":{"tags":["Utilities"],"summary":"generate_password","description":"Generate a cryptographically secure random password.\n\nReturns the password, its length, character sets used, and entropy in bits.","operationId":"password_generator_generate_password","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"length":{"default":16,"description":"Password length (4-128).","maximum":128,"minimum":4,"type":"integer"},"uppercase":{"default":true,"description":"Include uppercase letters.","type":"boolean"},"lowercase":{"default":true,"description":"Include lowercase letters.","type":"boolean"},"digits":{"default":true,"description":"Include digits.","type":"boolean"},"symbols":{"default":true,"description":"Include symbols.","type":"boolean"},"exclude_ambiguous":{"default":false,"description":"Exclude ambiguous characters (0/O, 1/l/I, etc.).","type":"boolean"}},"type":"object"}}}}}},"/rest/password-generator/generate_passphrase":{"post":{"tags":["Utilities"],"summary":"generate_passphrase","description":"Generate a passphrase from random dictionary words.\n\nReturns the passphrase, word count, separator, and entropy in bits.","operationId":"password_generator_generate_passphrase","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"words":{"default":4,"description":"Number of words (2-12).","maximum":12,"minimum":2,"type":"integer"},"separator":{"default":"-","description":"Word separator character.","type":"string"},"capitalize":{"default":false,"description":"Capitalize each word.","type":"boolean"}},"type":"object"}}}}}},"/rest/password-generator/generate_pin":{"post":{"tags":["Utilities"],"summary":"generate_pin","description":"Generate a cryptographically secure numeric PIN.\n\nReturns the PIN, its length, and entropy in bits.","operationId":"password_generator_generate_pin","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"length":{"default":6,"description":"PIN length (4-12).","maximum":12,"minimum":4,"type":"integer"}},"type":"object"}}}}}},"/rest/password-generator/check_password_strength":{"post":{"tags":["Utilities"],"summary":"check_password_strength","description":"Estimate the strength of a given password.\n\nReturns a score (0-4), label (very_weak/weak/fair/strong/very_strong), entropy in bits, and feedback.","operationId":"password_generator_check_password_strength","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"password":{"description":"Password to evaluate.","type":"string"}},"required":["password"],"type":"object"}}}}}},"/rest/password-generator/report_feedback":{"post":{"tags":["Utilities"],"summary":"report_feedback","description":"Report a bug, feature request, or general feedback for this data source.\n\nUse this when something doesn't work as expected, when you'd like\na new feature, or when you have suggestions for improvement.\n\nArgs:\n    feedback: Describe the issue or suggestion.\n    feedback_type: One of 'bug', 'feature_request', or 'general'.","operationId":"password_generator_report_feedback","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"feedback":{"type":"string"},"feedback_type":{"default":"general","type":"string"}},"required":["feedback"],"type":"object"}}}}}}},"tags":[{"name":"Utilities","description":"Data sources: Utilities"}],"components":{"securitySchemes":{"ApiKeyHeader":{"type":"apiKey","in":"header","name":"gnist-api-key","description":"API key passed via request header."},"ApiKeyQuery":{"type":"apiKey","in":"query","name":"gnist_api_key","description":"API key passed via query parameter."}}}}