Your research agent! An MCP server for finding, analyzing, and synthesizing academic research papers from multiple sources.
LitLens has 5 tools with significant quality gaps. Naming is generally good (verb-noun patterns like search_arxiv_with_terms, get_paper_citations), but descriptions range from adequate to sparse. The primary tool, 'LitLens', has a verbose but thorough description (250+ chars) explaining when and why to use it. However, most other tools have minimal descriptions (20-50 chars), violating the 50-200 char baseline for LLM-optimized descriptions. Input schemas are present across all tools and properly typed (string, integer, array), but parameter descriptions are generic or missing context. For example, 'search_arxiv_with_terms' and 'search_semantic_scholar' have identical parameter definitions (query string, max_docs integer) but no guidance on differences between the two sources or when to prefer one. Output schemas are not documented in the visible code, no evidence of return type specifications. Error handling is absent; no indication of retryability, user-fixable vs fatal errors, or recovery guidance. Tool composition is reasonable (search, generate terms, get citations are distinct), but chaining metadata is unclear, e.g., does search_arxiv return paper IDs that get_paper_citations accepts? The 'sources' parameter in LitLens accepts an array of strings (['arxiv', 'semantic_scholar']), but this is an enum-like constraint that should be declared as such. Overall, the server reads as a research assistant with good intent but incomplete schema documentation and no error guidance.
Find, analyze, and synthesize academic research to answer questions. This tool performs end-to-end academic research: 1. Searches multiple academic sources for relevant papers 2. Analyzes individual papers and their relationships 3. Synthesizes findings into a coherent answer 4. Critically evaluates the quality and limitations of its synthesis Use this tool when: - The user is asking an academic research question - The user wants a comprehensive literature review on a topic - The query requires synthesizing information from multiple sources - The user wants expert analysis of current research Do NOT use this tool: - For simple factual questions that don't require research synthesis - For non-academic topics or general knowledge questions - When the user wants just a list of papers without synthesis - For questions better answered by general knowledge
Generate related search terms for an academic topic to expand search coverage. Use this tool to get multiple search variations for a research topic. For example, 'computer vision' might generate terms like 'image recognition', 'CNN', 'ViT', etc.
Get citations for a specific paper from Semantic Scholar.
Search arXiv for academic papers based on the provided search terms.
Output schemas not documented. No return type specifications visible for any tool. LLMs cannot plan downstream calls or extract required fields (e.g., paper IDs, citation counts) without knowing the response structure.
Parameter descriptions are too brief (20-50 chars) or absent context. E.g., 'search_arxiv_with_terms' max_docs default is 5, but LitLens max_docs defaults to 20, no explanation of the discrepancy or guidance on when to use each. Enum constraint on 'sources' parameter is implicit, not declared.
No error handling guidance. Tools offer no indication of retryability, user-fixable errors, or recovery paths. E.g., if search_arxiv times out or returns zero results, the agent has no next-step hint.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 45 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 39 | - | v1 |
Search Semantic Scholar for academic papers based on the provided search terms.
Tool chaining clarity unclear. It's not documented whether paper IDs returned by search tools are compatible with get_paper_citations. No documented fields indicate which ID format (arXiv vs Semantic Scholar) is expected.
Description lengths inconsistent and often too brief. Baseline for LLM-optimized descriptions is 50-200 chars. 'search_arxiv_with_terms' is 66 chars (adequate), but 'search_semantic_scholar' is also 66 chars (identical), providing no distinction. Rubric baseline: 194 chars average for A+ tools.