OpenFairyGUI API
    Preparing search index...

    Interface CreateOpenFairyGuiMcpServerOptions

    interface CreateOpenFairyGuiMcpServerOptions {
        allowedProjectRoots?: readonly string[];
        instructions?: string;
        name?: string;
        publish?: (
            input: {
                outputDirectory: string;
                packageNames?: string[];
                projectPath: string;
            },
        ) => Promise<
            {
                _meta?: {
                    "io.modelcontextprotocol/related-task"?: { taskId: string };
                    progressToken?: string | number;
                    [key: string]: unknown;
                };
                content: (
                    | {
                        _meta?: { [key: string]: unknown };
                        annotations?: {
                            audience?: (...)[];
                            lastModified?: string;
                            priority?: number;
                        };
                        text: string;
                        type: "text";
                    }
                    | {
                        _meta?: { [key: string]: unknown };
                        annotations?: {
                            audience?: (...)[];
                            lastModified?: string;
                            priority?: number;
                        };
                        data: string;
                        mimeType: string;
                        type: "image";
                    }
                    | {
                        _meta?: { [key: string]: unknown };
                        annotations?: {
                            audience?: (...)[];
                            lastModified?: string;
                            priority?: number;
                        };
                        data: string;
                        mimeType: string;
                        type: "audio";
                    }
                    | {
                        _meta?: { [key: string]: unknown };
                        annotations?: {
                            audience?: (...)[];
                            lastModified?: string;
                            priority?: number;
                        };
                        description?: string;
                        icons?: {
                            mimeType?: (...)
                            | (...);
                            sizes?: (...) | (...);
                            src: string;
                            theme?: (...) | (...) | (...);
                        }[];
                        mimeType?: string;
                        name: string;
                        size?: number;
                        title?: string;
                        type: "resource_link";
                        uri: string;
                    }
                    | {
                        _meta?: { [key: string]: unknown };
                        annotations?: {
                            audience?: (...)[];
                            lastModified?: string;
                            priority?: number;
                        };
                        resource: | {
                            _meta?: { [key: ...]: ... };
                            mimeType?: string;
                            text: string;
                            uri: string;
                        }
                        | {
                            _meta?: { [key: ...]: ... };
                            blob: string;
                            mimeType?: string;
                            uri: string;
                        };
                        type: "resource";
                    }
                )[];
                isError?: boolean;
                structuredContent?: { [key: string]: unknown };
                [key: string]: unknown;
            },
        >;
        runtime?: OpenFairyGuiBackendRuntime;
        toolPolicies?: Partial<
            Record<
                | "openfairygui_backend_get_capabilities"
                | "openfairygui_backend_open_session"
                | "openfairygui_backend_open_project_session"
                | "openfairygui_backend_get_session"
                | "openfairygui_backend_get_project_outline"
                | "openfairygui_backend_query_entity"
                | "openfairygui_backend_read_session_state"
                | "openfairygui_backend_read_resource_bytes"
                | "openfairygui_backend_validate_session"
                | "openfairygui_backend_preflight_transaction"
                | "openfairygui_backend_apply_transaction"
                | "openfairygui_backend_save_session"
                | "openfairygui_backend_materialize_session"
                | "openfairygui_backend_close_session"
                | "openfairygui_backend_get_events"
                | "openfairygui_backend_get_cache_snapshot"
                | "openfairygui_backend_refresh_cache",
                OpenFairyGuiMcpToolPolicy,
            >,
        >;
        version?: string;
    }
    Index
    allowedProjectRoots?: readonly string[]

    Filesystem roots exposed by the default Node backend runtime. Defaults to process.cwd().

    instructions?: string

    Host guidance returned by the SDK initialize handshake.

    name?: string
    publish?: (
        input: {
            outputDirectory: string;
            packageNames?: string[];
            projectPath: string;
        },
    ) => Promise<
        {
            _meta?: {
                "io.modelcontextprotocol/related-task"?: { taskId: string };
                progressToken?: string | number;
                [key: string]: unknown;
            };
            content: (
                | {
                    _meta?: { [key: string]: unknown };
                    annotations?: {
                        audience?: (...)[];
                        lastModified?: string;
                        priority?: number;
                    };
                    text: string;
                    type: "text";
                }
                | {
                    _meta?: { [key: string]: unknown };
                    annotations?: {
                        audience?: (...)[];
                        lastModified?: string;
                        priority?: number;
                    };
                    data: string;
                    mimeType: string;
                    type: "image";
                }
                | {
                    _meta?: { [key: string]: unknown };
                    annotations?: {
                        audience?: (...)[];
                        lastModified?: string;
                        priority?: number;
                    };
                    data: string;
                    mimeType: string;
                    type: "audio";
                }
                | {
                    _meta?: { [key: string]: unknown };
                    annotations?: {
                        audience?: (...)[];
                        lastModified?: string;
                        priority?: number;
                    };
                    description?: string;
                    icons?: {
                        mimeType?: (...)
                        | (...);
                        sizes?: (...) | (...);
                        src: string;
                        theme?: (...) | (...) | (...);
                    }[];
                    mimeType?: string;
                    name: string;
                    size?: number;
                    title?: string;
                    type: "resource_link";
                    uri: string;
                }
                | {
                    _meta?: { [key: string]: unknown };
                    annotations?: {
                        audience?: (...)[];
                        lastModified?: string;
                        priority?: number;
                    };
                    resource: | {
                        _meta?: { [key: ...]: ... };
                        mimeType?: string;
                        text: string;
                        uri: string;
                    }
                    | {
                        _meta?: { [key: ...]: ... };
                        blob: string;
                        mimeType?: string;
                        uri: string;
                    };
                    type: "resource";
                }
            )[];
            isError?: boolean;
            structuredContent?: { [key: string]: unknown };
            [key: string]: unknown;
        },
    >

    Explicit host-owned publishing authority. Absent by default; host validates paths, permissions and plugin policy.

    toolPolicies?: Partial<
        Record<
            | "openfairygui_backend_get_capabilities"
            | "openfairygui_backend_open_session"
            | "openfairygui_backend_open_project_session"
            | "openfairygui_backend_get_session"
            | "openfairygui_backend_get_project_outline"
            | "openfairygui_backend_query_entity"
            | "openfairygui_backend_read_session_state"
            | "openfairygui_backend_read_resource_bytes"
            | "openfairygui_backend_validate_session"
            | "openfairygui_backend_preflight_transaction"
            | "openfairygui_backend_apply_transaction"
            | "openfairygui_backend_save_session"
            | "openfairygui_backend_materialize_session"
            | "openfairygui_backend_close_session"
            | "openfairygui_backend_get_events"
            | "openfairygui_backend_get_cache_snapshot"
            | "openfairygui_backend_refresh_cache",
            OpenFairyGuiMcpToolPolicy,
        >,
    >

    Per-tool Host failures do not change the canonical Backend contracts.

    version?: string