Skip to content

Add arxiv research skill#52

Open
Ashish-Soni08 wants to merge 3 commits intozocomputer:mainfrom
Ashish-Soni08:add-arxiv-research-skill
Open

Add arxiv research skill#52
Ashish-Soni08 wants to merge 3 commits intozocomputer:mainfrom
Ashish-Soni08:add-arxiv-research-skill

Conversation

@Ashish-Soni08
Copy link
Copy Markdown

ArXiv paper research tools for Zo Computer.

Implements the same functionality as arxiv-mcp-server — but as a native Zo skill instead of an MCP server. Both tools use arXiv's public API (export.arxiv.org).

Why a native skill?

  • MCP servers require running a separate Python process with JSON-RPC communication overhead
  • Zo skills run natively with Bun/TypeScript — no extra processes, no protocol translation
  • Same storage path (~/.arxiv-mcp-server/papers/), same results, zero additional setup

Features

  • search_papers: Search arXiv with date/category filters
  • download_paper: Download papers by ID
  • convert_paper: PDF → Markdown with page markers for citations
  • list_papers: List downloaded papers with [MD] indicator
  • read_paper: Auto-detects format (markdown if available, else text)
  • deep-paper-analysis: One-command analysis workflow

Usage

bun arxiv.ts search "transformer architecture" --max 5
bun arxiv.ts download 2401.12345
bun arxiv.ts convert 2401.12345  # Creates markdown
bun arxiv.ts read 2401.12345     # Reads markdown if converted

@skeletor-js
Copy link
Copy Markdown
Collaborator

This is fairly close. I would suggest a cleanup pass before merge.

  • Reconsider the hidden local storage default under ~/.arxiv-mcp-server.
  • Clean up the inline Python fallback flow for PDF extraction and conversion.

After that, this looks much closer to mergeable.

- Change storage from ~/.arxiv-mcp-server/papers/ to /home/workspace/Research/arxiv-papers
- Extract inline Python into standalone scripts (extract_text.py, convert_to_markdown.py)
- Simplify CLI: remove --format/--pages flags, streamline MCP functions
- Fix variable shadowing (exists -> paperExists) and console.exit bug
- Add Markdown conversion step to deep-paper-analysis workflow
@Ashish-Soni08
Copy link
Copy Markdown
Author

@skeletor-js Thanks for the feedback! I've gone ahead and made the suggested cleanup passes:

Storage Path: Changed the local storage default from ~/.arxiv-mcp-server/papers/ to a more appropriate /home/workspace/Research/arxiv-papers.
Inline Python Removed: Extracted the inline Python fallback flows into clean, standalone scripts (extract_text.py and convert_to_markdown.py).
Let me know if this looks good to merge now or if there is any other feedback!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants