MediaSFU

Video, voice, AI agent and SIP calls: create rooms, place calls, read recordings and usage.

我该使用它吗

质量与安全性

B
描述质量
65%
模式完整度
78%
命名质量
47%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

发现(317)

  • LOWTool 'android::sdk.recommend' description lacks action verb在 android::sdk.recommend 中
  • LOWTool 'android::app.scaffold' description lacks action verb在 android::app.scaffold 中
  • LOWTool 'android::integration.plan' description lacks action verb在 android::integration.plan 中
  • LOWTool 'android::env.preflight' description lacks action verb在 android::env.preflight 中
  • LOWTool 'android::room.bootstrap' description lacks action verb在 android::room.bootstrap 中
  • LOWTool 'android::feature.map' description lacks action verb在 android::feature.map 中
  • LOWTool 'android::fix.suggest' description lacks action verb在 android::fix.suggest 中
  • LOWTool 'android::room.flow.explain' description lacks action verb在 android::room.flow.explain 中
  • LOWTool 'android::ui.mode.recommend' description lacks action verb在 android::ui.mode.recommend 中
  • LOWTool 'android::ui.overrides.guide' description lacks action verb在 android::ui.overrides.guide 中

基于对工具定义和协议合规性的自动分析。

上下文开销

~13,491token 数(工具定义)
~699 B典型响应大小
对注意力有显著影响(占 128k 上下文窗口的 10.54%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "mcp-sdk-tools": {
      "command": "npx",
      "args": [
        "@mediasfu/mcp-sdk-tools"
      ]
    }
  }
}

可运行的软件包

npm@mediasfu/mcp-sdk-tools1.2.0stdio

远程端点

https://mcp.mediasfu.com/mcpstreamable-http

它能做什么

工具清单

工具(159)

🟢 只读🟡 写入🔴 删除⚪ 未知
⚪android::sdk.recommend(appType, requestedFeatures)

MediaSFU Android :: sdk.recommend (advisor).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪android::app.scaffold(apply, projectRoot, overwrite, outputDir)

MediaSFU Android :: app.scaffold (scaffold).

输入模式

{
  "type": "object",
  "properties": {
    "apply": {
      "type": "boolean",
      "description": "Write generated files; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    },
    "overwrite": {
      "type": "boolean",
      "description": "Replace existing generated files. Defaults to false."
    },
    "outputDir": {
      "type": "string",
      "maxLength": 240,
      "description": "Relative directory below projectRoot. Defaults to mediasfu-generated/<sdk>."
    }
  },
  "additionalProperties": false
}
⚪android::integration.plan(appType, backendMode, requestedFeatures)

MediaSFU Android :: integration.plan (planner).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪android::env.preflight(execute, projectRoot)

MediaSFU Android :: env.preflight (command).

输入模式

{
  "type": "object",
  "properties": {
    "execute": {
      "type": "boolean",
      "description": "Execute the trusted manifest command; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    }
  },
  "additionalProperties": false
}
⚪android::room.bootstrap(query)

MediaSFU Android :: room.bootstrap (guide).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Optional topic to locate in the guide."
    }
  },
  "additionalProperties": false
}
⚪android::feature.map(requestedFeatures)

MediaSFU Android :: feature.map (mapper).

输入模式

{
  "type": "object",
  "properties": {
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪android::runtime.diagnose(errorText)

MediaSFU Android :: runtime.diagnose (diagnostic).

输入模式

{
  "type": "object",
  "properties": {
    "errorText": {
      "type": "string",
      "maxLength": 8000,
      "description": "Sanitized error or log excerpt."
    }
  },
  "required": [
    "errorText"
  ],
  "additionalProperties": false
}
⚪android::fix.suggest

MediaSFU Android :: fix.suggest (remediation).

输入模式

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
⚪android::api.reference.search(query)

MediaSFU Android :: api.reference.search (reference-search).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Search terms for bundled SDK references."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
⚪android::room.flow.explain(mode)

MediaSFU Android :: room.flow.explain (flow-explainer).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "create",
        "join",
        "both"
      ]
    }
  },
  "additionalProperties": false
}
⚪android::ui.mode.recommend(customizationLevel, ownershipLevel)

MediaSFU Android :: ui.mode.recommend (ui-advisor).

输入模式

{
  "type": "object",
  "properties": {
    "customizationLevel": {
      "type": "string",
      "enum": [
        "low",
        "medium",
        "high"
      ]
    },
    "ownershipLevel": {
      "type": "string",
      "enum": [
        "managed",
        "partial",
        "full"
      ]
    }
  },
  "additionalProperties": false
}
⚪android::ui.overrides.guide(mode, focus)

MediaSFU Android :: ui.overrides.guide (ui-overrides).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "maxLength": 80,
      "description": "SDK-supported UI ownership mode."
    },
    "focus": {
      "type": "string",
      "enum": [
        "branding",
        "layout",
        "cards",
        "controls",
        "headless-shell",
        "native-bridge"
      ]
    }
  },
  "additionalProperties": false
}
⚪android::security.proxy.rooms(backendMode)

MediaSFU Android :: security.proxy.rooms (security-guide).

输入模式

{
  "type": "object",
  "properties": {
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    }
  },
  "additionalProperties": false
}
⚪angular::sdk.recommend(appType, requestedFeatures)

MediaSFU Angular :: sdk.recommend (advisor).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪angular::app.scaffold(apply, projectRoot, overwrite, outputDir)

MediaSFU Angular :: app.scaffold (scaffold).

输入模式

{
  "type": "object",
  "properties": {
    "apply": {
      "type": "boolean",
      "description": "Write generated files; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    },
    "overwrite": {
      "type": "boolean",
      "description": "Replace existing generated files. Defaults to false."
    },
    "outputDir": {
      "type": "string",
      "maxLength": 240,
      "description": "Relative directory below projectRoot. Defaults to mediasfu-generated/<sdk>."
    }
  },
  "additionalProperties": false
}
⚪angular::integration.plan(appType, backendMode, requestedFeatures)

MediaSFU Angular :: integration.plan (planner).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪angular::env.preflight(execute, projectRoot)

MediaSFU Angular :: env.preflight (command).

输入模式

{
  "type": "object",
  "properties": {
    "execute": {
      "type": "boolean",
      "description": "Execute the trusted manifest command; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    }
  },
  "additionalProperties": false
}
⚪angular::room.bootstrap(query)

MediaSFU Angular :: room.bootstrap (guide).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Optional topic to locate in the guide."
    }
  },
  "additionalProperties": false
}
⚪angular::feature.map(requestedFeatures)

