Native macOS markdown preview with MCP server for Claude Code. Swift/SwiftUI, no Electron.
io.github.paulhkang94/markview (MCP Server)
This MCP server provides a native macOS markdown preview experience for Claude Code. Claude writes markdown, and MarkView renders it live in a real native window while you work. The implementation is described as Swift/SwiftUI and explicitly notes “no Electron.”
🛠️ Key Features
Native macOS markdown preview
MCP server for Claude Code
Live rendering of markdown in a real native window
Swift/SwiftUI implementation (no Electron)
🚀 Use Cases
Previewing markdown generated by Claude Code during writing
Viewing updates to markdown output in a native macOS window
Using MCP tooling alongside Claude Code for developer workflows
⚡ Developer Benefits
Uses Model Context Protocol (MCP) integration for Claude Code
Fits developer environments on macOS with a native UI approach
Topic coverage includes “developer-tools,” “ai-tools,” and “mcp-server”
⚠️ Limitations
Information provided does not specify supported tools, commands, or toolCount
No details beyond the preview and MCP integration are included in the source excerpt
Native macOS markdown preview with MCP server for Claude Code. Claude writes markdown — MarkView renders it live, in a real native window, while you work.
Versions: The macOS app (app badge) and the npm MCP wrapper (npm badge) are versioned independently. App releases happen when the Swift binary changes; npm patches happen for MCP server improvements. Both badges always show the latest of each.
MarkView demo
Preview only
Editor + Preview
Quick Start — Claude Code
One command to wire MarkView into every Claude Code session:
bash
claude mcp add --transport stdio --scope user markview -- npx mcp-server-markview
That's it. Claude can now call preview_markdown to render any markdown string in a native macOS window, or open_file to open any .md file directly.
Tool
What it does
preview_markdown
Render markdown content in a live-reloading MarkView window
open_file
Open an existing .md file in MarkView
Claude Desktop Setup
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
Note: MCP servers belong in ~/.claude.json (Claude Code) or claude_desktop_config.json (Claude Desktop), not ~/.claude/settings.json.
Installation
Homebrew (recommended)
bash
# Full .app with Quick Look extension — Apple notarized, Gatekeeper approved
brew install --cask paulhkang94/markview/markview
# CLI only (builds from source)
brew tap paulhkang94/markview
brew install markview
Build from source
Prerequisites: macOS 14+, Swift 6.0+ (Xcode Command Line Tools)
bash
git clone https://github.com/paulhkang94/markview.git
cd markview
swift build -c release
Install as app (Open With support)
bash
bash scripts/bundle.sh --install
Creates MarkView.app in /Applications and registers it with Launch Services for right-click > Open With in Finder. Refuses (unless you pass --force) if a Dock tile is pinned to a build/ or repo-root MarkView.app path, since both are ephemeral dev output.
Install CLI
bash
bash scripts/install-cli.sh
Creates mdpreview and md symlinks in ~/.local/bin/.
Usage
CLI
bash
mdpreview README.md # Open a file
mdpreview # Open empty editor
Finder
Right-click any .md, .markdown, .mdown, .mkd file > Open With > MarkView