MCP server exposing MingCang as local-first agent tools for A-share stock research and decision-making
All 5 tools lack input schemas entirely, cannot verify parameter types, constraints, or structure. Descriptions are present but generic (10-50 chars), providing minimal LLM guidance on when/why to call each tool. No output schemas documented. Tool names use 'mingcang_' prefix but lack action verbs (get_, read_, list_) that signal intent. No error handling, recovery guidance, or parameter validation visible. Composition is unclear, tools appear to read overlapping context (project_context, memory_context, stock_context) without clear differentiation.
Read basic database-backed agent health.
Read prompt-ready MingCang memory context for one stock.
Read MingCang project-owned memory summary and recent entries.
Read MingCang startup context, memory counts, watchlist, and positions.
Read signal, position, long-term label, and memory context for one stock.
No input schemas visible for any tool. Cannot verify parameter types, required/optional status, constraints, or descriptions.
Tool names lack action verbs. All start with 'mingcang_' prefix but use generic suffixes (context, snapshot, health). LLMs cannot infer intent from names alone. Should be: read_project_context, get_memory_snapshot, fetch_stock_context, check_health.
Descriptions are too short (10-50 chars) and lack context on WHEN to use each tool. 'Read MingCang startup context...' does not explain when to call this vs mingcang_stock_context or mingcang_memory_context. Baseline: 194 chars average for A+ tools.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 31 | 2026-07-28+ | v2 |
No output schemas documented. LLMs cannot plan downstream calls or extract required fields. What does mingcang_project_context return? What fields are available for chaining?
Overlapping tool purposes unclear. mingcang_project_context, mingcang_memory_context, and mingcang_stock_context all appear to return context for stocks/memory. Descriptions do not clarify which to call for what use case.