MediaSFU Angular :: feature.map (mapper).

输入模式

{
  "type": "object",
  "properties": {
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪angular::runtime.diagnose(errorText)

MediaSFU Angular :: runtime.diagnose (diagnostic).

输入模式

{
  "type": "object",
  "properties": {
    "errorText": {
      "type": "string",
      "maxLength": 8000,
      "description": "Sanitized error or log excerpt."
    }
  },
  "required": [
    "errorText"
  ],
  "additionalProperties": false
}
⚪angular::fix.suggest

MediaSFU Angular :: fix.suggest (remediation).

输入模式

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
⚪angular::api.reference.search(query)

MediaSFU Angular :: api.reference.search (reference-search).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Search terms for bundled SDK references."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
⚪angular::room.flow.explain(mode)

MediaSFU Angular :: room.flow.explain (flow-explainer).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "create",
        "join",
        "both"
      ]
    }
  },
  "additionalProperties": false
}
⚪angular::ui.mode.recommend(customizationLevel, ownershipLevel)

MediaSFU Angular :: ui.mode.recommend (ui-advisor).

输入模式

{
  "type": "object",
  "properties": {
    "customizationLevel": {
      "type": "string",
      "enum": [
        "low",
        "medium",
        "high"
      ]
    },
    "ownershipLevel": {
      "type": "string",
      "enum": [
        "managed",
        "partial",
        "full"
      ]
    }
  },
  "additionalProperties": false
}
⚪angular::ui.overrides.guide(mode, focus)

MediaSFU Angular :: ui.overrides.guide (ui-overrides).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "maxLength": 80,
      "description": "SDK-supported UI ownership mode."
    },
    "focus": {
      "type": "string",
      "enum": [
        "branding",
        "layout",
        "cards",
        "controls",
        "headless-shell",
        "native-bridge"
      ]
    }
  },
  "additionalProperties": false
}
⚪angular::security.proxy.rooms(backendMode)

MediaSFU Angular :: security.proxy.rooms (security-guide).

输入模式

{
  "type": "object",
  "properties": {
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    }
  },
  "additionalProperties": false
}
⚪flutter::sdk.recommend(appType, requestedFeatures)

MediaSFU Flutter :: sdk.recommend (advisor).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪flutter::app.scaffold(apply, projectRoot, overwrite, outputDir)

MediaSFU Flutter :: app.scaffold (scaffold).

输入模式

{
  "type": "object",
  "properties": {
    "apply": {
      "type": "boolean",
      "description": "Write generated files; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    },
    "overwrite": {
      "type": "boolean",
      "description": "Replace existing generated files. Defaults to false."
    },
    "outputDir": {
      "type": "string",
      "maxLength": 240,
      "description": "Relative directory below projectRoot. Defaults to mediasfu-generated/<sdk>."
    }
  },
  "additionalProperties": false
}
⚪flutter::integration.plan(appType, backendMode, requestedFeatures)

MediaSFU Flutter :: integration.plan (planner).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪flutter::env.preflight(execute, projectRoot)

MediaSFU Flutter :: env.preflight (command).

输入模式

{
  "type": "object",
  "properties": {
    "execute": {
      "type": "boolean",
      "description": "Execute the trusted manifest command; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    }
  },
  "additionalProperties": false
}
⚪flutter::room.bootstrap(query)

MediaSFU Flutter :: room.bootstrap (guide).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Optional topic to locate in the guide."
    }
  },
  "additionalProperties": false
}
⚪flutter::feature.map(requestedFeatures)

MediaSFU Flutter :: feature.map (mapper).

输入模式

{
  "type": "object",
  "properties": {
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪flutter::runtime.diagnose(errorText)

MediaSFU Flutter :: runtime.diagnose (diagnostic).

输入模式

{
  "type": "object",
  "properties": {
    "errorText": {
      "type": "string",
      "maxLength": 8000,
      "description": "Sanitized error or log excerpt."
    }
  },
  "required": [
    "errorText"
  ],
  "additionalProperties": false
}
⚪flutter::fix.suggest

MediaSFU Flutter :: fix.suggest (remediation).

输入模式

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
⚪flutter::api.reference.search(query)

MediaSFU Flutter :: api.reference.search (reference-search).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Search terms for bundled SDK references."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
⚪flutter::room.flow.explain(mode)

MediaSFU Flutter :: room.flow.explain (flow-explainer).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "create",
        "join",
        "both"
      ]
    }
  },
  "additionalProperties": false
}
⚪flutter::ui.mode.recommend(customizationLevel, ownershipLevel)

MediaSFU Flutter :: ui.mode.recommend (ui-advisor).

输入模式

{
  "type": "object",
  "properties": {
    "customizationLevel": {
      "type": "string",
      "enum": [
        "low",
        "medium",
        "high"
      ]
    },
    "ownershipLevel": {
      "type": "string",
      "enum": [
        "managed",
        "partial",
        "full"
      ]
    }
  },
  "additionalProperties": false
}
⚪flutter::ui.overrides.guide(mode, focus)

MediaSFU Flutter :: ui.overrides.guide (ui-overrides).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "maxLength": 80,
      "description": "SDK-supported UI ownership mode."
    },
    "focus": {
      "type": "string",
      "enum": [
        "branding",
        "layout",
        "cards",
        "controls",
        "headless-shell",
        "native-bridge"
      ]
    }
  },
  "additionalProperties": false
}
⚪flutter::security.proxy.rooms(backendMode)

MediaSFU Flutter :: security.proxy.rooms (security-guide).

输入模式

{
  "type": "object",
  "properties": {
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    }
  },
  "additionalProperties": false
}
⚪kotlin::sdk.recommend(appType, requestedFeatures)

MediaSFU Kotlin :: sdk.recommend (advisor).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪kotlin::app.scaffold(apply, projectRoot, overwrite, outputDir)

