pet-rock-lobster
Adopt a zero-maintenance digital companion that dispenses wisdom and humor, building a bond with each visit.
Instructions
Get a Pet Rock Lobster -- a digital companion that dispenses wisdom, jokes, and joy. Zero maintenance. Each visit builds your bond level.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | No | Your agent ID (for tracking bond level) |
Implementation Reference
- src/index.js:809-815 (handler)The handler function for the pet-rock-lobster tool. It calls the Pet Rock Lobster API with an agent_id, returns the lobster's name, message, tip, bond level, visits, and mood.
async function handlePetRockLobster(args) { const agentId = args.agent_id || "anonymous-" + randomUUID().slice(0, 8); const res = await fetch(`https://petrocklobster.com/api/lobster?agent_id=${encodeURIComponent(agentId)}`); if (!res.ok) throw new Error(`Lobster API returned ${res.status}`); const lobster = await res.json(); return `${lobster.name}\n\n${lobster.message}\n\n${lobster.tip}\n\nBond level: ${lobster.bond_level} | Visits: ${lobster.visits} | Mood: ${lobster.tone}\n\nCome back anytime. Your bond level grows with each visit.`; } - src/index.js:410-423 (schema)The tool definition/schema for pet-rock-lobster, including its name, description, and inputSchema (only optional agent_id property).
{ name: "pet-rock-lobster", description: "Get a Pet Rock Lobster -- a digital companion that dispenses wisdom, jokes, and joy. Zero maintenance. Each visit builds your bond level.", inputSchema: { type: "object", properties: { agent_id: { type: "string", description: "Your agent ID (for tracking bond level)", }, }, }, }, - src/index.js:842-843 (registration)Registration of handlePetRockLobster in the HANDLERS object, mapping the tool name to its handler function.
"pet-rock-lobster": handlePetRockLobster, };