[BUG] Projects (beta) threads: card widgets have no input schemas and bad input fails silently

Status Closed — not planned
Reported on v2.1.288
Maintainer reply None cached
Activity 1 comment · opened Oct 2, 2026 · closed Oct 5, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

In a thread in the new Projects (beta), Claude posts display cards through a single post_widget tool. That tool lists the card names (chart_display_v0, comparison_card_display_v0, featured_card_display_v0, itinerary_display_v0, link_preview_display_v0, options_card_display_v0, places_list_display_v0, product_carousel_display_v0, step_card_display_v0, writing_draft_v0) but gives the model no input schema for any of them except the writing draft. Claude told me it had to guess the fields.

The tool also accepts any non-empty object and returns success, so wrong guesses fail silently. I asked for one sample of each card and got:

  • Chart, comparison, link preview, featured item, itinerary: no card at all, only the one-line fallback caption.
  • Options: a title and three empty boxes.
  • Product carousel: names and prices, no descriptions.
  • Step list, places list, writing draft: fine.

Claude could not tell any of this had happened until I sent screenshots.

What Should Happen?

Thread sessions should get the same per-card input schemas that regular Claude sessions have (there they are separate mcp__widgets__* tools with full schemas), and post_widget should reject input that does not match so Claude can correct itself.

I confirmed the renderer itself works: I asked a regular Claude session to print the exact schemas for the same cards, pasted them into the thread, and Claude reposted all seven broken cards. Every one rendered correctly.

Error Messages/Logs

_No response_

Steps to Reproduce

  1. In the Claude desktop app, open a project (the new Projects beta) and start a thread. Mine was a local thread running on my own Mac.
  2. Ask: "Post one sample of every card type you can show here."
  3. Look at the result. Several cards show only a caption line, or draw with empty sections.
  4. Ask Claude what fields each card expects. It only knows the card names.
  5. Paste in the real schemas from a regular Claude session and ask it to retry. All cards now render.

Claude Model

Opus

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.288 (Claude Code)

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Other

Additional Information

Screenshots of before and after below:
Before:
<img width="1914" height="764" alt="Image" src="https://github.com/user-attachments/assets/0200d9a8-1af1-4ef8-ba6b-342118a6f18d" />

After:
<img width="1898" height="1576" alt="Image" src="https://github.com/user-attachments/assets/ce0e4892-63ec-4e33-9004-eec107428e08" />

Observed on 2.1.283, updated to 2.1.288 before filing. macOS 27.0. Tested Oct 2, 2026.

Related gaps I noticed in Projects (beta) threads while testing (happy to file separately):

  • Threads lack several cards that regular sessions have: message_compose_v1 (email and message draft), places_map_display_v0, quiz_display_v0, recipe_display_v0, translation_display_v0, weather_fetch, fetch_sports_data, image_search.
  • The writing draft card does not show the title Claude gives it.
  • The options card always shows a medical disclaimer, even for non-health topics.
  • There is no thumbs up or thumbs down button in project threads, so there is no in-app way to report any of this.

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