PaperPilot
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| compile_latexA | Compile main.tex in project_dir with Tectonic. |
| render_pdf_pagesA | Render every page of pdf_path to a PNG, one file per page. |
| cleanup_rendered_pagesB | Remove the rendered page-image folder once it's no longer needed. |
| read_fileA | Read a text file at any local path on the machine this server runs on. For a client that has no local filesystem access of its own (e.g. a browser-based chat session reaching this server through a tunnel), this is how it reads research materials, main.tex, or anything else -- a client with its own file tools (Claude Code) can use those instead, but this must work the same way for clients that can't. |
| write_fileB | Write (creating or overwriting) a text file at any local path. |
| list_directoryA | List every file under a directory, recursively, as absolute paths. Used to discover what's actually in a research folder without already knowing the file names -- directories themselves are not included, only files. |
| read_imageA | Read an image file (a figure, or a rendered PDF page) so the calling client can actually see it, not just receive a path string. |
| copy_fileA | Copy a file byte-for-byte -- for binary files (figures, PDFs) that read_file/write_file can't safely round-trip since they decode as UTF-8 text. Use this to bring a figure from research_folder into project_dir so the paper references it with a relative path, not an absolute path pointing outside the project -- a real gap found in practice: without this, a paper compiled fine but only by \includegraphics-ing a figure from its original external location, which isn't a self-contained submission package. |
| list_templatesA | Return metadata for every template in the library (seed + user-added). |
| get_template_filesB | Return {filename: content} for the files that belong in a new paper project. |
| add_template_to_libraryA | Add a new template to the user's library (never writes into the bundled seed dir). |
| write_resourceC | Write a piece of pipeline handoff state (e.g. a screening report) for a project. |
| read_resourceB | Read a previously written piece of pipeline handoff state. |
| write_project_fileA | Create or fully overwrite a plain, user-visible file at the project root. |
| append_project_fileB | Append to a plain, user-visible file at the project root, creating it if missing. |
| read_project_fileB | Read a plain, user-visible file previously written at the project root. |
| screening_promptD | Stage 0 instructions: pre-flight screening of a research folder. |
| venue_resolution_promptD | Stage 1 instructions: paper type/venue capture and template resolution. |
| structure_drafting_promptD | Stage 2 instructions: draft the paper, then compile/inspect/fix until clean. |
| humanization_promptC | Stage 3 instructions: batched parallel paragraph rewrite + correction pass. |
| final_qa_promptC | Stage 4 instructions: whole-paper consistency/hallucination/venue-fit check. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| write_paper_prompt | Human-invoked entry point: kicks off the full 5-stage pipeline autonomously. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 21 tools
Several file-related tools overlap in purpose: read_file, read_project_file, and read_resource, as well as write_file, write_project_file, and write_resource, have similar semantics and only descriptive context separates them. The prompt and template tools are more clearly distinct.
Most tools use snake_case and many follow verb_noun (e.g., list_directory, read_file, write_resource), but several pipeline prompt tools are bare noun phrases (screening_prompt, venue_resolution_prompt, structure_drafting_prompt, humanization_prompt, final_qa_prompt), breaking the consistent action-oriented pattern.
With 21 tools, the surface falls in the 16-25 'heavy' range. The count is inflated by exposing each pipeline stage prompt as a separate tool rather than one parameterized prompt tool, though the tools are still coherent for the server's purpose.
The toolset covers file, template, rendering, and pipeline handoff operations well, but notable lifecycle operations are missing: no delete/removal for project files, templates, or resources, and template management is limited to listing, getting, and adding.