view-image-mcp
by yamalab
README.md
# view-image-mcp
Claude Code から画像をターミナル内にインライン表示する MCP サーバー。
Kitty グラフィクスプロトコルを使用して、Ghostty や Kitty などの対応ターミナル上で画像を直接表示します。
## 対応環境
- **OS:** macOS
- **ターミナル:** Ghostty, Kitty(Kitty グラフィクスプロトコル対応ターミナル)
- **ランタイム:** Node.js v18+
## 対応フォーマット
| フォーマット | 対応方法 |
|---|---|
| PNG | そのまま表示 |
| JPEG | `sips` で PNG に変換して表示 |
| GIF | `sips` で PNG に変換して表示 |
| WebP | `sips` で PNG に変換して表示 |
## インストール
```bash
git clone <repository-url>
cd view-image-mcp
npm install
```
## Claude Code への登録
```bash
claude mcp add view-image node /path/to/view-image-mcp/index.js
```
または `~/.claude.json` に直接追記:
```json
{
"mcpServers": {
"view-image": {
"command": "node",
"args": ["/path/to/view-image-mcp/index.js"]
}
}
}
```
## 使い方
Claude Code 上で画像ファイルの表示を依頼すると、`view_image` ツールが呼ばれてターミナルにインライン表示されます。
```
> この画像を表示して: /path/to/screenshot.png
```
### ツール: `view_image`
| パラメータ | 型 | 説明 |
|---|---|---|
| `path` | string | 画像ファイルのパス(絶対パスまたは相対パス) |
## 仕組み
```
Claude Code ←(stdio JSON-RPC)→ MCP Server
│
├─ 画像ファイルを読み込み
├─ 必要に応じて PNG に変換 (sips)
├─ Base64 エンコード + チャンク分割
└─ /dev/tty に Kitty グラフィクスプロトコルで書き込み
│
▼
ターミナルにインライン表示
```
MCP サーバーの `stdout` は Claude Code との JSON-RPC 通信に使われるため、画像データは `/dev/tty` に直接書き込むことでターミナルに表示しています。
## ライセンス
MIT
TDQS
A3.7/5.0
Scored across 1 tool
Disambiguation5/5
With only one tool, there is no possibility of confusion or overlap between tools. The tool 'view_image' has a single, clearly defined purpose.
Naming Consistency5/5
The single tool name 'view_image' follows a clear verb_noun pattern, and with only one tool, consistency is inherently perfect.
Tool Count2/5
A single tool is too few for most server purposes, as it limits functionality and flexibility. For an image viewing server, this feels thin and under-scoped.
Completeness2/5
The server's domain appears to be image viewing, but with only a display tool, there are significant gaps such as listing images, resizing, converting formats, or handling metadata, which agents might need for full workflows.
Maintenance
ActivityInactive
ResponsivenessNo issues