Skip to content

Commit c4053e8

Browse files
yotsudaclaude
andcommitted
Add npm package for markdown-pointer MCP server
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 7e0541c commit c4053e8

4 files changed

Lines changed: 175 additions & 0 deletions

File tree

npm/LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2025-2026 Yoshifumi Tsuda
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

npm/README.md

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
# MarkdownPointer
2+
3+
**Vibe writing for Markdown.** Point at anything, tell AI to fix it.
4+
5+
MarkdownPointer renders your Markdown and lets you click any element — headings, code blocks, table cells, Mermaid diagram nodes, KaTeX math — to copy a `filepath:line` reference. Paste it into your AI prompt, and the AI knows exactly where to look. This npm package bundles the MCP server and the viewer app — no separate installation needed.
6+
7+
<div align="center">
8+
<img width="640" alt="social-image" src="https://github.com/user-attachments/assets/cdae3548-1e23-4639-9b38-3e03c5c2a337" />
9+
</div>
10+
11+
## Install
12+
13+
### Claude Code
14+
15+
```bash
16+
claude mcp add mdp -- npx -y markdown-pointer
17+
```
18+
19+
### Claude Desktop
20+
21+
Add to your Claude Desktop config (`%APPDATA%\Claude\claude_desktop_config.json`):
22+
23+
```json
24+
{
25+
"mcpServers": {
26+
"mdp": {
27+
"command": "npx",
28+
"args": ["-y", "markdown-pointer"]
29+
}
30+
}
31+
}
32+
```
33+
34+
### Other MCP Clients
35+
36+
Use `npx -y markdown-pointer` as the command in your MCP client's configuration.
37+
38+
## Usage
39+
40+
Ask Claude:
41+
42+
- "open README.md in mdp"
43+
- "show the report in mdp and scroll to line 50"
44+
- "export report.md to docx"
45+
- "export slides.md to pptx"
46+
- "import presentation.pptx to markdown"
47+
- "show me slide 3 of slides.md"
48+
49+
## MCP Tools
50+
51+
| Tool | Description |
52+
|------|-------------|
53+
| `show_markdown` | Open files and scroll to a line |
54+
| `get_status` | Get current window/tab state |
55+
| `slide_control` | Navigate reveal.js slides |
56+
| `get_slide_info` | Get slide shapes and content as text |
57+
| `get_slide_image` | Get a slide as PNG image (requires PowerPoint) |
58+
| `export_document` | Export to .pptx (built-in) or .docx (Pandoc) |
59+
| `import_document` | Import .docx/.pptx to Markdown + extract images |
60+
| `tag_asset` | Tag imported files and images in index.json |
61+
62+
## Features
63+
64+
| Feature | Description |
65+
|---------|-------------|
66+
| Point & Prompt | Click any rendered element to copy `filepath:line` to clipboard |
67+
| Mermaid Diagrams | Flowchart, Sequence, Class, State, ER, Gantt, Pie, Git graph, Mindmap |
68+
| KaTeX Math | Inline `$...$` and block `$$...$$` |
69+
| SVG | Embedded font support |
70+
| Live Reload | Auto-refresh on file changes |
71+
| Export | `.pptx` (built-in Open XML), `.docx` (via Pandoc). Mermaid/SVG rendered as images |
72+
73+
## Requirements
74+
75+
- Windows 10/11
76+
- [.NET 10 Desktop Runtime](https://dotnet.microsoft.com/download/dotnet/10.0)
77+
78+
## Also Available
79+
80+
Install via [PowerShell Gallery](https://www.powershellgallery.com/packages/MarkdownPointer) for PowerShell integration:
81+
82+
```powershell
83+
Install-Module MarkdownPointer
84+
```
85+
86+
## License
87+
88+
MIT

npm/cli.mjs

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
#!/usr/bin/env node
2+
3+
import { spawn } from "child_process";
4+
import { fileURLToPath } from "url";
5+
import { dirname, join } from "path";
6+
7+
const __dirname = dirname(fileURLToPath(import.meta.url));
8+
const exe = join(__dirname, "bin", "mdp-mcp.exe");
9+
10+
const child = spawn(exe, process.argv.slice(2), {
11+
stdio: "inherit",
12+
windowsHide: true,
13+
});
14+
15+
child.on("exit", (code) => process.exit(code ?? 1));
16+
child.on("error", (err) => {
17+
if (err.code === "ENOENT") {
18+
console.error(
19+
"MarkdownPointer MCP server not found. This package requires Windows and .NET 10 Desktop Runtime.\n" +
20+
"Download: https://dotnet.microsoft.com/download/dotnet/10.0"
21+
);
22+
} else {
23+
console.error(err.message);
24+
}
25+
process.exit(1);
26+
});

npm/package.json

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
{
2+
"name": "markdown-pointer",
3+
"version": "0.13.1",
4+
"description": "MCP server for MarkdownPointer - A Markdown viewer with point-and-prompt, Mermaid, KaTeX, and PPTX export",
5+
"license": "MIT",
6+
"author": "Yoshifumi Tsuda",
7+
"repository": {
8+
"type": "git",
9+
"url": "https://github.com/yotsuda/MarkdownPointer.git"
10+
},
11+
"homepage": "https://github.com/yotsuda/MarkdownPointer",
12+
"keywords": [
13+
"mcp",
14+
"mcp-server",
15+
"markdown",
16+
"viewer",
17+
"preview",
18+
"mermaid",
19+
"katex",
20+
"pptx",
21+
"slides",
22+
"claude"
23+
],
24+
"type": "module",
25+
"os": [
26+
"win32"
27+
],
28+
"engines": {
29+
"node": ">=18"
30+
},
31+
"bin": {
32+
"markdown-pointer": "cli.mjs"
33+
},
34+
"files": [
35+
"cli.mjs",
36+
"bin/",
37+
"README.md",
38+
"LICENSE"
39+
]
40+
}

0 commit comments

Comments
 (0)