Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
MEETRUPERT_EMAILYesService user's email. Required.
MEETRUPERT_ORG_IDNoOverride the organisation. Defaults to the logged-in user's org.
MEETRUPERT_BASE_URLNoAPI base URL incl. `/api`. Defaults to `https://app.meetrupert.com/api`.https://app.meetrupert.com/api
MEETRUPERT_PASSWORDYesService user's password. Required.
MEETRUPERT_ATTACHMENT_DIRSNoDirectories `create_attachment` may read from and `download_attachment` may write to (`;`-separated on Windows, `:` elsewhere). **Empty by default, which refuses every `path` read** — see Attachments.
MEETRUPERT_ATTACHMENT_TTL_MSNoHow long before an unreferenced attachment is reported as an orphan. Defaults to `3600000` (1 h).3600000
MEETRUPERT_ATTACHMENT_MAX_BYTESNoPer-attachment size cap. Defaults to `10485760` (10 MB), the platform's own limit.10485760

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
search_documentsA

Search the Meet Rupert knowledgebase for documents by title. Returns a paginated list of matching documents with their UUIDs, titles, draft status, categories and last-updated dates. Use the returned id with read_document to fetch full content. This is a title/metadata search — to ask a natural-language question answered from document content, use ask_ai instead.

read_documentA

Read a single Meet Rupert document by its UUID. Returns the title, metadata, and the document body converted to Markdown for easy reading. Get the documentId from search_documents or from an ask_ai source reference. Embedded images come back as ![alt](attachment://<id>) references. Those are stable and can be passed straight back to update_document — keep them in the body to preserve the images, and use list_attachments or download_attachment if you need the files themselves.

create_documentA

Create a new document in the Meet Rupert knowledgebase. Provide the body as Markdown; it is converted to the platform's rich-text format. By default the document is saved as a DRAFT (not searchable by the AI) so a human can review it before publishing — pass published:true to make it live immediately. Returns the new document's id. To embed images, upload each one with create_attachment (which takes a file path or an https:// URL — never image data) and place the markdownRef it returns in content. Every attachment:// reference is verified before saving: if one is unknown or belongs to another workspace the save fails naming the offending id, rather than storing a broken image.

update_documentA

Edit an existing Meet Rupert document. Any field you omit is left unchanged — pass only what you want to change. content (Markdown) replaces the entire document body, so read_document first if you're making a partial edit. Each update snapshots a new version and re-indexes the document for AI search. Returns the updated document's id and state. Because content replaces the whole body, any attachment:// ref you drop from it removes that image from the document — preserve the refs read_document gave you. Add new images via create_attachment, never by pasting image data.

list_categoriesA

List the document categories in the knowledgebase, with their UUIDs and document counts. Use these ids for the categoryIds parameter when creating/updating documents or when scoping ask_ai retrieval.

create_attachmentA

Upload an image so it can be embedded in a Meet Rupert document. PASS A FILE PATH OR AN HTTPS URL — NOT THE IMAGE DATA. The server reads the bytes itself; there is no base64 or inline-content parameter and you must not attempt to supply one. This is because a large payload placed in a tool-call argument gets silently truncated in transit (an 18,880-byte payload arrived as 7,312 bytes in testing, corrupting the file with no error raised), which rules out essentially every real screenshot. Letting the server read the file makes the returned contentLength and sha256 facts about the file itself, so you can verify them against the source. Accepts image/png, image/jpeg, image/webp and image/gif only, up to 10 MB — the type is determined from the file's magic bytes, not its extension. SVG and non-image files (PDF, .docx, plain text) cannot be attached: the platform has no storage for them. Returns an attachmentId and a ready-to-use markdownRef like ![caption](attachment://<id>) — put that in the content of create_document or update_document to place the image.

list_attachmentsA

List the images embedded in a Meet Rupert document, with each one's attachmentId, alt text and whether it still resolves in storage. Use this to find the id of an image you want to download or remove, or to check a document for broken images.

download_attachmentA

Download a stored attachment, either by writing it to a file path the server can reach (destPath) or by returning a short-lived signed URL (signedUrl:true). Returns the byte length and sha256 of what was written so you can verify it against the original. Image bytes are never returned inline — that is the same truncation hazard create_attachment exists to avoid, and a path plus a checksum is what verifying integrity actually needs.

delete_attachmentA

Remove an image from a document by deleting its reference from the document body. IMPORTANT: this does NOT delete the stored image itself — the Meet Rupert platform exposes no endpoint for that, so the object remains in storage and stays reachable by anyone holding a signed URL. Treat this as 'unlink from document', not 'delete'. Genuine deletion needs a platform change; do not tell a user their file has been erased.

ask_aiA

Ask the Meet Rupert AI a natural-language question. It runs Retrieval-Augmented Generation over the PUBLISHED documents in the knowledgebase and returns a synthesised answer plus the source documents it used (with their documentIds, which you can pass to read_document). This is a one-shot question with no memory of previous calls — use create_chat_thread + ask_in_thread for a multi-turn conversation.

create_chat_threadA

Create a new conversation thread for multi-turn Q&A with the Meet Rupert AI. Returns a threadId to pass to ask_in_thread. The thread's title is generated by the platform. Use this when follow-up questions need to remember earlier context; for a single standalone question use ask_ai.

ask_in_threadA

Ask a question within an existing conversation thread. The AI answers with the thread's prior messages as context (so follow-ups like "and what about X?" work), running RAG over the published knowledgebase. Returns the answer plus source documents. Both your question and the answer are saved to the thread.

list_chat_threadsA

List your recent Meet Rupert conversation threads with their titles and threadIds, so you can resume one with ask_in_thread. Returns the most recent threads first.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/deanjbrown/meetrupert-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server