MediaSFU Kotlin :: app.scaffold (scaffold).

输入模式

{
  "type": "object",
  "properties": {
    "apply": {
      "type": "boolean",
      "description": "Write generated files; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    },
    "overwrite": {
      "type": "boolean",
      "description": "Replace existing generated files. Defaults to false."
    },
    "outputDir": {
      "type": "string",
      "maxLength": 240,
      "description": "Relative directory below projectRoot. Defaults to mediasfu-generated/<sdk>."
    }
  },
  "additionalProperties": false
}
⚪kotlin::integration.plan(appType, backendMode, requestedFeatures)

MediaSFU Kotlin :: integration.plan (planner).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪kotlin::env.preflight(execute, projectRoot)

MediaSFU Kotlin :: env.preflight (command).

输入模式

{
  "type": "object",
  "properties": {
    "execute": {
      "type": "boolean",
      "description": "Execute the trusted manifest command; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    }
  },
  "additionalProperties": false
}
⚪kotlin::room.bootstrap(query)

MediaSFU Kotlin :: room.bootstrap (guide).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Optional topic to locate in the guide."
    }
  },
  "additionalProperties": false
}
⚪kotlin::feature.map(requestedFeatures)

MediaSFU Kotlin :: feature.map (mapper).

输入模式

{
  "type": "object",
  "properties": {
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪kotlin::runtime.diagnose(errorText)

MediaSFU Kotlin :: runtime.diagnose (diagnostic).

输入模式

{
  "type": "object",
  "properties": {
    "errorText": {
      "type": "string",
      "maxLength": 8000,
      "description": "Sanitized error or log excerpt."
    }
  },
  "required": [
    "errorText"
  ],
  "additionalProperties": false
}
⚪kotlin::fix.suggest

MediaSFU Kotlin :: fix.suggest (remediation).

输入模式

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
⚪kotlin::api.reference.search(query)

MediaSFU Kotlin :: api.reference.search (reference-search).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Search terms for bundled SDK references."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
⚪kotlin::room.flow.explain(mode)

MediaSFU Kotlin :: room.flow.explain (flow-explainer).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "create",
        "join",
        "both"
      ]
    }
  },
  "additionalProperties": false
}
⚪kotlin::ui.mode.recommend(customizationLevel, ownershipLevel)

MediaSFU Kotlin :: ui.mode.recommend (ui-advisor).

输入模式

{
  "type": "object",
  "properties": {
    "customizationLevel": {
      "type": "string",
      "enum": [
        "low",
        "medium",
        "high"
      ]
    },
    "ownershipLevel": {
      "type": "string",
      "enum": [
        "managed",
        "partial",
        "full"
      ]
    }
  },
  "additionalProperties": false
}
⚪kotlin::ui.overrides.guide(mode, focus)

MediaSFU Kotlin :: ui.overrides.guide (ui-overrides).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "maxLength": 80,
      "description": "SDK-supported UI ownership mode."
    },
    "focus": {
      "type": "string",
      "enum": [
        "branding",
        "layout",
        "cards",
        "controls",
        "headless-shell",
        "native-bridge"
      ]
    }
  },
  "additionalProperties": false
}
⚪kotlin::security.proxy.rooms(backendMode)

MediaSFU Kotlin :: security.proxy.rooms (security-guide).

输入模式

{
  "type": "object",
  "properties": {
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    }
  },
  "additionalProperties": false
}
⚪react-native::sdk.recommend(appType, requestedFeatures)

MediaSFU React Native :: sdk.recommend (advisor).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪react-native::app.scaffold(apply, projectRoot, overwrite, outputDir)

MediaSFU React Native :: app.scaffold (scaffold).

输入模式

{
  "type": "object",
  "properties": {
    "apply": {
      "type": "boolean",
      "description": "Write generated files; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    },
    "overwrite": {
      "type": "boolean",
      "description": "Replace existing generated files. Defaults to false."
    },
    "outputDir": {
      "type": "string",
      "maxLength": 240,
      "description": "Relative directory below projectRoot. Defaults to mediasfu-generated/<sdk>."
    }
  },
  "additionalProperties": false
}
⚪react-native::integration.plan(appType, backendMode, requestedFeatures)

MediaSFU React Native :: integration.plan (planner).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪react-native::env.preflight(execute, projectRoot)

MediaSFU React Native :: env.preflight (command).

输入模式

{
  "type": "object",
  "properties": {
    "execute": {
      "type": "boolean",
      "description": "Execute the trusted manifest command; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    }
  },
  "additionalProperties": false
}
⚪react-native::room.bootstrap(execute, projectRoot)

MediaSFU React Native :: room.bootstrap (command).

输入模式

{
  "type": "object",
  "properties": {
    "execute": {
      "type": "boolean",
      "description": "Execute the trusted manifest command; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    }
  },
  "additionalProperties": false
}
⚪react-native::feature.map(requestedFeatures)

MediaSFU React Native :: feature.map (mapper).

输入模式

{
  "type": "object",
  "properties": {
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪react-native::runtime.diagnose(errorText)

MediaSFU React Native :: runtime.diagnose (diagnostic).

输入模式

{
  "type": "object",
  "properties": {
    "errorText": {
      "type": "string",
      "maxLength": 8000,
      "description": "Sanitized error or log excerpt."
    }
  },
  "required": [
    "errorText"
  ],
  "additionalProperties": false
}
⚪react-native::fix.suggest

MediaSFU React Native :: fix.suggest (remediation).

输入模式

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
⚪react-native::api.reference.search(query)

MediaSFU React Native :: api.reference.search (reference-search).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Search terms for bundled SDK references."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
⚪react-native::room.flow.explain(mode)

MediaSFU React Native :: room.flow.explain (flow-explainer).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "create",
        "join",
        "both"
      ]
    }
  },
  "additionalProperties": false
}
⚪react-native::ui.mode.recommend(customizationLevel, ownershipLevel)

MediaSFU React Native :: ui.mode.recommend (ui-advisor).

输入模式

{
  "type": "object",
  "properties": {
    "customizationLevel": {
      "type": "string",
      "enum": [
        "low",
        "medium",
        "high"
      ]
    },
    "ownershipLevel": {
      "type": "string",
      "enum": [
        "managed",
        "partial",
        "full"
      ]
    }
  },
  "additionalProperties": false
}
⚪react-native::ui.overrides.guide(mode, focus)

MediaSFU React Native :: ui.overrides.guide (ui-overrides).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "maxLength": 80,
      "description": "SDK-supported UI ownership mode."
    },
    "focus": {
      "type": "string",
      "enum": [
        "branding",
        "layout",
        "cards",
        "controls",
        "headless-shell",
        "native-bridge"
      ]
    }
  },
  "additionalProperties": false
}
⚪react-native::security.proxy.rooms(backendMode)

MediaSFU React Native :: security.proxy.rooms (security-guide).

输入模式

{
  "type": "object",
  "properties": {
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    }
  },
  "additionalProperties": false
}
⚪react-native-expo::sdk.recommend(appType, requestedFeatures)

MediaSFU React Native Expo :: sdk.recommend (advisor).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪react-native-expo::app.scaffold(apply, projectRoot, overwrite, outputDir)

MediaSFU React Native Expo :: app.scaffold (scaffold).

输入模式

{
  "type": "object",
  "properties": {
    "apply": {
      "type": "boolean",
      "description": "Write generated files; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    },
    "overwrite": {
      "type": "boolean",
      "description": "Replace existing generated files. Defaults to false."
    },
    "outputDir": {
      "type": "string",
      "maxLength": 240,
      "description": "Relative directory below projectRoot. Defaults to mediasfu-generated/<sdk>."
    }
  },
  "additionalProperties": false
}
⚪react-native-expo::integration.plan(appType, backendMode, requestedFeatures)

MediaSFU React Native Expo :: integration.plan (planner).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪react-native-expo::env.preflight(execute, projectRoot)

MediaSFU React Native Expo :: env.preflight (command).

输入模式

{
  "type": "object",
  "properties": {
    "execute": {
      "type": "boolean",
      "description": "Execute the trusted manifest command; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    }
  },
  "additionalProperties": false
}
⚪react-native-expo::room.bootstrap(execute, projectRoot)

MediaSFU React Native Expo :: room.bootstrap (command).

输入模式

{
  "type": "object",
  "properties": {
    "execute": {
      "type": "boolean",
      "description": "Execute the trusted manifest command; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    }
  },
  "additionalProperties": false
}
⚪react-native-expo::feature.map(requestedFeatures)

MediaSFU React Native Expo :: feature.map (mapper).

输入模式

{
  "type": "object",
  "properties": {
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪react-native-expo::runtime.diagnose(errorText)

MediaSFU React Native Expo :: runtime.diagnose (diagnostic).

输入模式

{
  "type": "object",
  "properties": {
    "errorText": {
      "type": "string",
      "maxLength": 8000,
      "description": "Sanitized error or log excerpt."
    }
  },
  "required": [
    "errorText"
  ],
  "additionalProperties": false
}
⚪react-native-expo::fix.suggest

MediaSFU React Native Expo :: fix.suggest (remediation).

输入模式

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
⚪react-native-expo::api.reference.search(query)

MediaSFU React Native Expo :: api.reference.search (reference-search).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Search terms for bundled SDK references."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
⚪react-native-expo::room.flow.explain(mode)

MediaSFU React Native Expo :: room.flow.explain (flow-explainer).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "create",
        "join",
        "both"
      ]
    }
  },
  "additionalProperties": false
}
⚪react-native-expo::ui.mode.recommend(customizationLevel, ownershipLevel)

MediaSFU React Native Expo :: ui.mode.recommend (ui-advisor).

输入模式

{
  "type": "object",
  "properties": {
    "customizationLevel": {
      "type": "string",
      "enum": [
        "low",
        "medium",
        "high"
      ]
    },
    "ownershipLevel": {
      "type": "string",
      "enum": [
        "managed",
        "partial",
        "full"
      ]
    }
  },
  "additionalProperties": false
}
⚪react-native-expo::ui.overrides.guide(mode, focus)

MediaSFU React Native Expo :: ui.overrides.guide (ui-overrides).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "maxLength": 80,
      "description": "SDK-supported UI ownership mode."
    },
    "focus": {
      "type": "string",
      "enum": [
        "branding",
        "layout",
        "cards",
        "controls",
        "headless-shell",
        "native-bridge"
      ]
    }
  },
  "additionalProperties": false
}
⚪react-native-expo::security.proxy.rooms(backendMode)

MediaSFU React Native Expo :: security.proxy.rooms (security-guide).

输入模式

{
  "type": "object",
  "properties": {
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    }
  },
  "additionalProperties": false
}
⚪reactjs::sdk.recommend(appType, requestedFeatures)

MediaSFU ReactJS :: sdk.recommend (advisor).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪reactjs::app.scaffold(apply, projectRoot, overwrite, outputDir)

MediaSFU ReactJS :: app.scaffold (scaffold).

输入模式

{
  "type": "object",
  "properties": {
    "apply": {
      "type": "boolean",
      "description": "Write generated files; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    },
    "overwrite": {
      "type": "boolean",
      "description": "Replace existing generated files. Defaults to false."
    },
    "outputDir": {
      "type": "string",
      "maxLength": 240,
      "description": "Relative directory below projectRoot. Defaults to mediasfu-generated/<sdk>."
    }
  },
  "additionalProperties": false
}
⚪reactjs::integration.plan(appType, backendMode, requestedFeatures)

MediaSFU ReactJS :: integration.plan (planner).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪reactjs::env.preflight(execute, projectRoot)

MediaSFU ReactJS :: env.preflight (command).

输入模式

{
  "type": "object",
  "properties": {
    "execute": {
      "type": "boolean",
      "description": "Execute the trusted manifest command; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    }
  },
  "additionalProperties": false
}
⚪reactjs::room.bootstrap(execute, projectRoot)

MediaSFU ReactJS :: room.bootstrap (command).

输入模式

{
  "type": "object",
  "properties": {
    "execute": {
      "type": "boolean",
      "description": "Execute the trusted manifest command; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    }
  },
  "additionalProperties": false
}
⚪reactjs::feature.map(requestedFeatures)

MediaSFU ReactJS :: feature.map (mapper).

输入模式

{
  "type": "object",
  "properties": {
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪reactjs::runtime.diagnose(errorText)

MediaSFU ReactJS :: runtime.diagnose (diagnostic).

输入模式

{
  "type": "object",
  "properties": {
    "errorText": {
      "type": "string",
      "maxLength": 8000,
      "description": "Sanitized error or log excerpt."
    }
  },
  "required": [
    "errorText"
  ],
  "additionalProperties": false
}
⚪reactjs::fix.suggest

MediaSFU ReactJS :: fix.suggest (remediation).

输入模式

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
⚪reactjs::api.reference.search(query)

MediaSFU ReactJS :: api.reference.search (reference-search).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Search terms for bundled SDK references."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
⚪reactjs::room.flow.explain(mode)

MediaSFU ReactJS :: room.flow.explain (flow-explainer).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "create",
        "join",
        "both"
      ]
    }
  },
  "additionalProperties": false
}
⚪reactjs::ui.mode.recommend(customizationLevel, ownershipLevel)

MediaSFU ReactJS :: ui.mode.recommend (ui-advisor).

输入模式

{
  "type": "object",
  "properties": {
    "customizationLevel": {
      "type": "string",
      "enum": [
        "low",
        "medium",
        "high"
      ]
    },
    "ownershipLevel": {
      "type": "string",
      "enum": [
        "managed",
        "partial",
        "full"
      ]
    }
  },
  "additionalProperties": false
}
⚪reactjs::ui.overrides.guide(mode, focus)

MediaSFU ReactJS :: ui.overrides.guide (ui-overrides).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "maxLength": 80,
      "description": "SDK-supported UI ownership mode."
    },
    "focus": {
      "type": "string",
      "enum": [
        "branding",
        "layout",
        "cards",
        "controls",
        "headless-shell",
        "native-bridge"
      ]
    }
  },
  "additionalProperties": false
}
⚪reactjs::security.proxy.rooms(backendMode)

MediaSFU ReactJS :: security.proxy.rooms (security-guide).

输入模式

{
  "type": "object",
  "properties": {
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    }
  },
  "additionalProperties": false
}
⚪shared::sdk.recommend(appType, requestedFeatures)

mediasfu-shared :: sdk.recommend (advisor).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪shared::app.scaffold(apply, projectRoot, overwrite, outputDir)

mediasfu-shared :: app.scaffold (scaffold).

输入模式

{
  "type": "object",
  "properties": {
    "apply": {
      "type": "boolean",
      "description": "Write generated files; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    },
    "overwrite": {
      "type": "boolean",
      "description": "Replace existing generated files. Defaults to false."
    },
    "outputDir": {
      "type": "string",
      "maxLength": 240,
      "description": "Relative directory below projectRoot. Defaults to mediasfu-generated/<sdk>."
    }
  },
  "additionalProperties": false
}
⚪shared::integration.plan(appType, backendMode, requestedFeatures)

mediasfu-shared :: integration.plan (planner).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪shared::env.preflight(execute, projectRoot)

mediasfu-shared :: env.preflight (command).

输入模式

{
  "type": "object",
  "properties": {
    "execute": {
      "type": "boolean",
      "description": "Execute the trusted manifest command; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    }
  },
  "additionalProperties": false
}
⚪shared::room.bootstrap(query)

mediasfu-shared :: room.bootstrap (guide).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Optional topic to locate in the guide."
    }
  },
  "additionalProperties": false
}
⚪shared::feature.map(requestedFeatures)

mediasfu-shared :: feature.map (mapper).

输入模式

{
  "type": "object",
  "properties": {
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪shared::runtime.diagnose(errorText)

mediasfu-shared :: runtime.diagnose (diagnostic).

输入模式

{
  "type": "object",
  "properties": {
    "errorText": {
      "type": "string",
      "maxLength": 8000,
      "description": "Sanitized error or log excerpt."
    }
  },
  "required": [
    "errorText"
  ],
  "additionalProperties": false
}
⚪shared::fix.suggest

mediasfu-shared :: fix.suggest (remediation).

输入模式

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
⚪shared::api.reference.search(query)

mediasfu-shared :: api.reference.search (reference-search).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Search terms for bundled SDK references."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
⚪shared::room.flow.explain(mode)

mediasfu-shared :: room.flow.explain (flow-explainer).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "create",
        "join",
        "both"
      ]
    }
  },
  "additionalProperties": false
}
⚪shared::ui.mode.recommend(customizationLevel, ownershipLevel)

mediasfu-shared :: ui.mode.recommend (ui-advisor).

输入模式

{
  "type": "object",
  "properties": {
    "customizationLevel": {
      "type": "string",
      "enum": [
        "low",
        "medium",
        "high"
      ]
    },
    "ownershipLevel": {
      "type": "string",
      "enum": [
        "managed",
        "partial",
        "full"
      ]
    }
  },
  "additionalProperties": false
}
⚪shared::ui.overrides.guide(mode, focus)

mediasfu-shared :: ui.overrides.guide (ui-overrides).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "maxLength": 80,
      "description": "SDK-supported UI ownership mode."
    },
    "focus": {
      "type": "string",
      "enum": [
        "branding",
        "layout",
        "cards",
        "controls",
        "headless-shell",
        "native-bridge"
      ]
    }
  },
  "additionalProperties": false
}
⚪shared::security.proxy.rooms(backendMode)

mediasfu-shared :: security.proxy.rooms (security-guide).

输入模式

{
  "type": "object",
  "properties": {
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    }
  },
  "additionalProperties": false
}
⚪shared::backend.integration.guide(query)

mediasfu-shared :: backend.integration.guide (knowledge).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Optional topic to locate in the guide."
    }
  },
  "additionalProperties": false
}
⚪shared::frontend.architecture.plan(mode, ownershipLevel, needsWidget, needsTelephony)

mediasfu-shared :: frontend.architecture.plan (architecture-planner).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "auto",
        "prebuilt",
        "hybrid",
        "headless"
      ]
    },
    "ownershipLevel": {
      "type": "string",
      "enum": [
        "managed",
        "partial",
        "full"
      ]
    },
    "needsWidget": {
      "type": "boolean"
    },
    "needsTelephony": {
      "type": "boolean"
    }
  },
  "additionalProperties": false
}
⚪shared::headless.integration.plan(targetSdk, appType, backendMode)

