Skip to content

Feature Request: Contextual Inline Citations with Modal/Dialog Popups for MCP Apps #598

@xuetaofeng

Description

@xuetaofeng

Is your feature request related to a problem? Please describe.
Currently, MCP (Model Context Protocol) Apps are limited in how they trigger interactive UIs. While a tool can return a _meta.ui object that renders a widget below the text or in a sidebar, there is no standardized way to trigger specific UI states or "pop-up" dialogs directly from the LLM-generated text.
I'm frustrated when AI-generated answers provide citations or deep-dive points, but the user has to scroll down to a separate "App" area or side panel to see the source. This breaks the conversational flow and makes fine-grained citations (per-sentence or per-word) difficult to implement interactively.
Describe the solution you'd like
I would like to see support for Interactive Inline UI Links within the LLM-generated response. Specifically:

  1. URI-based Triggers: Support for a custom protocol (e.g., mcp://ui/ or app-name://) in Markdown links that the Host (ChatGPT/Claude) recognizes.
  2. Event Handling: When a user clicks or hovers over an inline link (like [1](mcp://ui/citation?id=chunk_1)), the Host should parse this as an MCP UI request rather than an external web link.
  3. Modal/Dialog Rendering: The Host should then trigger the UI defined in the MCP App's resourceUri, opening a Modal/Dialog that displays the specific data (e.g., a citation chunk) passed via query parameters.
    Describe alternatives you've considered
  • Static Markdown: Providing a standard https:// link, which forces the user to leave the Chat interface and open a new browser tab.
  • Post-processing UI: Returning a large "Citation List" widget at the end of the message. This works for general sources but is cluttered and lacks the "contextual pop-up" feel of modern research tools (like Perplexity or Elicit).
    Additional context
    Imagine the LLM generates the following response after calling an MCP tool:

"Traditional MCP tools return text, images, or resources that the host displays as part of the conversation [[1]](mcp://ui/view_source%3Fid%3Dsrc_01). MCP Apps extend this pattern by allowing tools to declare a reference to an interactive UI[+] [[2]](mcp://ui/view_source%3Fid%3Dsrc_02)."[/+][-] **[[2]]."[/-]
When the user clicks on [1] or [2], instead of a page navigation, the Host should overlay a Citation Dialog (rendered via the MCP App's iframe) showing the specific document title and text chunk associated with that ID. This creates a seamless bridge between generated text and the underlying structured data provided by MCP.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions