skills/43-wentorai-research-plugins/skills/literature/metadata/plumx-metrics-api/SKILL.md
Track research impact beyond citations via PlumX altmetrics API
npx skillsauth add brycewang-stanford/Awesome-Agent-Skills-for-Empirical-Research plumx-metrics-apiInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
PlumX (by Elsevier/Plum Analytics) tracks 5 categories of research impact metrics beyond traditional citations: Usage, Captures, Mentions, Social Media, and Citations. It covers 130M+ research artifacts including articles, datasets, presentations, and videos. Available via Elsevier's API infrastructure. Requires an Elsevier API key.
| Category | What it measures | Examples | |----------|-----------------|---------| | Usage | Reading/viewing | Abstract views, PDF downloads, HTML views | | Captures | Saving for later | Mendeley readers, CiteULike bookmarks | | Mentions | Commentary | Blog posts, news articles, Wikipedia refs | | Social Media | Sharing/discussion | Tweets, Facebook shares, Reddit posts | | Citations | Formal references | Scopus, CrossRef, PubMed citations |
https://api.elsevier.com/analytics/plumx/
curl -H "X-ELS-APIKey: $ELSEVIER_API_KEY" \
"https://api.elsevier.com/analytics/plumx/doi/10.1038/nature14539"
# By PubMed ID
curl -H "X-ELS-APIKey: $ELSEVIER_API_KEY" \
"https://api.elsevier.com/analytics/plumx/pmid/25428114"
# By ISBN
curl -H "X-ELS-APIKey: $ELSEVIER_API_KEY" \
"https://api.elsevier.com/analytics/plumx/isbn/9780262035613"
# By Scopus ID
curl -H "X-ELS-APIKey: $ELSEVIER_API_KEY" \
"https://api.elsevier.com/analytics/plumx/scopusId/84920765826"
{
"count_categories": [
{
"name": "capture",
"total": 15432,
"count_types": [
{"name": "READER_COUNT", "total": 15432, "sources": [
{"name": "Mendeley", "total": 15432}
]}
]
},
{
"name": "socialMedia",
"total": 3250,
"count_types": [
{"name": "TWEET_COUNT", "total": 2800},
{"name": "FACEBOOK_COUNT", "total": 450}
]
},
{
"name": "citation",
"total": 2100,
"count_types": [
{"name": "Scopus", "total": 1800},
{"name": "CrossRef", "total": 2100}
]
},
{
"name": "usage",
"total": 45000,
"count_types": [
{"name": "ABSTRACT_VIEWS", "total": 30000},
{"name": "LINK_OUTS", "total": 15000}
]
},
{
"name": "mention",
"total": 85,
"count_types": [
{"name": "NEWS_COUNT", "total": 45},
{"name": "BLOG_COUNT", "total": 25},
{"name": "WIKIPEDIA_COUNT", "total": 15}
]
}
]
}
import os
import requests
API_KEY = os.environ["ELSEVIER_API_KEY"]
BASE_URL = "https://api.elsevier.com/analytics/plumx"
HEADERS = {"X-ELS-APIKey": API_KEY, "Accept": "application/json"}
def get_plumx_metrics(doi: str) -> dict:
"""Get PlumX metrics for a paper by DOI."""
resp = requests.get(
f"{BASE_URL}/doi/{doi}",
headers=HEADERS,
)
resp.raise_for_status()
data = resp.json()
metrics = {}
for cat in data.get("count_categories", []):
category_name = cat["name"]
metrics[category_name] = {
"total": cat["total"],
"breakdown": {},
}
for ct in cat.get("count_types", []):
metrics[category_name]["breakdown"][ct["name"]] = ct["total"]
return metrics
def compare_impact(dois: list) -> list:
"""Compare PlumX metrics across multiple papers."""
results = []
for doi in dois:
metrics = get_plumx_metrics(doi)
results.append({
"doi": doi,
"citations": metrics.get("citation", {}).get("total", 0),
"captures": metrics.get("capture", {}).get("total", 0),
"social": metrics.get("socialMedia", {}).get("total", 0),
"usage": metrics.get("usage", {}).get("total", 0),
"mentions": metrics.get("mention", {}).get("total", 0),
})
return results
# Example: analyze a paper's multi-dimensional impact
metrics = get_plumx_metrics("10.1038/nature14539")
for category, data in metrics.items():
print(f"\n{category.upper()} (total: {data['total']})")
for metric_type, count in data["breakdown"].items():
print(f" {metric_type}: {count}")
# Example: compare two papers
# comparison = compare_impact([
# "10.1038/nature14539",
# "10.1126/science.aax2342",
# ])
| Feature | PlumX | Altmetric.com | Crossref Event Data | |---------|-------|---------------|---------------------| | Metric categories | 5 comprehensive | Attention Score | Events only | | Coverage | 130M+ artifacts | 30M+ outputs | DOI-based | | Social media | Twitter, Facebook, Reddit | Twitter, Reddit, News | Twitter, Reddit, Wikipedia | | Usage data | Yes (views, downloads) | No | No | | Capture data | Yes (Mendeley readers) | Mendeley readers | No | | Free access | Limited | Limited widget | Full API free |
tools
Autonomous multi-round research review loop using MiniMax API. Use when you want to use MiniMax instead of Codex MCP for external review. Trigger with "auto review loop minimax" or "minimax review".
tools
Autonomous research review loop using any OpenAI-compatible LLM API. Configure via llm-chat MCP server or environment variables. Trigger with "auto review loop llm" or "llm review".
tools
Autonomous multi-round research review loop using MiniMax API. Use when you want to use MiniMax instead of Codex MCP for external review. Trigger with "auto review loop minimax" or "minimax review".
tools
Autonomous research review loop using any OpenAI-compatible LLM API. Configure via llm-chat MCP server or environment variables. Trigger with "auto review loop llm" or "llm review".