mediasfu-shared :: headless.integration.plan (headless-planner).

输入模式

{
  "type": "object",
  "properties": {
    "targetSdk": {
      "type": "string",
      "enum": [
        "reactjs",
        "angular",
        "vue",
        "react-native",
        "react-native-expo",
        "flutter",
        "kotlin",
        "swift",
        "unity",
        "shared"
      ]
    },
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    }
  },
  "additionalProperties": false
}
⚪shared::widget.integration.plan(widgetType)

mediasfu-shared :: widget.integration.plan (widget-planner).

输入模式

{
  "type": "object",
  "properties": {
    "widgetType": {
      "type": "string",
      "maxLength": 80,
      "description": "Widget type, for example click-to-call or meeting."
    }
  },
  "additionalProperties": false
}
⚪shared::telephony.call-control.plan(direction, needsAiAgent)

mediasfu-shared :: telephony.call-control.plan (telephony-planner).

输入模式

{
  "type": "object",
  "properties": {
    "direction": {
      "type": "string",
      "enum": [
        "incoming",
        "outgoing",
        "both"
      ]
    },
    "needsAiAgent": {
      "type": "boolean"
    }
  },
  "additionalProperties": false
}
⚪shared::solution.capsule.plan(query)

mediasfu-shared :: solution.capsule.plan (knowledge).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Optional topic to locate in the guide."
    }
  },
  "additionalProperties": false
}
⚪shared::external-media.integration.plan(query)

mediasfu-shared :: external-media.integration.plan (knowledge).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Optional topic to locate in the guide."
    }
  },
  "additionalProperties": false
}
⚪shared::participant-control.integration.plan(query)

mediasfu-shared :: participant-control.integration.plan (knowledge).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Optional topic to locate in the guide."
    }
  },
  "additionalProperties": false
}
⚪shared::room.lifecycle.plan(targetSdk, intent)

mediasfu-shared :: room.lifecycle.plan (room-lifecycle-planner).

输入模式

{
  "type": "object",
  "properties": {
    "targetSdk": {
      "type": "string",
      "enum": [
        "reactjs",
        "angular",
        "vue",
        "react-native",
        "react-native-expo",
        "flutter",
        "kotlin",
        "android",
        "swift",
        "unity",
        "shared"
      ]
    },
    "intent": {
      "type": "string",
      "enum": [
        "compare",
        "participant-leave",
        "host-preserve",
        "host-end",
        "rejoin"
      ]
    }
  },
  "additionalProperties": false
}
⚪shared::embedded.layout.plan(targetSdk, environment)

mediasfu-shared :: embedded.layout.plan (embedded-layout-planner).

输入模式

{
  "type": "object",
  "properties": {
    "targetSdk": {
      "type": "string",
      "enum": [
        "reactjs",
        "angular",
        "vue",
        "react-native",
        "react-native-expo",
        "flutter",
        "kotlin",
        "android",
        "swift",
        "unity",
        "shared"
      ]
    },
    "environment": {
      "type": "string",
      "enum": [
        "browser",
        "mobile",
        "desktop",
        "game"
      ]
    }
  },
  "additionalProperties": false
}
⚪shared::room.authority.plan(backendMode, operation)

mediasfu-shared :: room.authority.plan (room-authority-planner).

输入模式

{
  "type": "object",
  "properties": {
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    },
    "operation": {
      "type": "string",
      "enum": [
        "create",
        "join"
      ]
    }
  },
  "additionalProperties": false
}
⚪shared::product.pattern.plan(pattern)

mediasfu-shared :: product.pattern.plan (product-pattern-planner).

输入模式

{
  "type": "object",
  "properties": {
    "pattern": {
      "type": "string",
      "enum": [
        "familiar",
        "auction",
        "watch",
        "agents",
        "voip",
        "spacestek"
      ]
    }
  },
  "additionalProperties": false
}
⚪shared::custom-recording.scene.plan(clientPlatform)

mediasfu-shared :: custom-recording.scene.plan (custom-recording-planner).

输入模式

{
  "type": "object",
  "properties": {
    "clientPlatform": {
      "type": "string",
      "maxLength": 80,
      "description": "Browser, mobile, native, or game client."
    }
  },
  "additionalProperties": false
}
⚪shared::runtime.readiness.diagnose(hasRoomName, hasSocket, hasLocalSocket, participantCount, validated, ...)

mediasfu-shared :: runtime.readiness.diagnose (readiness-diagnostic).

输入模式

{
  "type": "object",
  "properties": {
    "hasRoomName": {
      "type": "boolean"
    },
    "hasSocket": {
      "type": "boolean"
    },
    "hasLocalSocket": {
      "type": "boolean"
    },
    "participantCount": {
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "validated": {
      "type": "boolean"
    },
    "failureMessage": {
      "type": "string",
      "maxLength": 2000,
      "description": "Sanitized SDK failure text."
    }
  },
  "additionalProperties": false
}
⚪shared::lifecycle.cleanup.audit(codeText)

mediasfu-shared :: lifecycle.cleanup.audit (lifecycle-audit).

输入模式

{
  "type": "object",
  "properties": {
    "codeText": {
      "type": "string",
      "maxLength": 16000,
      "description": "Sanitized integration code excerpt. Do not include credentials."
    }
  },
  "additionalProperties": false
}
⚪shared::credential.broker.plan(backendMode, clientType)

mediasfu-shared :: credential.broker.plan (credential-planner).

输入模式

{
  "type": "object",
  "properties": {
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    },
    "clientType": {
      "type": "string",
      "maxLength": 80,
      "description": "browser, mobile, desktop, Unity, or server."
    }
  },
  "additionalProperties": false
}
⚪swift::sdk.recommend(appType, requestedFeatures)

MediaSFU Apple / Swift :: sdk.recommend (advisor). aliases: apple, ios, ipados, macos, swift, swiftui, uikit

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪swift::app.scaffold(apply, projectRoot, overwrite, outputDir)

MediaSFU Apple / Swift :: app.scaffold (scaffold). aliases: apple, ios, ipados, macos, swift, swiftui, uikit

输入模式

