MCPInstall

gs-advanced-search

Perform advanced Google Scholar search with filters - author, journal, date range, exact phrase, title-only. Constructs proper URL parameters from natural language. Use for precise filtered searches.

Installs
231
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/cookjohn/gs-skills --skill gs-advanced-search
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads gs-advanced-search automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Google Scholar Advanced Search

Construct and execute a Google Scholar search using URL parameters based on the user's natural language description.

Arguments

$ARGUMENTS is a natural language description of the search criteria, e.g.:

  • "Search for Einstein's papers on relativity after 2020"
  • "Find reviews about CRISPR in Nature"
  • "Search for exact phrase 'machine learning' in title only"

Step 1: Parse search criteria into URL parameters

Map the user's intent to Google Scholar URL parameters:

CriteriaParameterExample
Keywordsqq=gastric+cancer
Authoras_sauthorsas_sauthors="Albert Einstein"
Journal/Sourceas_publicationas_publication=Nature
Start yearas_yloas_ylo=2020
End yearas_yhias_yhi=2025
Exact phraseas_epqas_epq=machine+learning
Any of these words (OR)as_oqas_oq=immunotherapy+checkpoint
Exclude wordsas_eqas_eq=review
Search scopeas_occtas_occt=title (title only) / as_occt=any (anywhere)
Results per pagenumnum=10 (default) or num=20 (max)
Languagehlhl=en or hl=zh-CN

Construction examples:

  • "Einstein 2020 年以后在 Nature 上的论文" → scholar?as_sauthors=Einstein&as_publication=Nature&as_ylo=2020&hl=en
  • "标题包含 CRISPR 的论文" → scholar?q=CRISPR&as_occt=title&hl=en
  • "精确搜索 'deep learning' 排除 review" → scholar?as_epq=deep+learning&as_eq=review&hl=en
  • "搜索 immunotherapy 或 checkpoint 相关论文" → scholar?as_oq=immunotherapy+checkpoint&hl=en

Notes:

  • When as_sauthors, as_publication, etc. are used, q can be omitted or used for additional keywords
  • Always include hl=en for consistent results
  • Use num=10 (default) to minimize CAPTCHA risk

Step 2: Navigate

Use mcp__chrome-devtools__navigate_page:

  • url: https://scholar.google.com/scholar?{CONSTRUCTED_PARAMS}

Step 3: Extract results (evaluate_script)

Same extraction script as gs-search step 2:

async () => {
  for (let i = 0; i < 20; i++) {
    if (document.querySelector('#gs_res_ccl') || document.querySelector('#gs_captcha_ccl')) break;
    await new Promise(r => setTimeout(r, 500));
  }

  if (document.querySelector('#gs_captcha_ccl') || document.body.innerText.includes('unusual traffic')) {
    return { error: 'captcha', message: 'Google Scholar requires CAPTCHA verification. Please complete it in your browser, then tell me to continue.' };
  }

  const items = document.querySelectorAll('#gs_res_ccl .gs_r.gs_or.gs_scl');
  const results = Array.from(items).map((item, i) => {
    const titleEl = item.querySelector('.gs_rt a');
    const meta = item.querySelector('.gs_a')?.textContent || '';
    const parts = meta.split(' - ');
    const authors = parts[0]?.trim() || '';
    const journalYear = parts[1]?.trim() || '';
    const citedByEl = item.querySelector('.gs_fl a[href*="cites"]');

    return {
      n: i + 1,
      title: titleEl?.textContent?.trim() || item.querySelector('.gs_rt')?.textContent?.trim() || '',
      href: titleEl?.href || '',
      authors,
      journalYear,
      citedBy: citedByEl?.textContent?.match(/\d+/)?.[0] || '0',
      citedByUrl: citedByEl?.href || '',
      dataCid: item.getAttribute('data-cid') || '',
      fullTextUrl: (item.querySelector('.gs_ggs a') || item.querySelector('.gs_or_ggsm a'))?.href || '',
      snippet: item.querySelector('.gs_rs')?.textContent?.trim()?.substring(0, 200) || ''
    };
  });

  const totalText = document.querySelector('#gs_ab_md')?.textContent?.trim() || '';
  const currentUrl = window.location.href;
  return { total: totalText, resultCount: results.length, currentUrl, results };
}

Step 4: Report

Advanced search on Google Scholar:
Query parameters: {list the parameters used}
{total}

1. {title}
   Authors: {authors} | {journalYear}
   Cited by: {citedBy} | [Full text]({fullTextUrl})
   Data-CID: {dataCid}

2. ...

Always show the constructed URL parameters so the user understands how the query was built.

Notes

  • This skill uses 2 tool calls: navigate_page + evaluate_script
  • Google Scholar does NOT support publication type filtering (review, clinical trial, etc.) — use keywords instead
  • Impact factor is not available in Google Scholar — use citation count as a proxy
  • The key difference from gs-search is URL parameter construction — this skill translates natural language to Google Scholar query parameters

FAQ

What does the gs-advanced-search skill do?

Perform advanced Google Scholar search with filters - author, journal, date range, exact phrase, title-only. Constructs proper URL parameters from natural language. Use for precise filtered searches.

How do I install gs-advanced-search?

Run npx skills add https://github.com/cookjohn/gs-skills --skill gs-advanced-search in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/gs-advanced-search/ (personal) or .claude/skills/gs-advanced-search/ (project).

Which AI agents can use gs-advanced-search?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is gs-advanced-search safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains gs-advanced-search?

It is published by cookjohn in cookjohn/gs-skills. It has 231 recorded installs.

More from cookjohn/gs-skills

View all →

gs-search

cookjohn/gs-skills

Search Google Scholar for academic papers by keywords. Returns results with title, authors, journal, year, citation count, and full-text links. Use when the user wants to search Google Scholar.

gs-fulltext

cookjohn/gs-skills

Get full-text access links for a Google Scholar paper - PDF, DOI, Sci-Hub, and publisher links. Use when user wants to read or download a paper's full text.

gs-cited-by

cookjohn/gs-skills

Find papers that cite a given Google Scholar paper. Tracks citation chains using data-cid (cluster ID). Use when user wants to see who cited a specific paper.

gs-export

cookjohn/gs-skills

Export Google Scholar paper(s) to Zotero via BibTeX. Gets citation data from Google Scholar's cite dialog, then pushes to Zotero desktop. Supports single or batch export.

gs-navigate-pages

cookjohn/gs-skills

Navigate Google Scholar search result pages. Use when user wants to see more results or go to a specific page.

159 installs

Popular other skills

View category →

hyperframes-cli

heygen-com/hyperframes

The HyperFrames CLI by job - scaffold, check, look at frames, edit the timeline, preview, render locally or in the cloud, publish, project history - plus reading its JSON and recovering from build or render failures.

1.3M installs

triage

mattpocock/skills

Move issues and external PRs through a state machine of triage roles, categorise, verify, grill if needed, and write agent-ready briefs.

1M installs

ask-matt

mattpocock/skills

Ask which skill or flow fits your situation. A router over the skills in this repo.

778.4K installs

to-questionnaire

mattpocock/skills

Turn a decision you can't fully answer into a questionnaire for someone else to fill in.

508.9K installs

wait-what

mattpocock/skills

Stop. That last message did not land: re-pitch it.

459.7K installs

loop-me

mattpocock/skills

Grill me about specs for the workflows I want to build, within this workspace.

447.9K installs