Skip to content

[FEATURE]: Implement MCP Apps AppBridge same-server authorization path #4970

Description

@vishu-bh

Parent epic: #2527

User Story

As an MCP App developer, I want AppBridge calls to tools/resources to be authorized through the same server and session context so that apps cannot cross boundaries or bypass RBAC.

One-Week Deliverable

Implement the server-side AppBridge authorization/routing path for app-originated JSON-RPC calls under generic extension governance.

Acceptance Criteria

  • UI view sessions bind app calls to a specific server, UI resource, caller, token scope, team scope, and MCP session.
  • AppBridge tools/call and resources/read enforce same-server constraints.
  • RBAC, token scoping, extension enabled state, server visibility, and tool/resource visibility are checked before execution.
  • App-originated calls run through plugin, sanitizer, audit, and observability hooks.
  • Cross-server app calls are denied and audited.
  • Expired, missing, forged, disabled-extension, wrong-team, and insufficient-permission UI sessions are denied.
  • Tests cover allowed same-server calls, cross-server deny, expired session deny, disabled extension deny, wrong-team deny, and insufficient-permission deny.

Demo

From a simulated app session, call an allowed same-server tool successfully, then attempt a cross-server call and show it denied with an audit event.

Metadata

Metadata

Assignees

Labels

client-mrkHigh priority itemsenhancementNew feature or requestmcp-appsSEP-1865: MCP Apps: Interactive User Interfaces for MCPmcp-protocolAlignment with MCP protocol or specificationpythonPython / backend development (FastAPI)securityImproves securitytriageIssues / Features awaiting triage

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions