pinboard-mcp
by ANTON072
README.md
# pinboard-mcp
Claude Desktop から [Pinboard](https://pinboard.in/) にブックマークを保存するローカル MCP サーバー。
URL を伝えるだけで、Claude が日本語要約とタグを生成して Pinboard に保存する。
## 前提条件
- macOS(Claude Desktop がインストールされていること)
- Node.js 24 以降
- pnpm 9 以降
- Pinboard の API トークン([設定画面](https://pinboard.in/settings/password)から取得)
## セットアップ
```bash
# 依存パッケージをインストール
pnpm install
# ビルド
pnpm build
```
## Claude Desktop への登録
`~/Library/Application Support/Claude/claude_desktop_config.json` の `mcpServers` に以下を追加する。
```json
{
"mcpServers": {
"pinboard-mcp": {
"command": "node",
"args": ["/path/to/pinboard-mcp/dist/index.js"],
"env": {
"PINBOARD_TOKEN": "username:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
}
}
}
```
`/path/to/pinboard-mcp` はこのリポジトリの絶対パスに置き換える。`PINBOARD_TOKEN` は `username:token` 形式(Pinboard 設定画面で確認できる値)をそのまま設定する。
設定を保存後、Claude Desktop を再起動する。
## 使い方
Claude Desktop で次のように伝えるだけでブックマークを保存できる。
> `https://example.com` をブックマークして
Claude がページを取得・要約し、ブックマーク内容を提示してから確認を求める。「はい」と答えると Pinboard に保存される。
保存されるデータ:
| 項目 | 内容 |
|---|---|
| URL | 指定した URL |
| タイトル | `<title>` タグを基に Claude が整形したタイトル |
| 要約 | 140 字以内の日本語要約 |
| タグ | 英小文字スラッグ形式のタグ(1〜5 個) |
すべてのブックマークは非公開(`shared=no`)で保存される。同一 URL が既に保存済みの場合は上書き更新される。
## 開発
```bash
# テストを実行
pnpm test
# 型チェック・Lint・テストをまとめて実行
pnpm check
# Lint と自動整形
pnpm lint:write
```
## 技術スタック
| 役割 | 採用技術 |
|---|---|
| 言語 | TypeScript 7 |
| ランタイム | Node.js 24 |
| MCP SDK | `@modelcontextprotocol/sdk` |
| バリデーション | zod |
| テスト | Vitest |
| Linter / Formatter | Biome |
選定根拠は [docs/spec/003_architecture.md](./docs/spec/003_architecture.md) 参照。
TDQS
A4.3/5.0
Scored across 1 tool
Disambiguation5/5
With only one tool, there is no possibility of confusion. save_bookmark has a single, clear purpose.
Naming Consistency5/5
The single tool name follows a clear verb_object convention. There are no other tools to introduce naming inconsistency.
Tool Count3/5
One tool is a thin but not absurd surface for a bookmarking service. It can support a narrow save-only workflow but feels limited for a full Pinboard MCP.
Completeness2/5
The Pinboard domain normally includes listing, updating, deleting, and searching bookmarks and tags. With only save_bookmark, users can create bookmarks but not retrieve or manage them, creating significant dead ends.
Maintenance
ActivitySlowing
ResponsivenessNo issues