getsentry / getsentry/sentry-mcp

Explore MCP Apps UI implementations for VSCode and Claude

Open
#741 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
853
Forks
144
Avg merge
19h 25m
Merged PRs (30d)
32

Description

## Summary

Anthropic announced MCP Apps (January 26, 2026), extending MCP to support interactive UI elements within chat windows. We should explore implementing MCP Apps for Sentry MCP to provide richer tool interactions.

## Background

MCP Apps allows MCP servers to deliver interactive UI elements (charts, forms, dashboards) that hosts render in-conversation rather than returning data alone. This is now supported in:

- **Claude** (web and desktop)
- **VS Code Insiders** (built-in MCP Apps support)
- **Goose**
- **ChatGPT** (rolling out)

## Technical Overview

### How MCP Apps Works

1. **Tools declare UI metadata**: Tools include a `_meta.ui.resourceUri` field pointing to a UI resource
2. **UI Resources**: Server-side resources served via `ui://` scheme containing bundled HTML/JavaScript
3. **Sandboxed rendering**: Host fetches the UI resource and renders it in a sandboxed iframe
4. **Bidirectional communication**: JSON-RPC over `postMessage` for UI-host communication

### Tool Declaration Example

```javascript
{
name: "visualize_data",
description: "Visualize data as an interactive chart",
inputSchema: { /* ... */ },
_meta: {
ui: {
resourceUri: "ui://charts/interactive"
}
}
}
```

### App API

The `@modelcontextprotocol/ext-apps` package provides an App class supporting:
- Receiving tool results from the host
- Calling server tools from the UI
- Updating model context with user interactions

### Security Model

- Iframe sandboxing with restricted permissions
- Pre-declared templates (hosts can review HTML before rendering)
- Auditable JSON-RPC messages
- User consent requirements for UI-initiated tool calls

## Potential Use Cases for Sentry MCP

- **Issue visualization**: Interactive charts showing error trends, frequency, affected users
- **Stack trace explorer**: Collapsible/expandable stack frames with syntax highlighting
- **Event timeline**: Visual timeline of events leading to an error
- **Performance spans**: Waterfall visualization for trace spans
- **Triage forms**: Interactive forms for assigning issues, updating status
- **Dashboard widgets**: Mini-dashboards showing project health at a glance

## VS Code Specific Notes

VS Code Insiders (v1.109) added:
- Built-in MCP Apps support with custom UI for tool invocation
- Dynamic context updates via model context update methods
- `registryBaseUrl` setting for custom MCP package registries
- `workbench.mcp.startserver` command for server discovery

## Resources

- [MCP Apps Blog Post](http://blog.modelcontextprotocol.io/posts/2026-01-26-mcp-apps/)
- [VS Code January 2026 Release Notes](https://code.visualstudio.com/updates/v1_109)
- [The Register Coverage](https://www.theregister.com/2026/01/26/claude_mcp_apps_arrives/)

## Tasks

- [ ] Review MCP Apps specification in detail
- [ ] Evaluate `@modelcontextprotocol/ext-apps` package
- [ ] Identify highest-value Sentry tools for UI enhancement
- [ ] Prototype a simple MCP App (e.g., issue details viewer)
- [ ] Test across Claude, VS Code, and other supported clients

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.