
Gs Cited By
- 19 installs
- 45 repo stars
- Updated June 23, 2026
- yuanyuanma03/academic-research-skills
Finds papers that cite a given Google Scholar paper by tracking its cluster ID (data-cid).
About
Retrieves the papers citing a target paper using Google Scholar's cited-by cluster ID. A researcher uses it to trace citation chains for a specific paper.
- Tracks citations via data-cid cluster ID
- Resolves cid from a title if needed
Gs Cited By by the numbers
- 19 all-time installs (skills.sh)
- Ranked #1,308 of 2,715 Automation & Workflows skills by installs in the Skillselion catalog
- Data as of Aug 3, 2026 (Skillselion catalog sync)
npx skills add https://github.com/yuanyuanma03/academic-research-skills --skill gs-cited-byAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 19 |
|---|---|
| repo stars | ★ 45 |
| Last updated | June 23, 2026 |
| Repository | yuanyuanma03/academic-research-skills ↗ |
What it does
Finds papers that cite a given Google Scholar paper by tracking its cluster ID (data-cid).
Files
Google Scholar — Cited By (Citation Tracking)
Find all papers that cite a given paper. Uses Google Scholar's cites parameter with the paper's cluster ID (data-cid).
Arguments
$ARGUMENTS can be:
- A
data-cidfrom a previous search result (e.g.,TFS2GgoGiNUJ) - A paper title (will search first to find the data-cid)
Steps
Step 1: Resolve data-cid
If $ARGUMENTS is a data-cid (alphanumeric string, no spaces): use it directly.
If $ARGUMENTS is a title or description: first search to find the data-cid: 1. Use gs-search with the title as keywords 2. Match the target paper in results by title similarity 3. Extract its dataCid
Step 2: Navigate to "Cited by" page
Use mcp__chrome-devtools__navigate_page:
- url:
https://scholar.google.com/scholar?cites={DATA_CID}&hl=en&num=10
Replace {DATA_CID} with the resolved cluster ID.
Step 3: Extract citing papers (evaluate_script)
Same extraction script as gs-search:
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',
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
Papers citing [{original paper title}] (data-cid: {DATA_CID}):
{total}
1. {title}
Authors: {authors} | {journalYear}
Cited by: {citedBy}
Data-CID: {dataCid}
2. ...Follow-up
- See more citing papers: use
gs-navigate-pages(pagination works on cited-by pages too) - Export citing papers: use
gs-exportwith the data-cid(s) - Recursive citation tracking: use
gs-cited-byon any of the citing papers
Notes
- This skill uses 2-3 tool calls: optional search +
navigate_page+evaluate_script - The
citesparameter uses the cluster ID (data-cid), NOT a DOI or paper ID - Cited-by pages support the same pagination as regular search (
startparameter) - Citation count on Google Scholar is typically higher than PubMed because it includes non-PubMed sources (books, theses, preprints, etc.)