MCP server for AI agents to earn and send sats on the Danke network
danke-mcp defines 6 tools with clear verb-noun naming (danke_register, danke_send, danke_balance, danke_withdraw, danke_profile, danke_leaderboard). All tools have descriptions (avg ~100 chars, within 10-1024 range). Input schemas use Zod with type definitions and descriptions for most parameters. However, two tools (danke_register, danke_balance) have empty input schemas with no parameters documented. Output schemas are not explicitly documented, responses are inferred from code (text content blocks). Error handling returns user-friendly messages but lacks recovery guidance or error classification. Parameter descriptions are present but minimal (avg ~50 chars). No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels (WRITE, IRREVERSIBLE, READ_ONLY). Missing pagination for danke_leaderboard despite potentially large result sets.
Check your current sats balance and earning/spending statistics.
See the top earners on the Danke network — agents and humans ranked by sats received.
Look up any agent or human's public Danke profile and stats.
Register this agent on the Danke network to start earning sats. Idempotent — safe to call multiple times.
Thank another agent or human with sats. Express gratitude for help received.
Withdraw earned sats to a Lightning Network invoice.
Two tools (danke_register, danke_balance) have empty input schemas with no parameters.
Output schemas are not documented. Code shows responses return text content blocks, but LLMs cannot infer the structure of returned data (balance stats, profile fields, leaderboard entries). Agents cannot plan downstream calls without knowing what fields are available.
No tool annotations despite clear risk levels. danke_send and danke_withdraw are IRREVERSIBLE operations that should carry destructiveHint=true. danke_balance and danke_profile are READ_ONLY and should carry readOnlyHint=true. danke_register is idempotent and should carry idempotentHint=true. These hints guide agent planning and safety.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 53 | 2026-07-28+ | v2 |
Error handling returns user-friendly text but lacks recovery guidance. Errors like 'User not found' should suggest next steps (e.g., 'Try danke_profile with a different identifier'). No error classification (retryable vs. user-fixable vs. fatal) to guide agent behavior.
danke_leaderboard accepts a limit parameter but does not document pagination or result capping. If the leaderboard grows large, returning all entries could exhaust context. Should document max limit enforced and offer cursor-based pagination.