Multi-service MCP server repository with examples for Calculator, Time, and SystemMonitor services. Includes service registry, multi-server management, and support for multiple transports (stdio, HTTP, Unix socket).
This server exhibits severe quality issues across all dimensions. The codebase shows 31 tools, but analysis reveals massive duplication (add, subtract, multiply, divide, get_current_time, get_timestamp, format_time appear 3-5 times each with variant descriptions and schemas), inconsistent parameter documentation, and Chinese-language descriptions that provide minimal actionable guidance. Tool schemas are present but parameter descriptions are sparse or absent in many tools. No evidence of error handling patterns, recovery guidance, or security measures. No explicit tool annotations, logging, sampling, or resource handling. The multi-server example (multi_server.cpp) shows architectural intent but does not validate implementation quality of individual tools.
加法 a + b
将两个数字相加 (a + b)
将两个数字相加 (a + b)
计算两个数的商 (a / b),参数必须是数字
将第一个数字除以第二个数字 (a ÷ b)
除法 a / b
将时间戳格式化为时间字符串
将时间戳格式化为指定格式的时间字符串
将 Unix 时间戳格式化为可读时间
Massive tool duplication: 'add', 'subtract', 'multiply', 'divide' appear 3 times each with inconsistent schemas and descriptions. 'get_current_time' appears 3 times, 'get_timestamp' appears 3 times, 'format_time' appears 2 times. This violates the single-responsibility principle and confuses LLM tool selection.
Descriptions are predominantly in Chinese and lack LLM-optimized English documentation. Chinese descriptions like '将两个数字相加 (a + b)' provide minimal actionable guidance for English-speaking LLMs. No descriptions explain WHEN to use each tool or what distinguishes one variant from another.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 45 | 2026-07-28+ | v2 |
| 2026-03-09 | D | 57 | - | v1 |
获取 CPU 详细信息,包括使用率、核心数、频率
获取当前日期
获取当前时间,返回格式化的时间字符串
获取当前时间,可指定时区
获取当前时间,可指定时区
获取所有磁盘分区的使用信息
获取系统负载(1/5/15 分钟平均值)
获取内存使用信息,包括物理内存和 Swap
获取网络接口信息和流量统计
获取系统概览,包括运行时长、资源使用率等
获取当前 Unix 时间戳(秒)
获取当前Unix时间戳(秒)
获取当前 Unix 时间戳(秒)
获取资源占用最高的进程列表
获取今天是星期几
计算两个数的积 (a * b),参数必须是数字
乘法 a * b
将两个数字相乘 (a × b)
从第一个数字减去第二个数字 (a - b)
计算两个数的差 (a - b),参数必须是数字
减法 a - b
计算两个时间戳之间的差值
Parameter descriptions are sparse. Most tools lack descriptions for individual parameters (e.g., 'timezone', 'limit', 'sort_by'). For get_top_processes, the 'sort_by' parameter has no description explaining valid values or default behavior. Descriptions like 'Unix 时间戳 (秒)' are language-inappropriate.
No error handling or recovery guidance. Tools lack descriptions of what errors can occur, whether they are retryable, or what the LLM should do if a call fails. Divide-by-zero is mentioned in one variant ('不能为0') but not in others, and no guidance on error recovery is provided.
No output schemas documented. Tool descriptions never mention what structure the response will have, what fields to expect, or how to chain results to other tools. This forces LLMs to guess at return types and risks malformed downstream tool calls.
Input schemas use inconsistent property naming. Some tools use 'timezone', others use 'timezone_name'. Some use 'format', others use 'format_str'. This inconsistency increases the chance that LLMs will pass incorrectly named parameters across similar tools.
Tool 'get_top_processes' has an enum-like parameter 'sort_by' (must be 'memory' or 'cpu') but does not declare it as an enum in the schema, it is a plain string. This allows LLMs to hallucinate invalid sort values like 'network' or 'disk_io'.
STDIO transport only. The server is not remotely accessible and cannot work with hosted MCP clients. This is a hard architectural limitation that blocks production deployment.
No security patterns evident. No mention of rate limiting, permission gates, or audit trails. If this server were to expose sensitive operations (e.g., delete operations), there is no protection against unauthorized or runaway agent calls.