{
  "type": "object",
  "properties": {
    "apply": {
      "type": "boolean",
      "description": "Write generated files; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    },
    "overwrite": {
      "type": "boolean",
      "description": "Replace existing generated files. Defaults to false."
    },
    "outputDir": {
      "type": "string",
      "maxLength": 240,
      "description": "Relative directory below projectRoot. Defaults to mediasfu-generated/<sdk>."
    }
  },
  "additionalProperties": false
}
⚪swift::integration.plan(appType, backendMode, requestedFeatures)

MediaSFU Apple / Swift :: integration.plan (planner). aliases: apple, ios, ipados, macos, swift, swiftui, uikit

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪swift::env.preflight(execute, projectRoot)

MediaSFU Apple / Swift :: env.preflight (command). aliases: apple, ios, ipados, macos, swift, swiftui, uikit

输入模式

{
  "type": "object",
  "properties": {
    "execute": {
      "type": "boolean",
      "description": "Execute the trusted manifest command; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    }
  },
  "additionalProperties": false
}
⚪swift::room.bootstrap(query)

MediaSFU Apple / Swift :: room.bootstrap (guide). aliases: apple, ios, ipados, macos, swift, swiftui, uikit

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Optional topic to locate in the guide."
    }
  },
  "additionalProperties": false
}
⚪swift::feature.map(requestedFeatures)

MediaSFU Apple / Swift :: feature.map (mapper). aliases: apple, ios, ipados, macos, swift, swiftui, uikit

输入模式

{
  "type": "object",
  "properties": {
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪swift::runtime.diagnose(errorText)

MediaSFU Apple / Swift :: runtime.diagnose (diagnostic). aliases: apple, ios, ipados, macos, swift, swiftui, uikit

输入模式

{
  "type": "object",
  "properties": {
    "errorText": {
      "type": "string",
      "maxLength": 8000,
      "description": "Sanitized error or log excerpt."
    }
  },
  "required": [
    "errorText"
  ],
  "additionalProperties": false
}
⚪swift::fix.suggest

MediaSFU Apple / Swift :: fix.suggest (remediation). aliases: apple, ios, ipados, macos, swift, swiftui, uikit

输入模式

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
⚪swift::api.reference.search(query)

MediaSFU Apple / Swift :: api.reference.search (reference-search). aliases: apple, ios, ipados, macos, swift, swiftui, uikit

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Search terms for bundled SDK references."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
⚪swift::room.flow.explain(mode)

MediaSFU Apple / Swift :: room.flow.explain (flow-explainer). aliases: apple, ios, ipados, macos, swift, swiftui, uikit

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "create",
        "join",
        "both"
      ]
    }
  },
  "additionalProperties": false
}
⚪swift::ui.mode.recommend(customizationLevel, ownershipLevel)

MediaSFU Apple / Swift :: ui.mode.recommend (ui-advisor). aliases: apple, ios, ipados, macos, swift, swiftui, uikit

输入模式

{
  "type": "object",
  "properties": {
    "customizationLevel": {
      "type": "string",
      "enum": [
        "low",
        "medium",
        "high"
      ]
    },
    "ownershipLevel": {
      "type": "string",
      "enum": [
        "managed",
        "partial",
        "full"
      ]
    }
  },
  "additionalProperties": false
}
⚪swift::ui.overrides.guide(mode, focus)

MediaSFU Apple / Swift :: ui.overrides.guide (ui-overrides). aliases: apple, ios, ipados, macos, swift, swiftui, uikit

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "maxLength": 80,
      "description": "SDK-supported UI ownership mode."
    },
    "focus": {
      "type": "string",
      "enum": [
        "branding",
        "layout",
        "cards",
        "controls",
        "headless-shell",
        "native-bridge"
      ]
    }
  },
  "additionalProperties": false
}
⚪swift::security.proxy.rooms(backendMode)

MediaSFU Apple / Swift :: security.proxy.rooms (security-guide). aliases: apple, ios, ipados, macos, swift, swiftui, uikit

输入模式

{
  "type": "object",
  "properties": {
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    }
  },
  "additionalProperties": false
}
⚪unity::sdk.recommend(appType, requestedFeatures)

MediaSFU Unity :: sdk.recommend (advisor). aliases: unity, unity-sdk, csharp-unity

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪unity::app.scaffold(apply, projectRoot, overwrite, outputDir)

MediaSFU Unity :: app.scaffold (scaffold). aliases: unity, unity-sdk, csharp-unity

输入模式

{
  "type": "object",
  "properties": {
    "apply": {
      "type": "boolean",
      "description": "Write generated files; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    },
    "overwrite": {
      "type": "boolean",
      "description": "Replace existing generated files. Defaults to false."
    },
    "outputDir": {
      "type": "string",
      "maxLength": 240,
      "description": "Relative directory below projectRoot. Defaults to mediasfu-generated/<sdk>."
    }
  },
  "additionalProperties": false
}
⚪unity::integration.plan(appType, backendMode, requestedFeatures)

MediaSFU Unity :: integration.plan (planner). aliases: unity, unity-sdk, csharp-unity

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪unity::env.preflight(execute, projectRoot)

MediaSFU Unity :: env.preflight (command). aliases: unity, unity-sdk, csharp-unity

输入模式

{
  "type": "object",
  "properties": {
    "execute": {
      "type": "boolean",
      "description": "Execute the trusted manifest command; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    }
  },
  "additionalProperties": false
}
⚪unity::room.bootstrap(query)

MediaSFU Unity :: room.bootstrap (guide). aliases: unity, unity-sdk, csharp-unity

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Optional topic to locate in the guide."
    }
  },
  "additionalProperties": false
}
⚪unity::feature.map(requestedFeatures)

MediaSFU Unity :: feature.map (mapper). aliases: unity, unity-sdk, csharp-unity

输入模式

