lucid.page
What this MCP does
Publishes Markdown documents as shareable pages, supports bundles and revisions, and manages owned documents.
Tools
Input schema
{'type': 'object', 'required': ['binder'], 'properties': {'url': {'type': 'string', 'description': 'An http(s) link. Links to lucid.page pages are stored as those pages.'}, 'note': {'type': 'string', 'description': 'Optional note shown with the item.'}, 'slug': {'type': 'string', 'description': "A lucid.page page slug: one of your own pages, or anyone's public or unlisted page."}, 'title': {'type': 'string', 'description': 'Optional display title for a link.'}, 'binder': {'type': 'string', 'description': 'The binder slug.'}}}
Output schema
{'type': 'object', 'required': ['binder', 'url', 'item_id', 'item_count'], 'properties': {'url': {'type': 'string', 'description': 'The binder page URL'}, 'binder': {'type': 'string', 'description': 'The binder slug'}, 'item_id': {'type': 'string', 'description': 'Id of the added item'}, 'item_count': {'type': 'integer'}}}
Input schema
{'type': 'object', 'required': ['title'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'properties': {'url': {'type': 'string', 'description': 'An http(s) link. Links to lucid.page pages are stored as those pages.'}, 'note': {'type': 'string', 'description': 'Optional note shown with the item.'}, 'slug': {'type': 'string', 'description': "A lucid.page page slug: one of your own pages, or anyone's public or unlisted page."}, 'title': {'type': 'string', 'description': 'Optional display title for a link.'}}}, 'description': 'Optional initial items, in order. Each needs exactly one of slug or url.'}, 'title': {'type': 'string', 'description': 'The binder title (1-120 characters).'}, 'visibility': {'enum': ['private', 'unlisted', 'public'], 'type': 'string', 'description': 'Defaults to unlisted.'}, 'description': {'type': 'string', 'description': 'Optional plain-text description; blank lines start a new paragraph.'}}}
Output schema
{'type': 'object', 'required': ['slug', 'url', 'visibility', 'item_count'], 'properties': {'url': {'type': 'string', 'description': 'The binder page URL, https://lucid.page/b/<slug>'}, 'slug': {'type': 'string'}, 'item_count': {'type': 'integer'}, 'visibility': {'enum': ['private', 'unlisted', 'public'], 'type': 'string'}}}
Input schema
{'type': 'object', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': 'The document slug — the path part of its https://lucid.page/<slug> URL.'}}}
Output schema
{'type': 'object', 'required': ['deleted'], 'properties': {'deleted': {'type': 'string', 'description': 'Slug of the deleted page'}}}
Input schema
{'type': 'object', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': 'The document slug — the path part of its https://lucid.page/<slug> URL.'}}}
Output schema
{'type': 'object', 'required': ['slug', 'markdown'], 'properties': {'slug': {'type': 'string'}, 'version': {'type': 'integer', 'description': 'Current version; pass as expected_version to update_doc'}, 'markdown': {'type': 'string', 'description': 'The canonical Markdown source of the page'}}}
Input schema
{'type': 'object', 'additionalProperties': False}
Output schema
{'type': 'object', 'required': ['plans'], 'properties': {'plans': {'type': 'object', 'description': 'Account matrix: anonymous, with_api_key, pro_team'}, 'account': {'type': 'object', 'required': ['accountId', 'plan', 'activeSubscription'], 'properties': {'plan': {'type': 'string', 'description': 'free | pro | team'}, 'accountId': {'type': 'string'}, 'activeSubscription': {'type': 'boolean'}}, 'description': 'Present when an lp_ API key was supplied'}}}
Input schema
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'description': 'Max documents to return (1-200, default 50).'}, 'cursor': {'type': 'string', 'description': 'The nextCursor value from a previous call.'}}}
Output schema
{'type': 'object', 'required': ['docs', 'nextCursor'], 'properties': {'docs': {'type': 'array', 'items': {'type': 'object', 'required': ['slug'], 'properties': {'slug': {'type': 'string'}, 'title': {'type': ['string', 'null']}, 'expires_at': {'type': ['string', 'null']}, 'updated_at': {'type': 'string'}, 'view_count': {'type': 'integer'}, 'visibility': {'type': 'string'}}}}, 'nextCursor': {'type': ['string', 'null'], 'description': 'Pass as the cursor argument for the next page; null when the listing is exhausted'}}}
Input schema
{'type': 'object', 'required': ['markdown'], 'properties': {'ttl': {'type': 'integer', 'description': 'Lifetime in seconds (min 60). Omit for a page that never expires.'}, 'title': {'type': 'string', 'description': 'Optional display title.'}, 'markdown': {'type': 'string', 'description': 'The Markdown source to publish (max 1 MB).'}, 'visibility': {'enum': ['private', 'unlisted', 'public'], 'type': 'string', 'description': 'Defaults to unlisted. Private requires an lp_ API key.'}}}
Output schema
{'type': 'object', 'required': ['slug', 'url', 'visibility', 'expires_at'], 'properties': {'url': {'type': 'string', 'description': 'The live page URL.'}, 'slug': {'type': 'string'}, 'expires_at': {'type': ['string', 'null'], 'description': 'ISO timestamp, or null when the page never expires'}, 'visibility': {'enum': ['private', 'unlisted', 'public'], 'type': 'string'}, 'claim_token': {'type': 'string', 'description': 'One-time ownership token (anonymous publishes only). A human claims the page at https://lucid.page/claim?slug=<slug>&token=<claim_token>; agents claim with POST /api/docs/<slug>/claim.'}}}
Input schema
{'type': 'object', 'required': ['slug', 'markdown'], 'properties': {'slug': {'type': 'string', 'description': 'The document slug — the path part of its https://lucid.page/<slug> URL.'}, 'title': {'type': 'string', 'description': 'Optional new title; omit to keep the current one.'}, 'markdown': {'type': 'string', 'description': 'The new Markdown source (max 1 MB).'}, 'expected_version': {'type': 'integer', 'description': 'Optional optimistic-lock guard: the version you last read. Saves only if it still matches.'}}}
Output schema
{'type': 'object', 'required': ['slug', 'revision_hash', 'visibility', 'url'], 'properties': {'url': {'type': 'string'}, 'slug': {'type': 'string'}, 'version': {'type': 'integer', 'description': 'Monotonic save counter; pass as expected_version next time'}, 'visibility': {'type': 'string'}, 'revision_hash': {'type': 'string', 'description': 'Content hash of the new revision'}}}
Recent tool changes
Similar MCP servers
Comicvine
Provides searchable Comic Vine data for comic characters, issues, volumes, creators, and publishers.
NotebookLM
Manages NotebookLM notebooks and sources, answers source-grounded questions with citations, and generates artifacts such as repor…
Anapioficeandfire
Searches and retrieves structured information about A Song of Ice and Fire books, characters, and houses.
Clevelandart
Searches Cleveland Museum of Art collection artworks, creators, exhibitions, and artwork records.
Archive
Provides access to Internet Archive item metadata and downloadable files for researching and retrieving archived digital material…
Georgia Archives
Searches and browses the National Archives of Georgia library, fonds, and film catalogues, and retrieves parsed archival library …
Artic
Provides Art Institute of Chicago artist, artwork, and exhibition records, including artwork descriptions, metadata, images, and …
Metmuseum
Searches The Metropolitan Museum of Art collection and retrieves detailed artwork metadata, images, artists, and classification i…