Arxivum
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DATA_DIR | No | SQLite database + ChromaDB location. | ./data |
| HF_TOKEN | No | Hugging Face token (model download only). | |
| LLM_N_CTX | No | LLM context window size. | 4096 |
| MODELS_DIR | No | GGUF model file location. | ./models |
| LLM_N_THREADS | No | CPU threads for LLM inference. | 4 |
| MCP_TRANSPORT | No | MCP transport: 'stdio' or 'sse'. | stdio |
| LLM_N_GPU_LAYERS | No | GPU layers to offload (0 = pure CPU). | 0 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| research_search_papersA | Search arXiv for papers matching query and import them into the local library. Returns a JSON list of imported papers with their arXiv IDs, titles, and citation counts (if enriched). Args: query: arXiv search query (natural language or field-specific). max_results: Maximum papers to return (1–50, default 10). primary_category: Optional arXiv category filter (e.g. cs.LG). auto_enrich: If True, fetch Semantic Scholar metrics (slower). summarize: If True, generate summaries after import (much slower). |
| research_query_libraryA | Search the local library for papers relevant to query using hybrid vector + metadata retrieval. Returns JSON with scored results including abstract snippets and citation counts. Args: query: Natural-language query. top_k: Number of results (default 5). min_citations: Filter out papers with fewer citations (0 = no filter). venue: Partial venue/conference name filter (e.g. "NeurIPS"). primary_category: arXiv category filter (e.g. cs.LG). rerank: Apply cross-encoder reranking (default True). |
| research_get_paper_detailsA | Get full metadata, citation metrics, summaries, and ideas for a paper in the local library. Args: arxiv_id: Normalized arXiv ID (e.g. 2106.00001). |
| research_remove_paperA | Remove a paper and all derived data (summaries, ideas, embeddings) from the local library. Args: arxiv_id: arXiv ID of the paper to remove. delete_files: Also delete cached files (default True). |
| research_generate_summaryA | Generate or retrieve a structured summary of a paper. Sections: problem_statement, methodology, findings, ablations, discussion, limitations, overall. Args: arxiv_id: arXiv ID of the paper. sections: Which sections to generate (default: all). force: Regenerate even if cached (default False). |
| research_generate_ideasA | Generate novel research ideas based on a paper's constraints and inductive biases. Each idea includes suggested search queries for novelty verification. Args: arxiv_id: Source paper's arXiv ID. num_ideas: Number of ideas (1–5, default 3). focus_area: theoretical, applied, methodological, or hybrid. |
| research_verify_noveltyA | Run a novelty re-verification on a previously generated idea. Checks the local library and arXiv for similar work, then uses the LLM to judge overlap. Returns a verdict: likely_novel, needs_review, or similar_exists. Args: idea_id: Database ID of the idea (from generate_ideas output). search_query: Optional override query for the arXiv check. |
| research_list_libraryA | List papers in the local library with pagination and optional filters. Args: limit: Page size (default 20). offset: Pagination offset (default 0). sort_by: Sort key — citation_count, published, or created_at. primary_category: Optional arXiv category filter (e.g. cs.LG). min_citations: Filter out papers with fewer citations (0 = no filter). venue: Partial venue/conference name filter (e.g. "NeurIPS"). |
| research_get_activity_logB | Return recent agent actions from the activity log for supervision. Args: limit: Number of entries (default 50). action_type: Optional filter — search, import, summarize, idea, novelty, query, remove, enrich. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 9 tools
Each tool targets a distinct action and resource: searching/importing vs. querying local library vs. retrieving details vs. removing vs. generating summaries vs. generating ideas vs. verifying novelty vs. listing papers vs. activity log. There is no overlap or ambiguity between them.
All tools follow a consistent pattern: `research_` prefix + imperative verb + optional noun (e.g., `research_search_papers`, `research_generate_summary`). All use snake_case with no mixed conventions, making the pattern predictable and readable.
With 9 tools, the server is well-scoped for an academic research assistant. Each tool provides essential functionality without overloading the interface, covering search, import, retrieval, generation, and verification. The count is within the ideal 3–15 range.
The tools cover the core lifecycle: importing, querying, retrieving details, removing, generating summaries/ideas, and verifying novelty. Minor gaps exist—for example, no tool to manually add a paper by ID or to directly edit metadata—but agents can work around these using existing tools.