Typora MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TYPORA_PATH | No | Path to the Typora executable (e.g., D:\\Typora\\Typora.exe) | |
| TYPORA_BACKEND | No | Backend mode for Typora MCP (e.g., 'standalone') | |
| TYPORA_MCP_FIXTURE_ROOT | No | Root directory where fixtures are located | |
| TYPORA_MCP_EVIDENCE_ROOT | No | Root directory where evidence output is written |
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
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| typora_statusA | Inspect Typora processes, CDP connectivity, renderer windows, current file, and latest debug event sequence. |
| typora_capabilitiesA | Read the selected Typora target's explicitly supported debugging and automation capabilities before invoking an optional operation. |
| typora_bridge_statusB | Inspect the explicit standalone renderer bridge installation without changing Typora. |
| typora_install_bridgeA | Explicitly back up Typora window.html and install the standalone local renderer bridge. Restart Typora afterward to load it. |
| typora_uninstall_bridgeA | Remove only the Typora MCP bridge injection and its bridge script. The first pre-install backup is retained. |
| typora_launchC | Find and launch Typora with CDP enabled, then wait until a renderer is ready. |
| typora_closeA | Close Typora normally so unsaved prompts can appear; force termination only when force is true. |
| typora_restartA | Restart only a Typora instance launched by this MCP server. It never restarts an externally launched instance that might have unsaved work. |
| typora_open_documentB | Open an existing Markdown document in the selected renderer and wait until Typora confirms its path. Fixture validation uses a stricter MCP-owned launch flow. |
| typora_run_fixtureA | Run a declarative JSON fixture from the configured fixture root and write separate evidence. Shared targets require explicit opt-in and are never closed or restarted. |
| typora_reloadA | Reload the selected Typora renderer when the selected backend supports safe renderer reload. Standalone mode refuses location.reload; use typora_restart for MCP-managed instances. |
| get_domC | Read bounded HTML, visible text, or an accessibility snapshot from Typora. |
| typora_snapshotB | Create a bounded structured renderer snapshot with a short-lived snapshotRef and revision; prefer this over returning complete HTML. |
| typora_get_document_sourceB | Read the current saved Markdown source through the standalone bridge without modifying it; use its sourceHash to prove renderer-side code did not rewrite the file. |
| query_selectorB | List concise, serializable summaries for elements matching a CSS selector. |
| get_elementC | Inspect one element's attributes, geometry, computed styles, accessibility, and event listeners. |
| send_cdp_commandA | Send an arbitrary Chrome DevTools Protocol command when the selected backend exposes CDP; standalone mode does not. |
| get_console_logsC | Read captured console events, optionally only those after a previous sequence number. |
| get_javascript_errorsC | Read captured uncaught errors and unhandled promise rejections. |
| get_network_requestsC | Read captured request, response, and failure events; response bodies are opt-in and bounded. |
| clear_debug_eventsA | Clear captured debug events for one renderer or all renderers without resetting sequence numbers. |
| typora_enable_debug_network_captureA | Explicitly enable temporary fetch/XHR network capture for one standalone target. It does not cover IPC, WebSocket, or every internal network channel. |
| typora_disable_debug_network_captureA | Restore the target's original fetch/XHR functions after explicit debug network capture. |
| clickB | Click a visible element through Playwright/CDP; pass index when the selector matches more than one. |
| typeC | Enter text into a selected Typora element through Playwright/CDP. |
| press_keyC | Press a Playwright key on a selected element or the active page. |
| scrollC | Scroll an element or the selected Typora page by a pixel delta. |
| take_screenshotB | Capture the selected Typora page or one matching element as a PNG image. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 28 tools
Most tools target clearly distinct purposes (lifecycle, bridge management, debug capture, interaction). There is mild overlap among the DOM-reading group (get_dom, typora_snapshot, query_selector, get_element), but descriptions explicitly steer between them (snapshot preferred over full HTML), so an agent can disambiguate.
Nearly all tools follow a verb_noun convention, which is readable and predictable. The main deviation is the inconsistent presence of the typora_ prefix: some tools are prefixed (typora_status, typora_launch) while others are bare (get_dom, click, type), so the namespace is split across two styles.
At 28 tools this is on the heavy side for a single-application automation server. The surface is defensible given the breadth (process control, bridge, DOM, CDP, debug, interaction), but several tools could plausibly be consolidated, pushing it above the well-scoped 3-15 range.
Coverage spans process lifecycle, bridge install/uninstall, document opening, source reading, DOM inspection, CDP, debug event capture, and user interactions like click/type/scroll/screenshot. Gaps exist (no explicit document save or new-document creation), but core workflows are well covered.