endnote-mcp — Claude Code MCP server: what it does, how to install
Gives your agent an EndNote library it can query: record lookup, page-level PDF reading, citations and bibliographies. The index stays on your disk.
claude mcp add endnote-mcp -- uvx endnote-mcpWhat endnote-mcp does
Twelve tools sit in front of an EndNote library. The agent can look records up by keyword, pull a range of pages out of a paper's PDF, get one citation formatted, assemble a bibliography from a list of record numbers, dump entries as BibTeX, or find titles close to a given one. Search runs over a local SQLite index with full-text matching.
The pipeline starts with an XML export from EndNote. Indexing picks it up: metadata is queryable within seconds while PDF text and vectors are still being written in the background. Meaning-based lookup is a separate step — pip install endnote-mcp[semantic] and then endnote-mcp embed, which runs all-MiniLM-L6-v2 on-device. No API key enters the picture.
One gotcha before you wire it up. The Claude Code plugin launches the server by calling endnote-mcp serve, so that binary has to sit on your PATH; without it the tools never show up. And if you already registered the same server via claude mcp add, Claude Code keeps a single connection — a different command or path leaves you with duplicated tools until claude mcp remove endnote.
What it helps with
- look up papers in the library by author and topic
- extract pages 5-7 from one paper's PDF
- turn a list of record numbers into a bibliography
- get an APA citation for a single record
- export chosen records as BibTeX
Example prompts for the agent
- Which papers in my EndNote library cover scenario planning?
- Give me the APA citation for record #1234.
- Read pages 5-7 of the Smith paper and check how the quote is worded.
How to install endnote-mcp
Platform CLI
claude mcp add endnote-mcp -- uvx endnote-mcpuvx runs the command named after the package; if the README names another one, use uvx --from endnote-mcp <command>
Platform CLI
codex mcp add endnote-mcp -- uvx endnote-mcpuvx runs the command named after the package; if the README names another one, use uvx --from endnote-mcp <command>
Config file
{
"mcpServers": {
"endnote-mcp": {
"command": "uvx",
"args": [
"endnote-mcp"
]
}
}
}uvx runs the command named after the package; if the README names another one, use uvx --from endnote-mcp <command>
Config file
{
"servers": {
"endnote-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"endnote-mcp"
]
}
}
}uvx runs the command named after the package; if the README names another one, use uvx --from endnote-mcp <command>
Platform CLI
gemini mcp add endnote-mcp uvx endnote-mcpuvx runs the command named after the package; if the README names another one, use uvx --from endnote-mcp <command>
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about endnote-mcp
How do I install endnote-mcp in Claude Code?
Run claude mcp add endnote-mcp -- uvx endnote-mcp. You still need an XML export of the library and an index behind it, otherwise the tools have nothing to search.
What does endnote-mcp do?
It exposes an EndNote library as twelve MCP tools: record search, PDF page reading, formatted citations, bibliographies, BibTeX export and related-paper lookup over a local index.
Do I need an API key for semantic search?
No. all-MiniLM-L6-v2 runs locally. Install the extras with pip install endnote-mcp[semantic] and run endnote-mcp embed once.