bugsink-mcp
bugsink-mcp
Bugsink(セルフホスト型、Sentry プロトコル互換のエラートラッカー)向けの、読み書き両対応のフル MCP サーバーです。Bugsink の /api/canonical/0/ OpenAPI スキーマに対して直接構築しています。
このサーバーが存在するのは、npm 上の既存の bugsink-mcp パッケージが API の読み取り側(list/get)しかラップしていないためです。こちらは canonical API のフルサーフェスをカバーします。イシューの解決、ミュート、再オープン、削除、コメント、チーム・プロジェクト・リリースの作成/更新に加え、オリジナルに対するいくつかの正確性の修正も含みます(オリジナルからの修正を参照してください)。
セットアップ
Node.js 18.17 以上が必要です。
Bugsink で Account Settings → Auth Tokens に移動し、トークンを作成します。
サーバーを MCP クライアントに追加します。
Claude Code
claude mcp CLI を使ったワンライナーは次のとおりです:
claude mcp add bugsink \
-e BUGSINK_URL=https://bugs.example.com \
-e BUGSINK_TOKEN=<your token> \
-- npx -y github:fers4t/bugsink-mcpこれは、以下の内容と同等の設定を ~/.claude.json に書き込みます(ユーザーローカル設定の代わりに共有 .mcp.json に書き込みたい場合は --scope project を渡します):
{
"mcpServers": {
"bugsink": {
"type": "stdio",
"command": "npx",
"args": ["-y", "github:fers4t/bugsink-mcp"],
"env": {
"BUGSINK_URL": "https://bugs.example.com",
"BUGSINK_TOKEN": "<your token>"
}
}
}
}その後、Claude Code を再起動します(または新しいセッションを開始します)。MCP ツールの一覧はセッション開始時に読み込まれるため、セッション途中の設定変更は反映されません。
その他の MCP クライアント
mcpServers マップを読み取るクライアント(Cursor、Windsurf など)は、上記と同じ JSON 構造を使用できます。command: npx、args: ["-y", "github:fers-refer/bugsink-mcp"] を指定し、2 つの必須環境変数を設定してください。
npx は GitHub から直接インストールし(npm への publish は行いません)、初回利用時に prepare スクリプトを実行して TypeScript をコンパイルし、以降の起動ではローカルキャッシュを再利用します。
環境変数
変数 | 必須 | 説明 |
| はい | Bugsink インスタンスのベース URL(例: |
| はい | 個人用 API トークン(Bearer 認証) |
| いいえ | リクエストごとのタイムアウト(ミリ秒)(デフォルト |
.env.example を参照してください。実際のトークンはコミットしないでください。サーバーは環境変数からのみトークンを読み取ります。
Related MCP server: Sierra Navigator Cloud
ツール
接続確認
| ツール | 説明 --- | --------------------------------------------------------------- |
| test_connection | URL とトークンが機能するか検証し、可視のチーム数を報告する |
チーム
| ツール | 説明 -- | -------------------------------------- |
| list_teams | すべてのチームを一覧取得 |
| get_team | UUID でチームを取得 |
| create_team | チームを作成 |
| update_team | チーム名の変更または可視性の変更 |
プロジェクト
ツール | 説明 |
| プロジェクトを一覧取得(チームでフィルタリング可能) |
| プロジェクトを取得(DSN を含む。オプションでチームを展開) |
| チームの下にプロジェクトを作成 |
| 名前/可視性/アラートフラグ / 保持期間 / チームを更新 |
イシュー
ツール | 説明 |
| プロジェクトのイシューを一覧取得( |
| UUID または見つかりやすい ID(例: |
| イシューとそのイベントを不可逆的に削除します |
| 今すぐ解決する |
| 解決する。後続のリリースが再度報告された場合は回帰する |
| 現在の最新リリース時点で解決済みとして解決する |
| 解決済みのイシューを再オープン |
| 無期限にミュート |
| N 期間(例: 3 日間)ミュートする |
| 期間内にイベント数のしきい値を越えるまでミュートする |
| ミュートを解除 |
| イシューにコメントを追加 |
イベント
ツール | 説明 |
| イシューのイベント(発生)を一覧取得 |
| タグ/コンテキスト / 生ペイロードを含む完全なイベント情報を取得 |
| イベントの Markdown 変換済みスタックトレースを取得する |
リリース
ツール | 説明 |
| プロジェクトのリリースを一覧取得 |
| リリースを UUID で取得 |
| リリースを作成する( |
オリジナルからの修正
get_stacktraceが実際に動作します。 スタックトレースのエンドポイントは JSON ではなくtext/markdownを返します。オリジナルのパッケージは無条件にres.json()を呼び出し、毎回Unexpected token '#', "# TypeError"... is not valid JSONをスローしていました。このサーバーはそのエンドポイントをテキストとして読み取ります。書き込みサポート: イシューの解決/ミュート/再オープン / 削除/コメント、およびチーム/プロジェクト / リリースの作成/更新をカバーします。読み取り専用のオリジナルでは一切公開されていませんでした。
タイムアウトの制限: すべてのリクエストで
AbortSignal.timeout(デフォルト 15 秒)を使用し、上流側がハングしても MCP プロセスが無期限にハングしないようにします。安全なリトライ: 冪等リクエスト(
GET)には、502/503/504やネットワーク障害時、変動(jitter)付きの指数バックオフを制限付きで適用します。変更を伴うリクエスト(POST/PATCH/DELETE)は一切自動リトライしません。応答が失われただけの書き込みをリトライすると、副作用(例: 同じコメントの二重登録)が発生する可能性があるからです。入力検証: すべてのツール引数を Zod で検証します(数値 ID、UUID、列挙値)。不正な入力は API 通信に入る前に、明確なメッセージでローカル拒否されます。
出力に秘密情報を出しません。 エラーでは HTTP ステータスと切り詰めたレスポンスボディを報告します。
Authorizationヘッダーの値はログや例外に一切含まれません。
セキュリティに関する注意
これはローカル stdio プロセスで、ネットワークリスナーを開きません。アクセス制御はお使いの MCP クライアントが提供するものに加え、
BUGSINK_TOKENの保持に依存します。診断情報はすべて
stderrに送ります。stdoutは JSON-RPC プロトコルのストリーム用に予約しています。BUGSINK_URLはhttp:もしくはhttps:である必要があります。非ローカルホストへの平文 HTTP は警告を表示します(トークンが暗号化されず送信されます)が、内部ネットワークをサポートするためブロックはしません。BUGSINK_TOKENは他の認証情報と同様に扱ってください。バージョン管理に組み込まず、万一漏えた場合は Bugsink でローテーションをかけてください。ワークフローで許可される最も低い権限のユーザーにスコープしてください。
開発
npm install # installs deps and runs the TypeScript build (prepare script)
npm run typecheck
npm run build # compile src/ -> dist/
npm run dev # watch modeライセンス
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceMCP server providing full coverage of the Huly SDK — issues, projects, workspaces, members, and account management.901MIT
- FlicenseNot gradedqualityBmaintenanceHosted, OAuth-secured MCP server that drives the Sierra Interactive real-estate admin backend, enabling reads, guarded writes, and identity-locked deletes over HTTP without a browser.
- AlicenseNot gradedqualityBmaintenanceHosted MCP server that exposes your self-hosted Bugsink error tracker as tools for LLMs, enabling issue management, release tracking, and stacktrace retrieval via chat prompts.877MIT
- FlicenseAqualityBmaintenanceA lightweight MCP server for tracking bugs and tasks across coding sessions, providing persistent SQLite-backed storage and six tools for logging, inspecting, updating, resolving, and deleting bugs.61
Related MCP Connectors
MCP server for InsForge BaaS — database, storage, edge functions, and deployments
A MCP server built for developers enabling Git based project management with project and personal…
MCP server for interacting with the Supabase platform
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/fers4t/bugsink-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server