MarkView

السجل الرسمي أدوات المطورين

Native macOS markdown preview with MCP server for Claude Code. Swift/SwiftUI, no Electron.

ماذا يمكنك أن تفعل مع MarkView؟

  • GitHub Flavored Markdown via swift-cmark (tables, strikethrough, autolinks, task lists, footnotes)
  • Mermaid diagrams — flowcharts, sequence, Gantt, ER, and pie charts
  • Syntax highlighting via Prism.js (18 languages)
  • Quick Look integration — spacebar-preview .md files in Finder without opening the app
  • Markdown linting with 9 built-in rules and status bar diagnostics
  • Live split-pane editor with WKWebView rendering and bidirectional scroll sync
  • File watching with DispatchSource — works with VS Code, Vim, and other editors
  • Local image rendering — inlines relative paths like ![](./image.png) correctly

التثبيت

أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: ‏.cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).

NPM package mcp-server-markview
Claude Code
claude mcp add markview -- npx -y mcp-server-markview@1.7.2
إعداد JSON (Claude Desktop وCursor وVS Code)
{
    "mcpServers": {
        "markview": {
            "command": "npx",
            "args": [
                "-y",
                "mcp-server-markview@1.7.2"
            ]
        }
    }
}

التوثيق

مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.

المحتويات
  1. MarkView
  2. Quick Start — Claude Code
  3. Installation
  4. Usage
  5. Features
  6. Architecture
  7. Testing
  8. Development
  9. Support
  10. License

MarkView

&color=green)

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.

Preview onlyEditor + Preview

Quick Start — Claude Code

One command to wire MarkView into every Claude Code session:

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.

ToolWhat it does
preview_markdownRender markdown content in a live-reloading MarkView window
open_fileOpen an existing .md file in MarkView
Claude Desktop Setup

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "markview": {
      "command": "npx",
      "args": ["mcp-server-markview"]
    }
  }
}

Note: MCP servers belong in ~/.claude.json (Claude Code) or claude_desktop_config.json (Claude Desktop), not ~/.claude/settings.json.

Installation

# 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)

git clone https://github.com/paulhkang94/markview.git
cd markview
swift build -c release
Install as app (Open With support)
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 scripts/install-cli.sh

Creates mdpreview and md symlinks in ~/.local/bin/.

Usage

CLI
mdpreview README.md       # Open a file
mdpreview                 # Open empty editor
Finder

Right-click any .md, .markdown, .mdown, .mkd file > Open With > MarkView

Programmatic
open -a MarkView README.md

Features

  • GitHub Flavored Markdown via swift-cmark (tables, strikethrough, autolinks, task lists, footnotes)
  • Mermaid diagrams — flowcharts, sequence, Gantt, ER, and pie charts
  • Syntax highlighting via Prism.js (18 languages)
  • Quick Look integration — spacebar-preview .md files in Finder without opening the app
  • Markdown linting with 9 built-in rules and status bar diagnostics
  • Live split-pane editor with WKWebView rendering and bidirectional scroll sync
  • File watching with DispatchSource — works with VS Code, Vim, and other editors
  • Local image rendering — inlines relative paths like ![](./image.png) correctly
  • Export to HTML and PDF
  • HTML sanitizer — strips scripts, event handlers, and XSS vectors
  • Drag and drop — drop any .md file onto the window to open
  • Find & Replace — Cmd+F / Cmd+Option+F
  • Format on save — auto-applies lint fixes
  • Auto-save, word count, line numbers, scroll position preservation
  • Dark mode — system/light/dark theme options, 18 configurable settings

Architecture

Sources/MarkViewCore/           # Library (no UI, fully testable)
  MarkdownRenderer.swift        # cmark-gfm C API wrapper
  FileWatcher.swift             # DispatchSource file monitoring
  MarkdownLinter.swift          # 9-rule pure Swift linting engine
  HTMLSanitizer.swift           # XSS prevention
  LanguagePlugin.swift          # Plugin protocol + registry
  Plugins/                      # CSV, HTML, Markdown plugins

Sources/MarkView/               # SwiftUI app (macOS 14+)
  ContentView.swift             # Split-pane editor + preview
  WebPreviewView.swift          # WKWebView with Prism.js
  ExportManager.swift           # HTML/PDF export

Sources/MarkViewMCPServer/      # MCP server for AI tool integration
  main.swift                    # stdio JSON-RPC (preview_markdown, open_file)

Tests/TestRunner/               # 403 standalone tests (no XCTest)
Tests/VisualTester/             # 5 visual regression tests + WCAG contrast
Tests/FuzzTester/               # 10K random input crash testing
Tests/DiffTester/               # Differential testing vs cmark-gfm CLI

See docs/ARCHITECTURE.md for full details.

Testing

swift run MarkViewTestRunner    # 403 tests
python3 scripts/verify.py       # Full verification (build + tests, writes stamp)
python3 scripts/verify.py --extended  # + fuzz + differential
bash scripts/test-mcp.sh        # MCP protocol tests

Development

swift build
swift run MarkView
swift run MarkView /path/to/file.md

Support

License

MIT — see LICENSE.

الأسئلة الشائعة

ما هو MarkView؟

Native macOS markdown preview with MCP server for Claude Code. Swift/SwiftUI, no Electron.

كيف أثبّت MarkView؟

يعمل على جهازك. في Claude Code: claude mcp add markview -- npx -y mcp-server-markview@1.7.2. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.

هل يحتاج MarkView إلى مفتاح API؟

لا يذكر إدراجه في السجل أي مفتاح أو سر إلزامي. قد تتطلب بعض الميزات حسابًا لدى الخدمة التي يتصل بها.

هل MarkView مفتوح المصدر؟

نعم. شيفرته متاحة على GitHub بترخيص MIT.

من يصون MarkView؟

ينشره paulhkang94. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.

من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.