A multi-agent research and engineering assistant system that combines local knowledge base retrieval, web search, MCP tool integration, and shell execution capabilities for scientific literature synthesis and document analysis.
ResearchForge has 8 tools with basic schemas and descriptions, but significant gaps prevent production use. All tools have descriptions (10-100 chars, mostly adequate), and input schemas are present with type definitions. However, output schemas are entirely undocumented, LLMs cannot plan downstream calls or extract structured data. Tool naming is inconsistent: mcp_read_resource and mcp_get_prompt use prefixes that obscure intent, while search_papers and retrieve_context lack clarity on scope. Parameters lack constraints (enums, ranges, format specs). Error handling is minimal, tools return plain strings with no recovery guidance. No tool declares permissions, audit trails, or idempotency guarantees. The retrieve_context tool has a Chinese description mixed with English, creating ambiguity. Overall, definitions are skeletal and would not pass code review.
Return metadata for one paper matched by exact title.
List available local knowledge-base markdown files.
List files under the shared workspace root for quick inspection.
Load an MCP prompt template and return it as text.
Read one MCP resource by URI.
Read one local knowledge-base markdown file by filename.
检索本地知识库。涉及项目文档、代码说明、科研笔记、FAQ时优先使用。
No output schemas documented for any tool. LLMs cannot infer what fields to expect, forcing unstructured parsing and breaking downstream tool chaining.
retrieve_context has mixed-language description (Chinese + English). Ambiguous scope: is it a local KB search or a general retrieval? Lacks clarity on when to use vs search_papers.
mcp_read_resource and mcp_get_prompt use 'mcp_' prefix that obscures intent. Names should be verb_noun (e.g., read_mcp_resource, get_mcp_prompt) or drop prefix entirely if context is clear.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 61 | 2026-07-28+ | v2 |
Search a tiny built-in paper catalog and return matching items.
No parameter constraints (enums, ranges, formats). search_papers accepts free-form query with no guidance on length or syntax. retrieve_context k parameter has no min/max bounds.
Error handling is minimal. Tools return plain strings (e.g., 'No resource found', 'Paper not found') with no recovery guidance. LLMs cannot determine if errors are retryable or fatal.