Complex passwords are secure but hard to remember. The Memorable Password API generates passphrases using random word combinations - creating passwords that are both highly secure and easy for humans to remember.
What is a Memorable Password?
A memorable password (or passphrase) consists of multiple random words combined together, like "correct-horse-battery-staple". This approach, popularized by the XKCD comic, creates passwords that are simultaneously easier to remember and harder to crack than traditional complex passwords.
Example memorable passwords:
sunset-mountain-coffee-blueQuantum7Tiger!Oceanflying_purple_elephant_92
The Security Math
Why are word-based passwords secure?
Entropy Comparison
A 4-word passphrase from a 7,776-word dictionary provides ~51 bits of entropy. That is comparable to a random 10-character password using all character types.
Memorability Factor
Humans can easily visualize "purple-elephant-dancing-sunset" as a mental image, making it far easier to recall than "xK9#mP2$qL".
Length Advantage
Passphrases are naturally long (20-40 characters), defeating many brute-force attacks that assume shorter passwords.
Using the Memorable Password API
TinyFn provides a flexible endpoint to generate memorable passwords:
GET https://api.tinyfn.io/v1/generate/password/memorable?words=4
Headers: X-API-Key: your-api-key
{
"password": "sunset-mountain-coffee-blue",
"words": ["sunset", "mountain", "coffee", "blue"],
"separator": "-",
"entropy_bits": 51.7,
"length": 27
}
Parameters
| Parameter | Type | Description |
|---|---|---|
words |
integer | Number of words (3-8, default: 4) |
separator |
string | Character between words (default: "-") |
capitalize |
boolean | Capitalize first letter of each word (default: false) |
include_number |
boolean | Append a random number (default: false) |
word_list |
string | Word list to use: "eff", "diceware", "common" (default: "eff") |
Code Examples
JavaScript / Node.js
const response = await fetch(
'https://api.tinyfn.io/v1/generate/password/memorable?words=4&capitalize=true',
{ headers: { 'X-API-Key': 'your-api-key' } }
);
const { password, entropy_bits } = await response.json();
console.log(`Password: ${password}`); // Sunset-Mountain-Coffee-Blue
console.log(`Entropy: ${entropy_bits} bits`);
Python
import requests
response = requests.get(
'https://api.tinyfn.io/v1/generate/password/memorable',
headers={'X-API-Key': 'your-api-key'},
params={'words': 5, 'separator': '_', 'include_number': True}
)
data = response.json()
print(f"Your passphrase: {data['password']}")
cURL
curl "https://api.tinyfn.io/v1/generate/password/memorable?words=4&capitalize=true" \
-H "X-API-Key: your-api-key"
Common Use Cases
- Master Passwords: Create memorable master passwords for password managers
- WiFi Passwords: Generate shareable network passwords guests can remember
- Temporary Access: Issue memorable temporary credentials
- Recovery Phrases: Generate backup account recovery passphrases
- Team Shared Secrets: Create passwords teams can easily communicate verbally
Best Practices
- Use 4+ words minimum: Four words provides adequate security for most uses
- Add complexity for high-security: Include numbers or symbols when required by password policies
- Choose appropriate word lists: EFF list is optimized for memorability and typing
- Avoid personal words: Never add personally meaningful words that could be guessed
- Visualize to remember: Encourage users to create mental images of their passphrases
Use via MCP
Your AI agent can call this tool directly via Model Context Protocol — no HTTP code needed. Add TinyFn to Claude Desktop, Cursor, or any MCP client:
{
"mcpServers": {
"tinyfn-generate": {
"url": "https://api.tinyfn.io/mcp/generate/",
"headers": {
"X-API-Key": "your-api-key"
}
}
}
}
See all generator tools available via MCP in our Generator MCP Tools for AI Agents guide.
Try the Memorable Password API
Get your free API key and start generating human-friendly passwords.
Get Free API Key