crepe-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CREPE_TAVILY_API_KEY | No | Enables web_search via Tavily; graceful warning if absent | |
| CREPE_LIBREOFFICE_PATH | No | Path to a soffice/libreoffice executable, overriding auto-detection. Required on Linux only if auto-detection fails. | |
| CREPE_ASPOSE_LICENSE_PATH | No | Path to Aspose .lic file for watermark-free PPTX→PNG export on the aspose fallback path. Evaluation mode used if unset. | |
| CREPE_HEADLESS_BROWSER_PATH | No | Path to Chromium-compatible browser for fetch_webpage. Falls back to urllib if unset. |
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": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| create_presentationA | Create a new, empty presentation; returns presentation_id, required by every other Group-A tool. All title-slide metadata is set here: title, optional subtitle, author, institute, date. |
| get_presentationA | Return a presentation's metadata, ordered slide list (index, id, title, 200-char content preview), and which compiled artifacts exist. |
| get_slideA | Return the full content of a single slide by its zero-based index. |
| set_slideA | Add, replace, or insert a slide. insert=False (default): index < slide count -> replace in place; index >= slide count -> append. insert=True: inserts at index, shifting that slide and everything after it later (index >= slide count still appends). Combine with delete_slide to move a slide to a new position.
expected_slide_count : optional. If a concurrent call already changed the deck since you last checked, this fails with a clear error instead of silently landing at an unintended position -- get_presentation to refresh, then retry. Recommended when issuing several set_slide calls for the same presentation without waiting for each result first. |
| delete_slideA | Remove a slide by index. Slides after it shift down by one. expected_slide_count : optional, same stale-state guard as set_slide. |
| update_presentation_metadataA | Update title-slide metadata (title/subtitle/author/institute/date) on an existing presentation. Only fields given a value are changed. |
| list_presentationsA | List every presentation currently held in memory. |
| export_presentation_sourceA | Return the pandoc source (slides Markdown + config.yml) this presentation compiles from. output_dir : if given (absolute path), also writes slides.md/config.yml there. theme/highlight_style : same meaning as compile_presentation. |
| import_presentation_sourceA | Replace a presentation's slides by parsing pandoc slide Markdown. Splits on '##' (slide) and bare '#' (section-divider) headings, ignoring '#' inside fenced code blocks. presentation_id must already exist. Every slide it currently has is replaced; metadata is untouched. Exactly one of markdown (inline content) or source_path (absolute path to a .md file) must be given. |
| compile_presentationA | Compile the in-memory presentation to PDF or PPTX, writing directly to output_path (absolute). Call render_slides_as_pngs afterwards to validate visually. format : 'pdf' (Beamer/lualatex) or 'pptx' (PowerPoint). theme : any Beamer theme name installed on this system (PDF only), default 'moloch'. highlight_style : code highlight style, default 'tango'. reference_doc : path to a .pptx template (PPTX only, optional). |
| render_slides_as_pngsA | Convert a compiled artifact to a numbered PNG sequence for visual validation. format must match a previously compiled artifact. |
| cleanup_presentationB | Delete a presentation's in-memory state and on-disk scratch dir. |
| academic_searchA | Search Semantic Scholar for academic papers. No API key required. Returns up to |
| web_searchA | Search the web via the Tavily API. Requires CREPE_TAVILY_API_KEY in the environment. Returns an empty result with a warning field (not an error) if the key is absent, so the agent can surface the message gracefully. |
| wikipedia_searchA | Search Wikipedia and return matching article titles, URLs, and excerpts. Pass the returned title to wikipedia_read to fetch the full article. |
| wikipedia_readA | Fetch the full plain-text body of a Wikipedia article.
|
| fetch_webpageA | Extract readable plain text from a URL (http/https only). Uses the browser at CREPE_HEADLESS_BROWSER_PATH (--headless=new --dump-dom) if set, else falls back to urllib + HTML stripping with a warning. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/mariolpantunes/crepe-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server