# PaperBanana

Creates publication-ready academic diagrams and statistical plots from text descriptions using a multi-agent workflow.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 2417
- Author: llmsresearch
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/llmsresearch/paperbanana
- Updated: 2026-09-17
- HTML: https://affpapa.org/en/nevibecode/mcp/paperbanana

## What it does

PaperBanana converts technical descriptions of algorithms and architectures into visual assets for research papers. It runs a two-phase agentic pipeline that generates diagrams and refines them across iterations. The server integrates with several model providers: Google Gemini, OpenAI, Azure OpenAI, and Atlas Cloud.

The framework handles batch tasks using YAML or JSON manifests and can render statistical charts straight from CSV tables. It also ingests methodology sections from PDF files with page-level selection powered by PyMuPDF.

Generating figures requires an active API key from Google Gemini, OpenAI, or Atlas Cloud. Local execution also depends on Python 3.10 or newer.

## Requirements
- Needs: Python and uv (commands run via uvx)

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add paperbanana -- uvx paperbanana
```
uvx runs the command named after the package; if the README names another one, use uvx --from paperbanana <command>

### Codex

**Platform CLI**
```bash
codex mcp add paperbanana -- uvx paperbanana
```
uvx runs the command named after the package; if the README names another one, use uvx --from paperbanana <command>

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "paperbanana": {
            "command": "uvx",
            "args": [
                "paperbanana"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from paperbanana <command>

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "paperbanana": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "paperbanana"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from paperbanana <command>

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add paperbanana uvx paperbanana
```
uvx runs the command named after the package; if the README names another one, use uvx --from paperbanana <command>

## When to use it
- generate academic system diagrams from methodology descriptions
- render batches of statistical figures from CSV data and JSON manifests
- extract paper context from specific PDF pages to guide diagrams
- refine generated illustrations iteratively with agentic feedback

## Example prompts
- Generate an architecture diagram based on the description in `method.txt`.
- Create statistical plots from the manifest `manifest.yaml` using input CSVs.
- Evaluate and refine the generated figure according to review notes.

## Similar
- [scientific-schematics](https://affpapa.org/en/nevibecode/skills/scientific-schematics.md) — skill · 2200 installs
- [netlify-ai-gateway](https://affpapa.org/en/nevibecode/skills/netlify-ai-gateway.md) — skill · 3000 installs
- [generate-image](https://affpapa.org/en/nevibecode/skills/generate-image.md) — skill · 93 installs
- [skill-image-gen](https://affpapa.org/en/nevibecode/plugins/skill-image-gen.md) — plugin · ★ 40418
- [mathmodel-figure-templates](https://affpapa.org/en/nevibecode/skills/mathmodel-figure-templates.md) — skill · 1700 installs
- [academic-plotting](https://affpapa.org/en/nevibecode/skills/academic-plotting.md) — skill · 1200 installs

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
