McpServer.Resource.Meta.UI (HTTP MCP Server v0.8.0)

View Source

UI metadata for resource definitions.

Configures Content Security Policy, sandbox permissions, and rendering preferences for UI resources (resources with ui:// URIs). This struct is used as the ui field inside _meta when attached to resources.

Fields

  • csp - Content Security Policy configuration (McpServer.Resource.Meta.UI.CSP)
  • permissions - Sandbox permissions (McpServer.Resource.Meta.UI.Permissions)
  • domain - Optional dedicated domain for the view's sandbox origin
  • prefers_border - Visual boundary preference:
    • true - Request visible border and background
    • false - Request no visible border or background
    • nil - Let host decide

Examples

iex> McpServer.Resource.Meta.UI.new(
...>   csp: McpServer.Resource.Meta.UI.CSP.new(
...>     connect_domains: ["api.weather.com"],
...>     resource_domains: ["cdn.weather.com"]
...>   ),
...>   permissions: McpServer.Resource.Meta.UI.Permissions.new(camera: true),
...>   prefers_border: true
...> )
%McpServer.Resource.Meta.UI{
  csp: %McpServer.Resource.Meta.UI.CSP{
    connect_domains: ["api.weather.com"],
    resource_domains: ["cdn.weather.com"]
  },
  permissions: %McpServer.Resource.Meta.UI.Permissions{camera: true},
  prefers_border: true
}

Summary

Functions

Creates a new Resource.Meta.UI struct.

Types

t()

@type t() :: %McpServer.Resource.Meta.UI{
  csp: McpServer.Resource.Meta.UI.CSP.t() | nil,
  domain: String.t() | nil,
  permissions: McpServer.Resource.Meta.UI.Permissions.t() | nil,
  prefers_border: boolean() | nil
}

Functions

new(opts \\ [])

@spec new(keyword()) :: t()

Creates a new Resource.Meta.UI struct.

Parameters