SHU MCP Server implementation - A Model Context Protocol server for searching Shanghai University news articles
Single tool with well-structured schema and comprehensive description. Tool name 'search_articles' follows verb_noun convention. Input schema includes all parameters with types and descriptions. Description is detailed (>500 chars) with when_to_use/when_not_to_use sections and output format guidance. Parameter validation is implemented (date format, limit range). However, output schema is not formally documented in the tool definition, only described in prose. Error handling returns user-friendly messages but lacks recovery guidance. No tool annotations (readOnlyHint is present in macro but not standard MCP annotations). Resource-based server with no prompts or sampling.
<when_to_use> - 用户需要搜索上海大学各部门/院系的新闻文章 - 用户需要按关键词查找特定主题的校园新闻 - 用户需要了解上海大学近期发生的事情 - 用户需要查找特定日期范围内的校园新闻 </when_to_use> <when_not_to_use> - 用户询问非上海大学相关的新闻 - 用户需要文章正文内容(本工具仅返回标题和链接) </when_not_to_use> <parameters> - query: 搜索关键词(必填),多个关键词用空格分隔,所有关键词须同时出现在标题中 - date_from: 起始日期(可选,格式 YYYY-MM-DD),不填则不限 - date_to: 结束日期(可选,格式 YYYY-MM-DD),不填则不限 - limit: 最大返回条数(可选,1-50,默认 20) </parameters> <output_format> 返回 Markdown 表格,每行包含:标题(含链接)、部门+栏目、发布时间。 按发布时间倒序排列(最新在前)。 </output_format> <important> - 关键词匹配为大小写不敏感 - 多关键词之间为 AND 关系,须全部出现在标题中 - 数据来源为定时更新的爬虫,可能存在延迟 </important>
Output schema not formally documented. Description states 'returns Markdown table' but no structured schema (fields, types) is declared for the response. LLMs cannot plan downstream operations or extract typed fields.
Error messages lack recovery guidance. Validation errors (e.g., 'limit out of range') tell the user what went wrong but not what to do next. Should suggest valid ranges or alternative approaches.
No pagination support. Tool accepts 'limit' (1-50) but no cursor, offset, or next_token for retrieving additional results. Large result sets cannot be paginated, risking context window exhaustion.
STDIO transport only. Server is not remotely accessible and cannot be used by hosted MCP clients. Limits deployment and integration scenarios.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | 2026-07-28+ | v2 |
Tool annotations present in macro but not standard MCP. readOnlyHint, destructiveHint, idempotentHint are custom attributes; standard MCP tool annotations (io.modelcontextprotocol/toolAnnotations) not visible in schema.