anthropics / anthropics/claude-code

Atlassian connector widgets render with a white background in dark mode and are always expanded inline

Open
#94,841 1 comment 0 reactions 0 assignees View on GitHub
area:desktop area:mcp area:ui bug platform:macos
Dominant language
Python
Stars
145k
Forks
23.1k
PR merge metrics
PR metrics pending

Description

### What's Wrong?

Every tool call to the Atlassian (Jira) claude.ai connector renders an inline card
labelled "Widget from Atlassian ``" in the Claude Code desktop app. Two
independent problems with it:

1. **The card ignores the app theme.** It is drawn with a white/near-white background
and light grey text, inside a dark-themed UI. The contrast is poor, the text is hard
to read, and the block is visually jarring against the rest of the transcript.

2. **The card is always expanded.** It renders in full on every call, including when a
ticket is only referenced in passing. There is no way to get a one-line reference
that expands on click.

In one session with roughly eight Jira calls the transcript became difficult to read
back, because every call contributed another large, low-contrast block.

### What Should Happen?

Either of these would resolve it, and both would be better:

- The widget follows the app's light/dark theme.
- The widget renders collapsed by default and expands on click, the way the ordinary
`Used : ` rows already behave.

A setting controlling inline MCP widget rendering would also be sufficient.

### Steps to Reproduce

1. Use the Claude Code desktop app with a dark theme.
2. Enable the Atlassian claude.ai connector.
3. Ask Claude to do anything that calls a Jira tool, e.g. read an issue.
4. A "Widget from Atlassian getJiraIssue" card renders inline, white-on-dark and fully
expanded.

### Additional context: no setting controls this

I looked for a way to turn the rendering off, and there does not appear to be one:

- `~/.claude/settings.json` — nothing display-related
- project `.claude/settings.json` and `settings.local.json` — nothing
- the desktop app's own preferences — 26 keys covering browser tools, scheduled tasks,
sidebar mode and permissions; nothing about MCP widget display

`mcp-user-tool-toggles.json` can disable individual MCP tools, but that removes the tool
itself rather than its rendering.

### Workaround

Disable the Atlassian connector entirely and configure the Atlassian MCP server directly
instead:

```
claude mcp add --scope user --transport http atlassian https://mcp.atlassian.com/v1/mcp
```

Same Jira site, same tools, and its results render as an ordinary collapsed tool row.

Worth noting: "disable the connector" is implemented by writing all 41 of the connector's
tool names into `mcp-user-tool-toggles.json`, rather than as a single connector-level
flag. A newly added connector tool would therefore not be covered by an existing toggle.

This is a poor workaround regardless, because it means giving up the connector in order
to control its presentation.

### Claude Code Version

2.1.156

### Is this a regression?

Unsure. The widgets appeared recently, but I do not have a specific last-working version
to cite.

### Environment

- Claude Code desktop app (Code tab), version 2.1.156
- macOS (Darwin 25.6.0), Apple Silicon
- Theme: auto, resolving to dark

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reproducing the Atlassian connector behavior in the Claude Code desktop app's Code tab with a dark theme, then compare it with the direct Atlassian MCP server workaround. The payload names no implementation file or test; review the relevant rendering entry point and existing collapsed tool-row behavior. Done means connector widgets respect the theme and/or collapse by default without disabling the connector.

Written by the indexing model from the issue text.

Assessment

Tech stack
macos
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
32/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.