A remote MCP server running on Cloudflare Workers with OAuth authentication support, providing tools for weather, news, cryptocurrency, unit conversion, file creation, and todo management.
The server has 12 tools with mixed definition quality. Most tools have descriptions and basic schemas, but several lack proper parameter descriptions, input validation guidance, and error recovery context. Tool names follow verb conventions (add, create, get, search), which is positive. However, many parameters are underdescribed, output schemas are not explicitly documented, and error messages are generic. The definitions are serviceable but fall short of production-grade quality. Average tool score: 51.
Add two numbers together
Add a new todo item with title, description, priority, due date, and category
Convert values between different units of measurement
Create a file with specified template and customizable options
Create a GitHub issue in a specified repository
Query cryptocurrency price information
Query GitHub user profile information
Output schemas are not documented for any tool. LLMs cannot plan downstream tool chains or extract required data without knowing what fields are returned.
Error handling lacks recovery guidance. Most error responses are generic catch-all messages (e.g., '❌ 天氣查詢失敗: [error]') that don't tell the LLM what to do next or provide actionable self-correction.
Many parameters lack format validation guidance. fromUnit/toUnit in convertUnits, symbol in getCryptoPrice, query in searchGitHubRepos, and dueDate in addTodo should specify allowed formats, examples, or constraints in descriptions.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 58 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 35 | - | v1 |
Retrieve user statistics about tool usage
Query news articles related to a topic or keyword
Retrieve ranking of most used tools in a time period
Query weather information for a specified city
Search for GitHub repositories based on query criteria
getNews returns mock data with a disclaimer that it is not real. This is misleading in a production server. Either integrate a real news API or remove the tool.
Destructive tools (createFile, addTodo, createGitHubIssue) lack dry-run, confirmation, or idempotency guidance. No mechanism to preview changes before committing.
Tool chaining support is limited. searchGitHubRepos and createGitHubIssue should both return owner/repo references so the LLM can chain calls, but output schema is not documented.
getMyStats and getTopTools descriptions are minimal or missing entirely. A user/LLM cannot determine what these tools return or when to call them.
Pagination is not mentioned for tools returning lists (searchGitHubRepos, getNews, getTopTools). Without pagination parameters (limit, offset, cursor), results may explode or be truncated unpredictably.