Skip to main content
Glama
paper-search

paper-search

by ChenchaoZhao

citekick

CI PyPI version Python License

Agentic tools for academic paper search — a CLI and MCP server that query multiple literature sources in one shot.


Why citekick?

Finding papers usually means juggling separate APIs, rate limits, and response formats for every source. citekick unifies them behind a single interface:

  • Multi-source search — Query 8 sources in parallel: Semantic Scholar, arXiv, PubMed, Crossref, Europe PMC, OpenReview, DBLP, and OpenAlex.

  • CLI + MCP — Use it directly from your terminal (citekick) or expose it to AI agents as an MCP server (citekick-mcp).

  • Agent-friendly output — JSON or Markdown results, ready to be consumed by humans or LLMs.

  • Response caching — Built-in HTTP cache to stay polite with APIs and speed up repeated queries.

  • Configurable defaults — API keys, preferred sources, year ranges, and output format persisted in one TOML file.


Related MCP server: mcp-openalex

Installation

Install the citekick CLI and MCP server globally using uv:

# Install with uv (recommended)
uv tool install citekick

# Or with pip
pip install citekick

CLI Usage

1. citekick search

Search academic literature across multiple sources.

citekick search "attention is all you need"                    # Search all default sources
citekick search "diffusion models" --sources arxiv,openalex    # Restrict to specific sources
citekick search "protein folding" --year-from 2023 --format markdown
citekick search "llm agents" --max-results 20 --no-cache

Tip: the search subcommand is optional — citekick "query" works too.

2. citekick config

Configure API keys and default search settings in ~/.config/citekick/config.toml.

citekick config                                    # Create an empty config file
citekick config --mailto you@example.com           # Set contact email (polite-pool access)
citekick config --openalex-api-key KEY --sources arxiv,pubmed

Credentials and optional contact email are read from ~/.config/citekick/config.toml. The [api] values are all optional; missing or empty values leave the corresponding source keyless.


Agent Integration

To use citekick as an MCP server, add this to your agent's MCP config:

{
  "mcpServers": {
    "citekick": {
      "command": "citekick-mcp"
    }
  }
}

Or using uvx (without prior installation):

{
  "mcpServers": {
    "citekick": {
      "command": "uvx",
      "args": ["--from", "citekick", "citekick-mcp"]
    }
  }
}

Development

# Install hatch
uv tool install hatch

# Run full release check (linting, static typing with mypy, and test suite with coverage)
hatch run release

License

MIT

Available Tools

1 tool
search_papersA

Search academic literature across multiple sources, returning deduplicated and ranked results as JSON.

Args: query: Free-text search query, e.g. "Hamiltonian Monte Carlo protein design". sources: Comma-separated source names: semantic-scholar, arxiv, pubmed, crossref, europepmc, openreview, dblp, openalex. Defaults to all keyless free sources. max_results_per_source: Maximum number of results fetched per source. year_from: Only include papers published in or after this year. year_to: Only include papers published in or before this year.

Inputs: query (required), sources, year_to, year_from, +1 more. Returns: result

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.2/5.0

    Scored across 1 tool

    Disambiguation5/5

    Only one tool exists, so there is no possibility of confusion or overlap with other tools. The tool's purpose is clearly defined as searching academic literature.

    Naming Consistency4/5

    With a single tool, naming consistency is trivially maintained. The name 'search_papers' follows a clear verb_noun pattern, which is a good convention.

    Tool Count2/5

    A single tool for a paper search server is extremely thin. While the tool is comprehensive in its search capabilities, the server lacks any other functionality such as fetching paper details, managing libraries, or retrieving citations, making the count feel insufficient for a full-featured server.

    Completeness2/5

    The server only provides search functionality, which is a core feature but leaves obvious gaps. For a paper search server, one would expect at least a tool to fetch details of a specific paper, and possibly tools for saving or managing papers. The current surface is incomplete for a comprehensive academic literature tool.

    Maintenance

    ActivityInactive
    ResponsivenessOutdated data

    Related MCP Connectors

    • Academic research MCP server for paper search, citation checks, graphs, and deep research.

      https://doxa.papersflow.ai/mcp
    • Rivul is a free, read-only remote MCP server for searching scholarly literature. It runs semantic search over more than 300 million paper records from a dated OpenAlex snapshot, so an agent can find papers by meaning rather than exact keywords, then open the full record for any result. Tools: - search_papers: semantic search with optional filters for publication year range, minimum citation count, open access only, topic and field. Sort by relevance, most cited, newest or oldest. - get_paper_details: the full record for one work by its OpenAlex ID: title, every author, venue, work type, topic, field, publication date, citation count, DOI and open-access links. - usage_status: the workspace's MCP usage for the current day. Results come only from the index, never from a model. Each result carries a stable OpenAlex ID so the source can be checked, and every response states the snapshot date. Useful for literature reviews, scoping reviews, finding highly cited or open-access papers on a topic, citation chasing, and checking that a cited paper exists. Free for every account, with no plans or payment. Sign in with Google through OAuth 2.1 (PKCE, dynamic client registration), or use an MCP key from rivul.ai. Endpoint: https://rivul.ai/mcp (Streamable HTTP). Setup and docs: https://rivul.ai/features/atlas

      https://rivul.ai/mcp
    • Web search API and MCP server for developers building AI agents.

      https://searchpipe.tech/mcp/
    • Public MCP server for the LLM Search Engine

      https://llmse.ai/mcp

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      MCP server for the OpenAlex scholarly database, providing AI agents with tools to search and retrieve academic works, authors, and institutions via natural language queries.
      8
      MIT