{
  "type": "object",
  "properties": {
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪unity::runtime.diagnose(errorText)

MediaSFU Unity :: runtime.diagnose (diagnostic). aliases: unity, unity-sdk, csharp-unity

输入模式

{
  "type": "object",
  "properties": {
    "errorText": {
      "type": "string",
      "maxLength": 8000,
      "description": "Sanitized error or log excerpt."
    }
  },
  "required": [
    "errorText"
  ],
  "additionalProperties": false
}
⚪unity::fix.suggest

MediaSFU Unity :: fix.suggest (remediation). aliases: unity, unity-sdk, csharp-unity

输入模式

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
⚪unity::api.reference.search(query)

MediaSFU Unity :: api.reference.search (reference-search). aliases: unity, unity-sdk, csharp-unity

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Search terms for bundled SDK references."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
⚪unity::room.flow.explain(mode)

MediaSFU Unity :: room.flow.explain (flow-explainer). aliases: unity, unity-sdk, csharp-unity

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "create",
        "join",
        "both"
      ]
    }
  },
  "additionalProperties": false
}
⚪unity::ui.mode.recommend(customizationLevel, ownershipLevel)

MediaSFU Unity :: ui.mode.recommend (ui-advisor). aliases: unity, unity-sdk, csharp-unity

输入模式

{
  "type": "object",
  "properties": {
    "customizationLevel": {
      "type": "string",
      "enum": [
        "low",
        "medium",
        "high"
      ]
    },
    "ownershipLevel": {
      "type": "string",
      "enum": [
        "managed",
        "partial",
        "full"
      ]
    }
  },
  "additionalProperties": false
}
⚪unity::ui.overrides.guide(mode, focus)

MediaSFU Unity :: ui.overrides.guide (ui-overrides). aliases: unity, unity-sdk, csharp-unity

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "maxLength": 80,
      "description": "SDK-supported UI ownership mode."
    },
    "focus": {
      "type": "string",
      "enum": [
        "branding",
        "layout",
        "cards",
        "controls",
        "headless-shell",
        "native-bridge"
      ]
    }
  },
  "additionalProperties": false
}
⚪unity::security.proxy.rooms(backendMode)

MediaSFU Unity :: security.proxy.rooms (security-guide). aliases: unity, unity-sdk, csharp-unity

输入模式

{
  "type": "object",
  "properties": {
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    }
  },
  "additionalProperties": false
}
⚪vue::sdk.recommend(appType, requestedFeatures)

MediaSFU Vue :: sdk.recommend (advisor).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪vue::app.scaffold(apply, projectRoot, overwrite, outputDir)

MediaSFU Vue :: app.scaffold (scaffold).

输入模式

{
  "type": "object",
  "properties": {
    "apply": {
      "type": "boolean",
      "description": "Write generated files; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    },
    "overwrite": {
      "type": "boolean",
      "description": "Replace existing generated files. Defaults to false."
    },
    "outputDir": {
      "type": "string",
      "maxLength": 240,
      "description": "Relative directory below projectRoot. Defaults to mediasfu-generated/<sdk>."
    }
  },
  "additionalProperties": false
}
⚪vue::integration.plan(appType, backendMode, requestedFeatures)

MediaSFU Vue :: integration.plan (planner).

输入模式

{
  "type": "object",
  "properties": {
    "appType": {
      "type": "string",
      "maxLength": 80,
      "description": "Application type."
    },
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    },
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪vue::env.preflight(execute, projectRoot)

MediaSFU Vue :: env.preflight (command).

输入模式

{
  "type": "object",
  "properties": {
    "execute": {
      "type": "boolean",
      "description": "Execute the trusted manifest command; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    }
  },
  "additionalProperties": false
}
⚪vue::room.bootstrap(execute, projectRoot)

MediaSFU Vue :: room.bootstrap (command).

输入模式

{
  "type": "object",
  "properties": {
    "execute": {
      "type": "boolean",
      "description": "Execute the trusted manifest command; omitted means dry-run."
    },
    "projectRoot": {
      "type": "string",
      "maxLength": 1024,
      "description": "Absolute path to the consumer project. Defaults to the MCP process working directory."
    }
  },
  "additionalProperties": false
}
⚪vue::feature.map(requestedFeatures)

MediaSFU Vue :: feature.map (mapper).

输入模式

{
  "type": "object",
  "properties": {
    "requestedFeatures": {
      "type": "array",
      "maxItems": 32,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "maxLength": 80,
        "description": "Required feature."
      }
    }
  },
  "additionalProperties": false
}
⚪vue::runtime.diagnose(errorText)

MediaSFU Vue :: runtime.diagnose (diagnostic).

输入模式

{
  "type": "object",
  "properties": {
    "errorText": {
      "type": "string",
      "maxLength": 8000,
      "description": "Sanitized error or log excerpt."
    }
  },
  "required": [
    "errorText"
  ],
  "additionalProperties": false
}
⚪vue::fix.suggest

MediaSFU Vue :: fix.suggest (remediation).

输入模式

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
⚪vue::api.reference.search(query)

MediaSFU Vue :: api.reference.search (reference-search).

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Search terms for bundled SDK references."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
⚪vue::room.flow.explain(mode)

MediaSFU Vue :: room.flow.explain (flow-explainer).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "create",
        "join",
        "both"
      ]
    }
  },
  "additionalProperties": false
}
⚪vue::ui.mode.recommend(customizationLevel, ownershipLevel)

MediaSFU Vue :: ui.mode.recommend (ui-advisor).

输入模式

{
  "type": "object",
  "properties": {
    "customizationLevel": {
      "type": "string",
      "enum": [
        "low",
        "medium",
        "high"
      ]
    },
    "ownershipLevel": {
      "type": "string",
      "enum": [
        "managed",
        "partial",
        "full"
      ]
    }
  },
  "additionalProperties": false
}
⚪vue::ui.overrides.guide(mode, focus)

MediaSFU Vue :: ui.overrides.guide (ui-overrides).

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "maxLength": 80,
      "description": "SDK-supported UI ownership mode."
    },
    "focus": {
      "type": "string",
      "enum": [
        "branding",
        "layout",
        "cards",
        "controls",
        "headless-shell",
        "native-bridge"
      ]
    }
  },
  "additionalProperties": false
}
⚪vue::security.proxy.rooms(backendMode)

MediaSFU Vue :: security.proxy.rooms (security-guide).

输入模式

{
  "type": "object",
  "properties": {
    "backendMode": {
      "type": "string",
      "enum": [
        "cloud",
        "self-hosted",
        "local"
      ]
    }
  },
  "additionalProperties": false
}

社区

评价此服务器

证据

最近观测

已验证未记录版本159 个工具