Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog
Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

AllMCPs on GitHub (opens in a new tab)
Launched onTiny Startupstinystartups.com
Explore
  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Random discovery New
  • Submit a server
  • Pricing & Boost Boost
Learn
  • Guides hub
  • What is MCP?
  • Install guide
  • Build an MCP server
  • Deploy an MCP server
  • Security guide
  • Troubleshooting
  • MCP for SEO & AEO
  • Protocol versioning
  • Transports: stdio vs HTTP
  • State of MCP (stats)
  • Blog & updates
Tools
  • All developer tools
  • Config generator
  • Config validator
  • Config auditor
  • MCP playground
  • Token calculator
  • OpenAPI β†’ MCP
  • Badge generator
For agents
  • REST API docs
  • Trust & traffic Live
  • Remote MCP server SSE β†— (opens in a new tab)
  • llms.txt β†— (opens in a new tab)
  • Catalog JSON β†— (opens in a new tab)
Company
  • About
  • Advertise Sponsor
  • Contact
  • GitHub β†— (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZoneAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZone
Β© 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. πŸ”¬ Research
  3. Cite Caddy
Cite Caddy logo
Health: ActiveRecent health check succeeded.Last checked 9/22/2026, 8:02:52 AM

Cite Caddy

User RatingsBe the first to rate and review this MCP server! Enrichment pendingWe haven’t run our AI enrichment pass on this listing yet, so the overview, use cases, and FAQ below may be sparse or missing. We work through the catalog over time β€” check back soon.
View RepositoryVisit Website

Remote MCP server for full read/write access to a Zotero library

Quick Install

Automated & IDE Setup

Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β€” or use 1-click editor setup below.

One-click editor setup isn’t available for this listing yet β€” we don’t have a confirmed install command, and we’d rather show nothing than point your editor at the wrong package or host. Follow the project’s own setup instructions, linked above.

Manual Client & Custom JSON ConfigExpand JSON β–Ύ
No confirmed setup config for this listing yet. We only publish a config block when the install details come from the project itself β€” its README, its docs, or a verified owner. We haven’t found those for Cite Caddy, and we’d rather show nothing than a guess you’d paste into your client. Follow the project’s own setup instructions for the current steps.
Install Tool Schemas (39) Directory Badge Claim listing AlternativesπŸ”¬ More in Research

Capabilities & Tool Schemas (39) ~694 tokensApproximate context cost of this server’s tool schemas (~4 chars/token), before any tool is called. Actual usage depends on your client and model.Self-reported Self-reportedParsed from the repository README, not verified against a live server β€” may be incomplete or out of date.

Inspect callable tools, capabilities, and parameters exposed to AI agents by Cite Caddy.

search_items

query` defaults to Zotero's quick search (title/creator/year); `full_text=True` also matches indexed content of attached files/notes (`qmode="everything"`), requires non-empty `query`. Each result's `creators` is a list of `{creatorType, firstName, lastName}` (or `{creatorType, name}` for single-fi…

get_item

creators` shape as above.

list_collections

Callable MCP tool function

list_tags

Callable MCP tool function

list_trash

creators` shape as above.

list_saved_searches

Callable MCP tool function

Documentation Overview

Cite Caddy

cite-caddy MCP server smithery badge MCP Registry Lint Latest release License: MIT

A reference-library bridge for AI assistants β€” a standalone, remote MCP server.

Independent, unofficial project. Not affiliated with, endorsed by, or sponsored by the Corporation for Digital Scholarship (Zotero) β€” see Zotero's trademark policy. Built on the Zotero Web API; today's backend is Zotero, but the name and tool surface are meant to support others later.

Cite Caddy gives full read/write access to a Zotero library β€” search, add, tag, update, delete, and move items; create, rename, and delete collections; upload/download attachments and read their extracted full text; read and write item notes; manage tags, trash, and saved searches library-wide; and look up Zotero's own item-type/field schema. 39 tools total β€” see Tools below for the full list.

Why this exists

Read-only tools that match findings against a Zotero library (e.g. by DOI/arXiv ID) can safely stop at reporting β€” they never need to write anything back. This project goes further on purpose: full CRUD against a Zotero library, including delete and move, so that tagging, adding, and cleaning up items can be automated too.

That's a deliberate scope choice, and it comes with a real risk: any write that changes an existing item's key (delete, move to another library, "clean library" reset) breaks Word documents that cite it via the Zotero Word plugin's live field codes β€” see "Key safety" below before touching delete/move.

Key safety (read this before implementing delete/move)

Any Zotero item cited in a Word document via the Zotero Word plugin is referenced by that item's key, embedded in a live field code. Operations that preserve an item's key (create, update fields, add/remove tags, add notes) are safe. Operations that don't (delete, and library-to-library move, which Zotero implements as delete+recreate) will break those citations silently β€” the Word document won't error, it'll just show stale/broken field text next time someone updates fields or opens Zotero the next time.

Full CRUD was chosen deliberately for this project despite that risk. When implementing delete/move tools:

  • Make the destructive intent obvious in the tool name and docstring (an MCP client's model reads both before calling), not just in this README.
  • Consider requiring the caller to pass back the item's current Zotero version (optimistic concurrency) so a delete/update can't silently clobber a change made concurrently from the Zotero desktop app or another client.
  • A dry-run / confirmation step for delete is worth considering, but is an implementation decision for whoever builds that tool, not decided here.

Idempotency

delete_item_permanently, delete_collection, delete_tag, delete_saved_search, move_item_to_different_library, and update_publication_status all accept an optional idempotency_key. Pass the same opaque string when retrying a call after a lost or ambiguous response (e.g. a network timeout) and the original outcome β€” success or error β€” is replayed instead of running the operation against Zotero again. Reusing a key for a call with different arguments raises an error instead of silently returning the old result, so it's safe to generate one key per logical request and reuse it freely on retries of that same request.

This matters most for move_item_to_different_library: it recreates the item in the target library, then deletes it from the source. If the create succeeds but the delete then fails, a bare retry would redo the whole thing β€” since the source item's version hasn't changed β€” creating a second duplicate in the target library. With idempotency_key, the retry replays the cached failure (and its "clean up manually" guidance) instead of touching Zotero again.

The cache is in-memory per server process (per onboarded tenant in HTTP mode), with a 24h TTL β€” it survives retries within that window, not across a redeploy/restart.

Configuration

stdio mode (local, single-user β€” no $PORT): the library to connect to comes from env vars.

Code
ZOTERO_LIBRARY_ID      numeric library ID (user or group)
ZOTERO_LIBRARY_TYPE    "user" or "group" (default: user)
ZOTERO_API_KEY         from Zotero -> Settings -> Security -> Applications
                        (needs write permission, not just read)

HTTP mode (remote, multi-tenant β€” $PORT set): there's no single configured library β€” each caller brings their own Zotero Library ID/Type/API Key via the /login form (see "Deployment" below). Instead:

server.ts
MCP_TOKEN_STORE_KEY    Fernet key encrypting onboarded tenants' API keys at
                        rest; generate once at deploy time with:
                        python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())"
MCP_PUBLIC_URL          public HTTPS URL this server is reachable at
MCP_DATA_DIR            where OAuth clients/tokens/tenants persist (default: ./.data)

Optional in either mode:

Code
MCP_WEBSITE_URL         public site reported as serverInfo.website_url; also used to
                        build serverInfo.icons[0].src as MCP_WEBSITE_URL + "icons/icon.svg"
                        and the /login page's privacy policy link as
                        MCP_WEBSITE_URL + "privacy.html" (both files must actually be
                        served there). Left unset, all three are simply omitted.

Deployment

Ships as its own Docker container (docker-compose.yml), meant to sit behind a reverse proxy that terminates TLS and forwards to the container's port on localhost. Remote/hosted by default, not a local stdio server β€” an MCP client just points at the URL, nothing to install or run locally.

Access is gated by a real OAuth 2.1 authorization server built into the app itself (app/oauth_provider.py), not HTTP Basic Auth in front of it. This is a deliberate design choice: Claude Desktop/claude.ai's "Add custom connector" UI is OAuth-first β€” it always tries the OAuth discovery + authorization-code dance against a new server, so a plain 401 in front of the server (as Basic Auth would produce) gets read as "this server needs OAuth" and fails once it hits a nonexistent /authorize endpoint. Implementing a real (if minimal) OAuth server is what makes "Add custom connector" work.

Multi-tenant and self-service: /authorize doesn't delegate to a third-party identity provider β€” it shows a first-party login form asking for a Zotero Library ID, Library Type, and API Key. Submitting the form validates the key directly against the Zotero API; a successful validation both grants access and registers ("onboards") that library as a tenant of this server, all in one step β€” there's no separate sign-up and no admin approval. Any MCP client can dynamically register itself (RFC 7591), but completing the login form with a working Zotero key is what actually gates access. Each caller's tool calls are then routed to their own Zotero library, not a shared one. See app/oauth_provider.py's module docstring for the full flow. Registered clients, issued tokens, and onboarded tenants' credentials (API keys encrypted at rest with MCP_TOKEN_STORE_KEY) persist to MCP_DATA_DIR (a Docker volume) so redeploys don't log connected clients out or forget onboarded tenants.

.env on the host (not in this repo) holds MCP_TOKEN_STORE_KEY/ MCP_PUBLIC_URL, consumed via docker-compose.yml's env_file:. ZOTERO_LIBRARY_ID/ZOTERO_LIBRARY_TYPE/ZOTERO_API_KEY are not needed for the HTTP deployment β€” those only apply to stdio mode.

.github/workflows/deploy.yml automates redeploying to an already set-up host: manual trigger only (workflow_dispatch, never on push), runs the test suite first, then syncs the repo over SSH and rebuilds the container. It needs its own GitHub Actions secrets for the deploy SSH key and target host/port/user β€” see the workflow file for the full list. Use a dedicated deploy key (not whatever key you use for direct/manual access), so it can be revoked independently if it ever leaks.

Monitoring

Four unauthenticated GET endpoints, HTTP mode only (all require $PORT, same as /login):

  • /healthz β€” plain 200 OK, for a load balancer/uptime check.

  • /status β€” JSON snapshot of aggregate, process-level activity:

    config.json
    {
      "version": "2.1.0",
      "uptime_seconds": 41213,
      "tenants": 7,
      "tool_calls": {"search_items": 512, "add_tags": 41},
      "tool_errors": {"add_tags": 2}
    }
    

Read the full README β†’View source on GitHub β†’

Related MCP Servers

View all in Research View all alternatives
  • Scholar Feed MCP logoScholar Feed MCP

    Semantic search over 600k+ CS/AI papers with citation-graph traversal, full-text extraction, embeddings, and BibTeX export. Works anonymously or with a free key. Install: npx scholar-feed-mcp init.

    πŸ”¬ Research1 views
    Compare vs Scholar Feed MCP β†’
  • Tooluniverse logoTooluniverse

    1000+ scientific tools for AI scientists: life science, reserach, literature, and more.

    πŸ”¬ Research2 views
    Compare vs Tooluniverse β†’
  • Infranodus MCP Server Infranodus logoInfranodus MCP Server Infranodus

    Map text into knowledge graphs to create a structured representation of conceptual relations and t…

    πŸ”¬ Research3 views
    Compare vs Infranodus MCP Server Infranodus β†’
  • BrowseAI Dev logoBrowseAI Dev

    Evidence-backed web research for AI agents with citations and confidence scores.

    πŸ”¬ Research0 views
    Compare vs BrowseAI Dev β†’

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks β€” not a rating.

Last commit
11d ago
Most recent push to the default branch.
Tools exposed
39
Callable tools this server registers over MCP.
Directory activity
1 views
Config copies, upvotes, and views on AllMCPs.

Reviews

No reviews yet β€” be the first to share how this listing worked for you.

Frequently Asked Questions about Cite Caddy

We don't have a confirmed install command for Cite Caddy yet, so we don't publish a generated one β€” a guessed package name would point at the wrong package or none at all. Follow the project's own README or setup instructions (https://github.com/herbertkokholm/cite-caddy) for the current steps.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewCite Caddy AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/cite-caddy?style=directory)](https://allmcps.com/mcp/cite-caddy)
HTML Embed
<a href="https://allmcps.com/mcp/cite-caddy"><img src="https://allmcps.com/api/badge/cite-caddy?style=directory" alt="Cite Caddy on AllMCPs" /></a>

Technical Specs & Signals

CategoryπŸ”¬Research
More technical detailsExpand β–Ύ
Last updatedSep 14, 2026
7/7 checks healthy over the last 39d
Views1
Unique ViewsTotal visits recorded for this listing page on AllMCPs.
Installs0
Installs & Copy ActionsTotal times users copied install commands or configuration snippets for this server.
GitHub stars0
GitHub Star CountTotal stargazers on GitHub representing community popularity (0 stars).
Last commit11d ago
Last Repository CommitThe most recent commit or push recorded for this server's GitHub repository.Last commit on Sep 14, 2026
44Quality signal: Fair Β· 44/100How this signal is calculated β–Ύ
Server availabilityNot measured

Not scored for repo-hosted servers β€” we can't reach the running server, only its GitHub page. Hosted MCP endpoints are health-checked live.

Verified ownership10/20
Documentation & tools19/30
Adoption & activity4/15
Community engagement0/10

A guidance signal from public completeness & health data β€” not a user rating. New listings start lower and rise as they add docs, get verified, and grow adoption. Signals we can't observe for a listing are skipped, not counted against it.

β˜… Spotlight Slot

Feature Your MCP Server

Get maximum visibility for your server across our directory, search results, and detail pages.

Spotlight Your Server

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to unlock edit access and the Official badge β€” proof is checked automatically, then reviewed by our team.

Free dofollow backlink: add your website and place the AllMCPs badge on it β€” no claim needed. We detect it automatically and keep it verified as long as the badge stays live.

Claim & get free dofollow

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.

Explore more

More in πŸ”¬ Research β†’Best MCP servers for Research β†’Alternatives to Cite Caddy β†’Install in Claude DesktopInstall in CursorInstall in VS CodeSetup guides for all 13 MCP clients