Model Context Protocol (MCP) server that provides AI assistants with access to information about Duyet's work, projects, and blog content.
This server demonstrates solid definition quality with consistent naming patterns, detailed descriptions, and explicit input schemas across all tools. Tool names follow verb_noun convention (github_activity, get_blog_post_content, send_message, hire_me, say_hi, get_analytics), which is clear and action-oriented. All 6 tools have non-empty descriptions ranging from 65-120 characters, meeting baseline minimums. Input schemas are explicitly defined with types and descriptions for each parameter. However, there are notable gaps: output schemas are not documented in the tool definitions, error handling lacks recovery guidance, and some parameter descriptions could be more actionable. The server includes tool annotations (readOnlyHint, destructiveHint attributes present per LLMS.txt), which is a positive signal for current spec alignment. Average tool definition quality is strong but not exceptional.
Get contact submission analytics and reports
Fetch full article content from a blog post URL
Get recent GitHub activity including commits, issues, PRs, releases (structured output)
Get information about hiring Duyet (full-time, contract, consulting)
Send a friendly greeting to Duyet
Send a message to Duyet (collaboration, job opportunities)
Output schemas are not documented for any tool. LLMs cannot plan downstream operations or extract expected fields without knowing what is returned.
Error handling lacks actionable recovery guidance. No tool descriptions explain what to do if a call fails (retry? ask user? fallback?).
get_blog_post_content accepts 'url' parameter with a vague domain restriction in description. No validation pattern documented; LLMs may pass malformed URLs or attempt to bypass domain checks via encoding tricks.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | C | 69 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 49 | - | v1 |
hire_me and send_message accept 'email' parameters but no email format validation is documented. Descriptions do not specify regex pattern or validation rules.
Tool annotations (readOnlyHint, destructiveHint) are mentioned in LLMS.txt but not visible in tool registration source code (src/tools/index.ts excerpt provided is incomplete). Cannot verify if annotations are actually applied to each tool.