@lotd/word-orb
v1.0.0
Published
Trusted language infrastructure for AI agents. 170K words, 47 languages, ethics built in. Kelly Certified.
Downloads
49
Maintainers
Readme
@lotd/word-orb
Trusted language infrastructure for AI agents, robotics, and teaching platforms. 170,000+ words. 47 languages. Ethics built in. Kelly Certified.
Why Word Orb?
Every AI agent needs language it can trust. Word Orb gives your agent:
- Definitions — accurate, etymology-backed, not hallucinated
- 47-language translations — native script + phonetic pronunciation
- Age-appropriate tones — kid-safe (5-12), teen, adult, and elder (65+) variants
- Ethics compliance — gender equity analysis, inclusive alternatives, AI identity honesty
- Kelly Certification — the gold standard for how agents should speak
Install
npm install @lotd/word-orbQuick Start
const { WordOrb } = require('@lotd/word-orb');
const orb = new WordOrb({ apiKey: 'wo_your_api_key' });
// Look up any word
const result = await orb.word('serendipity');
console.log(result.def); // Full definition
console.log(result.ipa); // /ˌsɛɹ.ən.ˈdɪp.ɪ.ti/
console.log(result.etym); // Etymology
console.log(result.langs); // 47-language translations
console.log(result.kelly_says); // Kelly's personal insightGet a free API key
const { key } = await orb.signup('[email protected]');
// Returns: wo_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
// 50 free lookups per day, upgrade anytimeMCP Integration (one line)
Add to your Claude Desktop claude_desktop_config.json:
{
"mcpServers": {
"word-orb": {
"url": "https://word-orb-api.nicoletterankin.workers.dev/mcp"
}
}
}API Reference
new WordOrb(options?)
Create a client instance.
| Option | Type | Default | Description |
|-----------|----------|---------|-------------|
| apiKey | string | — | Your wo_ API key (get one free) |
| baseUrl | string | https://word-orb-api.nicoletterankin.workers.dev | API base URL |
orb.word(word) → Promise<WordResult>
Look up any word. Returns definition, pronunciation (IPA), part of speech, etymology, translations across 47 languages, age-appropriate tones, Kelly's insight, and connections to related words.
const data = await orb.word('courage');Response:
{
word: 'courage',
ipa: '/ˈkɜːrɪdʒ/',
pos: 'noun',
def: 'Courage is the ability to face fear, danger, or difficulty...',
etym: 'From Old French "corage," meaning "heart, spirit," from Latin "cor" (heart)...',
kelly_says: 'Courage isn\'t about not being afraid...',
langs: {
es: 'coraje',
fr: 'courage',
de: 'Mut',
zh: '勇气',
ja: '勇気',
// ... 42 more languages
},
tones: {
child: 'Courage is when you feel scared but you do the brave thing anyway...',
teen: 'The ability to act in the face of fear...',
adult: 'The capacity to confront fear, pain, danger, uncertainty...'
},
_source: 'd1',
_tier: 'free'
}orb.words() → Promise<WordListResult>
Get the full word library listing with basic metadata.
const { count, words } = await orb.words();
console.log(`${count} words available`);
// words: [{ word: 'aardvark', ipa: '...', pos: 'noun', lookups: 42 }, ...]orb.audit(email, words) → Promise<AuditResult>
Run a free Kelly Certified compliance audit on your agent's vocabulary. Returns a detailed report showing ethics flags, missing age-tone variants, AI identity cautions, and an overall compliance grade.
const report = await orb.audit('[email protected]', [
'understand', 'feel', 'believe', 'help', 'teach', 'love'
]);
console.log(report.grade); // 'B+'
console.log(report.compliance_score); // 82
console.log(report.findings); // [{ word: 'feel', category: 'ai_identity', ... }]
console.log(report.gaps); // { no_ethics_review: [...], ... }orb.feedback(word, vote, correction?) → Promise<{ ok: boolean }>
Submit vocabulary feedback. Help improve Word Orb's definitions.
await orb.feedback('serendipity', 1); // upvote
await orb.feedback('irregardless', -1, 'Not a word!'); // downvote + correctionorb.signup(email) → Promise<SignupResult>
Create a free API key instantly. 50 lookups per day.
const { key, tier, daily_limit, quickstart } = await orb.signup('[email protected]');
// key: 'wo_abc123...'
// tier: 'free'
// daily_limit: 50
// quickstart: { curl: '...', javascript: '...', python: '...' }orb.me() → Promise<KeyStatus>
Check your API key usage, tier, and remaining calls.
const status = await orb.me();
console.log(status.tier); // 'starter'
console.log(status.calls_today); // 127
console.log(status.remaining_today); // 4873
console.log(status.daily_limit); // 5000orb.health() → Promise<HealthResult>
Check service health and system status.
const health = await orb.health();
// { status: 'healthy', checks: { kv: 'ok', d1: 'ok (162250 words)', ... } }orb.stats() → Promise<StatsResult>
Get database size and usage statistics.
const stats = await orb.stats();
console.log(stats.d1_words); // 162250
console.log(stats.active_keys); // 5Pricing
| Tier | Price | API Calls/Day | Best For | |------|-------|---------------|----------| | Free | $0 | 50 | Prototyping, evaluation | | Starter | $49/mo | 5,000 | Side projects, small apps | | Growth | $149/mo | 50,000 | Production agents, teams | | Enterprise | $499/mo | Unlimited | Scale, SLA, priority support |
Error Handling
const { WordOrb } = require('@lotd/word-orb');
const orb = new WordOrb({ apiKey: 'wo_your_key' });
try {
const result = await orb.word('nonexistent');
} catch (err) {
if (err.status === 401) {
console.error('Invalid API key');
} else if (err.status === 429) {
console.error('Rate limit reached — upgrade at /pricing');
} else if (err.status === 404) {
console.error('Word not found');
} else {
console.error('API error:', err.message);
}
}TypeScript
Full TypeScript definitions included — import types directly:
import { WordOrb, WordResult, AuditResult, KeyStatus } from '@lotd/word-orb';
const orb = new WordOrb({ apiKey: process.env.WORD_ORB_KEY });
const result: WordResult = await orb.word('ephemeral');Links
- Pricing & Signup
- The Daily Lesson — Word Orb in production
- MCP Server — for Claude, GPT, and agent frameworks
- Smithery — install via Smithery
About
Built by Lesson of the Day PBC. Kelly Certified language for a world where AI agents speak responsibly.
License
MIT
