A server for searching journal information including impact factors, partition levels, warning statuses, and CCF classifications from multiple academic journal databases (JCR, Chinese Academy of Sciences partition, CCF recommendations, etc.)
This server implements 4 tools for JCR (Journal Citation Reports) partition data management. The naming is generally action-oriented (search_, sync_, get_, validate_), but descriptions are inconsistent in quality. Tools lack comprehensive output schemas and parameter validation documentation. The codebase shows partial schema coverage: search_journal and sync_database have visible input definitions, but get_sync_status and validate_data_integrity have empty input objects. Parameter descriptions are present but often generic. Error handling is minimal, no recovery guidance or actionable error messages visible. Security concerns exist around database operations (write access via sync_database) without apparent permission gating. The server is functional but falls short of production-grade quality expected for A/B-tier tools.
获取数据库同步状态,包括各表最后更新时间和记录数
搜索期刊信息,包括影响因子、分区、预警状态等
从ShowJCR仓库同步最新的分区表数据到本地数据库
验证数据库中各表的数据完整性,检查表结构和记录数
Output schemas missing for all tools. LLMs cannot predict response structure (field names, types, nesting) and must either guess or parse unstructured text. This violates the response-shaper pattern and increases hallucination risk when chaining tools.
Descriptions lack WHEN-to-use context and consequences. E.g., sync_database is WRITE but description doesn't explicitly state 'overwrites existing tables' or expected side effects. Descriptions are functional but not LLM-optimized.
sync_database (WRITE operation) has no error recovery guidance. If download fails or network times out, LLM has no actionable next step. Missing: retry semantics, timeout values, partial success handling.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 55 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 34 | - | v1 |
year parameter in search_journal is type 'string' with no format or enum constraints. LLMs may pass invalid values ('2024-01-15', 'current', '2024Q1') instead of expected YYYY format. Missing: format declaration or enum of valid years.
No permission gating or scope declarations visible. sync_database modifies state but no evidence of authorization checks, any agent calling this can overwrite partition data. Missing: scope requirements (e.g., 'requires admin:database'), permission checks, audit trail.
search_journal offers no pagination. Large journal tables could return thousands of results, exhausting context windows. Missing: limit/offset parameters, total_count in response, guidance to cap results at 20-50 items.