PluginBench
Skill
Fail
Audit score 45

arxiv-search

yorkeccak/scientific-skills

Search arXiv preprints with natural language queries powered by semantic search.

What is arxiv-search?

Search the complete arXiv database of physics, mathematics, computer science, and quantitative biology preprints using natural language queries. Uses Valyu's semantic search API to understand query meaning rather than just keywords, returning full article text and figures.

  • Search arXiv preprints across physics, mathematics, computer science, and quantitative biology using natural language
  • Semantic search that understands query meaning, not just keyword matching
  • Return full article content and figures, not just abstracts
  • Retrieve relevance scores for result ranking
  • Process results with jq for filtering titles, URLs, or content

How to install arxiv-search

npx skills add https://github.com/yorkeccak/scientific-skills --skill arxiv-search
Prerequisites
  • Node.js 18 or later
  • Valyu API key (free $10 credits available at https://platform.valyu.ai)
Claude Code
Cursor
Windsurf
Cline

How to use arxiv-search

  1. 1.Install the skill using: npx skills add https://github.com/yorkeccak/scientific-skills --skill arxiv-search
  2. 2.Locate the search script: ARXIV_SCRIPT=$(find ~/.claude/plugins/cache -name "search" -path "*/arxiv-search/*/scripts/*" -type f 2>/dev/null | head -1)
  3. 3.If prompted for setup, run: $ARXIV_SCRIPT setup <your-valyu-api-key>
  4. 4.Execute searches with: $ARXIV_SCRIPT "your query" <number-of-results>
  5. 5.Parse results with jq: $ARXIV_SCRIPT "query" 10 | jq -r '.results[].title'

Use cases

Good for
  • Finding recent machine learning and large language model architecture papers
  • Searching quantum physics and topological computation research
  • Discovering mathematics papers on representation theory and Lie algebras
  • Locating distributed systems and consensus algorithm papers
  • Prior art searching and tracking emerging research trends
Who it's for
  • Researchers and academics
  • AI/ML engineers tracking latest developments
  • Physics and mathematics researchers
  • Computer science theorists
  • Anyone conducting literature reviews

arxiv-search FAQ

What is Valyu and why is it needed?

Valyu is a semantic search API that powers the arXiv search. It understands the meaning of your queries rather than just matching keywords. You need a Valyu API key (free $10 credits) from https://platform.valyu.ai to use this skill.

How do I set up my API key?

When you run your first search, if setup is required, the skill will ask for your Valyu API key. Run: scripts/search setup <api-key>, then retry your original search.

What fields are returned in search results?

Each result includes: title, URL, full article content, relevance score, source (arxiv), and image links to figures from the paper.

Can I integrate this into my own application?

Yes. The skill documentation includes Python and TypeScript integration examples using the Valyu SDK for direct API calls without external dependencies.

What happens if my search returns no results?

The skill returns a JSON response with success: true but an empty results array. Try rephrasing your query with different keywords or broader terms.

Full instructions (SKILL.md)

Source of truth, from yorkeccak/scientific-skills.


name: arxiv-search description: Search arXiv physics, math, and computer science preprints using natural language queries. Powered by Valyu semantic search. keywords:

  • arxiv
  • preprints
  • physics
  • mathematics
  • computer-science
  • ai-research
  • semantic-search license: MIT

arXiv Search

Search the complete arXiv database of preprints across physics, mathematics, computer science, and quantitative biology using natural language queries powered by Valyu's semantic search API.

Why This Skill is Powerful

  • No API Parameter Parsing: Just pass natural language queries directly - no need to construct complex search parameters
  • Semantic Search: Understands the meaning of your query, not just keyword matching
  • Full-Text Access: Returns complete article content, not just abstracts
  • Image Links: Includes figures and images from papers
  • Comprehensive Coverage: Access to all of arXiv's preprint archive across multiple disciplines

Requirements

  1. Node.js 18+ (uses built-in fetch)
  2. Valyu API key from https://platform.valyu.ai ($10 free credits)

CRITICAL: Script Path Resolution

The scripts/search commands in this documentation are relative to this skill's installation directory.

Before running any command, locate the script using:

ARXIV_SCRIPT=$(find ~/.claude/plugins/cache -name "search" -path "*/arxiv-search/*/scripts/*" -type f 2>/dev/null | head -1)

Then use the full path for all commands:

$ARXIV_SCRIPT "quantum entanglement" 15

API Key Setup Flow

When you run a search and receive "setup_required": true, follow this flow:

  1. Ask the user for their API key: "To search arXiv, I need your Valyu API key. Get one free ($10 credits) at https://platform.valyu.ai"

  2. Once the user provides the key, run:

    scripts/search setup <api-key>
    
  3. Retry the original search.

Example Flow:

User: Search arXiv for transformer architecture papers
→ Response: {"success": false, "setup_required": true, ...}
→ Claude asks: "Please provide your Valyu API key from https://platform.valyu.ai"
→ User: "val_abc123..."
→ Claude runs: scripts/search setup val_abc123...
→ Response: {"success": true, "type": "setup", ...}
→ Claude retries: scripts/search "transformer architecture papers" 10
→ Success!

When to Use This Skill

  • Searching preprints across physics, mathematics, and computer science
  • Finding research before peer review publication
  • Cross-disciplinary research combining fields
  • Staying current with rapid developments in AI and theoretical physics
  • Prior art searching for new ideas
  • Tracking emerging research trends

Output Format

{
  "success": true,
  "type": "arxiv_search",
  "query": "quantum entanglement",
  "result_count": 10,
  "results": [
    {
      "title": "Article Title",
      "url": "https://arxiv.org/abs/...",
      "content": "Full article text with figures...",
      "source": "arxiv",
      "relevance_score": 0.95,
      "images": ["https://example.com/figure1.jpg"]
    }
  ],
  "cost": 0.025
}

Processing Results

With jq

# Get article titles
scripts/search "query" 10 | jq -r '.results[].title'

# Get URLs
scripts/search "query" 10 | jq -r '.results[].url'

# Extract full content
scripts/search "query" 10 | jq -r '.results[].content'

Common Use Cases

AI/ML Research

# Find recent machine learning papers
scripts/search "large language model architectures" 50

Physics Research

# Search for quantum physics papers
scripts/search "topological quantum computation" 20

Mathematics

# Find math papers
scripts/search "representation theory and Lie algebras" 15

Computer Science

# Search for CS theory papers
scripts/search "distributed systems consensus algorithms" 25

Error Handling

All commands return JSON with success field:

{
  "success": false,
  "error": "Error message"
}

Exit codes:

  • 0 - Success
  • 1 - Error (check JSON for details)

API Endpoint

  • Base URL: https://api.valyu.ai/v1
  • Endpoint: /search
  • Authentication: X-API-Key header

Architecture

scripts/
├── search          # Bash wrapper
└── search.mjs      # Node.js CLI

Direct API calls using Node.js built-in fetch(), zero external dependencies.

Adding to Your Project

If you're building an AI project and want to integrate arXiv Search directly into your application, use the Valyu SDK:

Python Integration

from valyu import Valyu

client = Valyu(api_key="your-api-key")

response = client.search(
    query="your search query here",
    included_sources=["valyu/valyu-arxiv"],
    max_results=20
)

for result in response["results"]:
    print(f"Title: {result['title']}")
    print(f"URL: {result['url']}")
    print(f"Content: {result['content'][:500]}...")

TypeScript Integration

import { Valyu } from "valyu-js";

const client = new Valyu("your-api-key");

const response = await client.search({
  query: "your search query here",
  includedSources: ["valyu/valyu-arxiv"],
  maxResults: 20
});

response.results.forEach((result) => {
  console.log(`Title: ${result.title}`);
  console.log(`URL: ${result.url}`);
  console.log(`Content: ${result.content.substring(0, 500)}...`);
});

See the Valyu docs for full integration examples and SDK reference.