Back to the catalog

scholar-sidekick

Resolve scholarly IDs (DOI incl. shortDOI aliases, PMID, ISBN, arXiv…) into citations (10,000+ styles) and bibliography exports, and check r

Open source Open in the app JSON README (API)

About

Resolve scholarly IDs (DOI incl. shortDOI aliases, PMID, ISBN, arXiv…) into citations (10,000+ styles) and bibliography exports, and check retraction, open-access, and citation-fabrication status — via Scholar Sidekick.

Details

Kind
Plugins
Topic
Government & public data
Publisher
mlava
Origin
gemini
Category
ferramentas
Version
0.1.1
Last push
2026-09-02T00:15:14Z
Repository state
ativo
License
MIT
Added
2026-08-30 14:13:39
Updated
2026-09-02 05:01:17
Origin id
mlava/scholar-sidekick-gemini

README

# Scholar Sidekick — Gemini CLI extension / Antigravity plugin

Resolve scholarly identifiers and check citations from inside [Gemini CLI](https://geminicli.com)
(and, after migration, the Antigravity CLI). Scholar Sidekick turns a DOI (including shortDOI aliases like
`10/aabbe`), PMID, PMCID, ISBN, arXiv id, ISSN, NASA ADS bibcode, or WHO IRIS URL into
**formatted citations** (10,000+ CSL styles) and
**bibliography exports** (BibTeX, RIS, CSL-JSON, EndNote, RefWorks, MEDLINE, Zotero RDF, CSV, text),
and checks **retraction status**, **open-access status**, and **citation fabrication**.

This extension is a thin wrapper around the existing
[`scholar-sidekick-mcp`](https://www.npmjs.com/package/scholar-sidekick-mcp) server and the
[`scholar-sidekick-cli`](https://www.npmjs.com/package/scholar-sidekick-cli) — both published to npm
and fetched on demand via `npx`. There is nothing to build.

It gives Gemini two ways to use Scholar Sidekick:

- **MCP tools** the agent can call autonomously: `resolveIdentifier`, `formatCitation`,
  `exportCitation`, `checkRetraction`, `checkOpenAccess`, `verifyCitation`, `auditBibliography`.
- **Slash commands** you invoke directly: `/scholar:format`, `:resolve`, `:export`, `:verify`,
  `:audit`, `:retraction`, `:oa`.

> **No API key required.** Everything works on the anonymous, rate-limited free tier.

## Requirements

- [Gemini CLI](https://geminicli.com) installed.
- Node.js ≥ 20 (for the `npx`-launched MCP server and CLI).
- No API key. An optional free `ssk_` key raises rate limits and enables the verifier's LLM screen.

## Install

```bash
gemini extensions install https://github.com/mlava/scholar-sidekick-gemini
```

Local development (symlink instead of clone):

```bash
gemini extensions link /path/to/scholar-sidekick-gemini
```

Manage it with the usual commands:

```bash
gemini extensions list
gemini extensions disable scholar-sidekick
gemini extensions uninstall scholar-sidekick
```

## Configure the (optional) API key

```bash
gemini extensions config scholar-sidekick
```

This stores `SCHOLAR_API_KEY` securely (system keychain) and passes it to the MCP server. It is
**optional** — the extension works without it. A free `ssk_` key from
<https://scholar-sidekick.com/account> raises rate limits and unlocks the verifier's Stage-3 LLM
screen. `SCHOLAR_SIDEKICK_URL` overrides the API base URL (defaults to
`https://scholar-sidekick.com`); `RAPIDAPI_KEY` routes via the RapidAPI gateway for paid tiers.

> The slash commands shell out to the `scholar` CLI, which reads `SCHOLAR_API_KEY` from the
> environment. If `gemini extensions config` does not propagate the key into shell-command execution
> in your version, also `export SCHOLAR_API_KEY=ssk_...` in your shell. None of the commands need a
> key to run.

## Usage

### Slash commands

```text
/scholar:format 10.1056/NEJMoa2033700
/scholar:format 10.1056/NEJMoa2033700 --style apa
/scholar:resolve 10.1056/NEJMoa2033700 38000000
/scholar:export 10.1056/NEJMoa2033700 --format bib
/scholar:verify --title "Some claimed title" --doi 10.1056/NEJMoa2033700
/scholar:audit refs.bib
/scholar:retraction 10.1056/NEJMoa2033700
/scholar:oa 10.1056/NEJMoa2033700
```

Each command runs the corresponding `scholar` CLI subcommand and asks Gemini to summarize the JSON
output. Gemini will prompt for confirmation before running the shell command.

### Let the agent do it

Because the MCP server is registered, you can also just ask in natural language:

```text
Format this DOI in APA: 10.1056/NEJMoa2033700
Is this citation real? "Invented title", doi 10.1056/NEJMoa2033700
Has 10.1016/j.cell.2020.01.001 been retracted, and is it open access?
```

Gemini will call the appropriate tool (`formatCitation`, `verifyCitation`, `checkRetraction`,
`checkOpenAccess`, …) itself.

## Antigravity CLI

Gemini CLI is being replaced by the [Antigravity CLI](https://antigravity.google) (`agy`) for
individual-tier users. Import this extension as a native Antigravity plugin with:

```bash
agy plugin import gemini
```

This works cleanly here because the extension stays within the portable subset:

- The MCP server is **local stdio** (`command`/`args`), which carries over unchanged — the
  `url` → `serverUrl` rename only affects *remote* HTTP MCP servers, and this extension has none.
- `commands/*.toml` are collapsed into Antigravity **skills** automatically during import.
- `GEMINI.md` keeps working as the context file.
- No custom themes or Node-only API dependencies (the only things that don't migrate).

### Using it in Antigravity (after import)

Invocation differs from Gemini CLI — this is expected:

- There is **no `/scholar:format` slash command** in `agy`. The commands become **skills** (named
  `format`, `resolve`, `export`, `verify`, `audit`, `retraction`, `oa` under
  `~/.gemini/config/plugins/scholar-sidekick/skills/`) that the agent invokes, and the **MCP tools**
  are called by the agent directly. Just ask in natural language, e.g. *"use scholar-sidekick to
  format 10.1056/NEJMoa2033700 in APA"*.
- **No key needed, so nothing to configure.** The imported
  `~/.gemini/config/plugins/scholar-sidekick/mcp_config.json` has `env: null`, which is fine. To
  raise limits, add `"env": { "SCHOLAR_API_KEY": "ssk_…" }` there for the MCP tools, and/or
  `export SCHOLAR_API_KEY=ssk_…` in your shell for the skill shell-outs.

## Hosted HTTP MCP (alternative)

If you'd rather not run the server locally via `npx`, Scholar Sidekick also exposes a hosted
Streamable-HTTP MCP endpoint with the same seven tools at `https://scholar-sidekick.com/api/mcp`. This
extension uses the local `npx` stdio form because it migrates to Antigravity without a `serverUrl`
rename.

## What's in here

```
gemini-extension.json     # manifest: MCP server + settings + contextFileName
GEMINI.md                 # context auto-loaded into the model
commands/scholar/         # /scholar:format|resolve|export|verify|audit|retraction|oa (shell out to the CLI)
```

## Links

- Scholar Sidekick: <https://scholar-sidekick.com>
- MCP server: <https://www.npmjs.com/package/scholar-sidekick-mcp>
- CLI: <https://www.npmjs.com/package/scholar-sidekick-cli>

## License

MIT © Scholar Sidekick

More