Mobiscroll
Version-aware Mobiscroll UI component schemas and examples, plus Connect REST API and SDK knowledge.
Sollte ich dies verwenden
Qualität und Sicherheit
Befunde (3)
- HIGH
- MEDIUMin getConnectEndpointSchema
- MEDIUMin mapConnectEndpointToSdk
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"mcp": {
"url": "https://mcp.mobiscroll.com"
}
}
}Remote-Endpunkte
https://mcp.mobiscroll.comstreamable-httpWas es kann
Tool-Inventar
Tools (14)
🟢resolveEnvironment(packageJsonContent, framework, noPackageJsonReason)
Resolves which Mobiscroll framework and major version a project uses, from the contents of its package.json. This server runs remotely and has no access to the local filesystem, so the file contents are passed in as packageJsonContent. Returns the framework and major version that the other tools in this server take as arguments.
Eingabe-Schema
{
"type": "object",
"properties": {
"packageJsonContent": {
"description": "REQUIRED (raw file text). The full raw content of the project's package.json - the repository root, or the nearest one above the file you are editing. Read the file from the workspace and pass its content here. In a monorepo, use the package.json that declares the @mobiscroll/* dependency.",
"type": "string"
},
"framework": {
"description": "Only for the no-package.json path, and only together with noPackageJsonReason. Do NOT use this to skip reading an existing package.json - passing framework without noPackageJsonReason is rejected.",
"type": "string",
"enum": [
"react",
"angular",
"vue",
"js",
"jquery"
]
},
"noPackageJsonReason": {
"description": "Set ONLY after searching the workspace and confirming NO package.json exists (repo root or any parent of the edited file). 'cdn' = Mobiscroll loaded via a script tag; 'no-package-json-found-after-search' = you searched and found none. Required (with framework) to use the no-package.json path.",
"type": "string",
"enum": [
"cdn",
"no-package-json-found-after-search"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢listComponents(framework, major)
Returns all available Mobiscroll UI components for a given framework and major version, with a short description and entity count for each.
Eingabe-Schema
{
"type": "object",
"properties": {
"framework": {
"type": "string",
"enum": [
"react",
"angular",
"vue",
"js",
"jquery"
],
"description": "Framework to list components for. Use \"js\" for plain JavaScript (@mobiscroll/javascript package)."
},
"major": {
"type": "number",
"description": "Major version (e.g., 5, 6)"
}
},
"required": [
"framework",
"major"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢getComponentSchema(component, framework, major, names, kind)
Returns the API schema (options, events, methods, renderers) for a Mobiscroll component. Two-step, token-efficient flow: (1) call WITHOUT names to get a compact index - every entity as name + kind + tsType + a one-line summary. (2) Review the index, then call AGAIN with names:[...] to get the full details (complete description, default value, related entities) for only the entities you will actually use. Optionally pass kind to narrow to one entity type. The full schema is large, so prefer this two-step flow over pulling everything.
Eingabe-Schema
{
"type": "object",
"properties": {
"component": {
"type": "string",
"description": "Bare lowercase component ID, regardless of framework (e.g., \"datepicker\", \"select\", \"popup\"). Do NOT include framework-specific prefixes or casing - use \"eventcalendar\" not \"mbsc-eventcalendar\" (Angular), \"MbscEventcalendar\" (Vue), or \"Eventcalendar\" (React). For Eventcalendar, append the variant suffix: \"eventcalendar.base\", \"eventcalendar.agenda\", \"eventcalendar.scheduler\", \"eventcalendar.timeline\", \"eventcalendar.calendarview\". Use listComponents to discover valid IDs."
},
"framework": {
"type": "string",
"enum": [
"react",
"angular",
"vue",
"js",
"jquery"
],
"description": "Framework to get the schema for. Use \"js\" for plain JavaScript (@mobiscroll/javascript package)."
},
"major": {
"type": "number",
"description": "Major version (e.g., 5, 6)"
},
"names": {
"description": "Detail tier: entity names (as shown in the index) to return in full. Omit on the first call to get the compact index; then call again with the handful of names you need. Names not found are reported in query.notFound.",
"type": "array",
"items": {
"type": "string"
}
},
"kind": {
"description": "Optional filter: return only entities of this kind. Works with or without names.",
"type": "string",
"enum": [
"option",
"event",
"method",
"renderer",
"localization"
]
}
},
"required": [
"component",
"framework",
"major"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢searchExamples(query, framework, major, components, maxResults)
Search for Mobiscroll examples by query, framework, major version, and component filters. Supports multi-keyword queries — all keywords must match (AND logic). Results are sorted by relevance (title matches rank highest).
Eingabe-Schema
{
"type": "object",
"properties": {
"query": {
"description": "Search query — space-separated keywords, all must match (AND). Searches title, tags, component names, and description.",
"type": "string"
},
"framework": {
"type": "string",
"enum": [
"react",
"angular",
"vue",
"js",
"jquery"
],
"description": "Framework to search in. Use \"js\" for plain JavaScript (@mobiscroll/javascript package)."
},
"major": {
"type": "number",
"description": "Major version to search in"
},
"components": {
"description": "Filter by component. Pass the bare lowercase component IDs as returned by listComponents / getComponentSchema (e.g. \"popup\", \"select\", \"input\", \"checkbox\", \"datepicker\", \"eventcalendar\"). OR logic across the array. For Eventcalendar you may append a view suffix to narrow to that view - \"eventcalendar.agenda\", \"eventcalendar.scheduler\", \"eventcalendar.timeline\", \"eventcalendar.calendarview\"; bare \"eventcalendar\" (or \"eventcalendar.base\") returns all views.",
"type": "array",
"items": {
"type": "string"
}
},
"maxResults": {
"description": "Maximum number of results to return (default: 20). Applies to every filter combination - component-only, query-only, or both. The response reports \"total\" (matches before the cap) and \"returned\"; raise maxResults to fetch more.",
"type": "number"
}
},
"required": [
"framework",
"major"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢getExampleById(exampleId, framework, major)
Get a complete example by ID, including source files, description, and implementation instructions (when available).
Eingabe-Schema
{
"type": "object",
"properties": {
"exampleId": {
"type": "string",
"description": "Example ID (from search results)"
},
"framework": {
"type": "string",
"enum": [
"react",
"angular",
"vue",
"js",
"jquery"
],
"description": "Framework of the example. Use \"js\" for plain JavaScript (@mobiscroll/javascript package)."
},
"major": {
"type": "number",
"description": "Major version of the example"
}
},
"required": [
"exampleId",
"framework",
"major"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢validateCode(component, framework, major, snippet)
Validate a code snippet against the component schema, checking for unknown props/events/methods and deprecated usage. Static analysis only — no execution.
Eingabe-Schema
{
"type": "object",
"properties": {
"component": {
"type": "string",
"description": "Bare lowercase component ID, regardless of framework (e.g., \"datepicker\", \"select\", \"popup\"). Do NOT include framework-specific prefixes or casing — use \"eventcalendar\" not \"mbsc-eventcalendar\" (Angular), \"MbscEventcalendar\" (Vue), or \"Eventcalendar\" (React). For Eventcalendar, append the variant suffix: \"eventcalendar.base\", \"eventcalendar.agenda\", \"eventcalendar.scheduler\", \"eventcalendar.timeline\", \"eventcalendar.calendarview\". Use listComponents to discover valid IDs."
},
"framework": {
"type": "string",
"enum": [
"react",
"angular",
"vue",
"js",
"jquery"
],
"description": "Framework of the snippet. Use \"js\" for plain JavaScript (@mobiscroll/javascript package)."
},
"major": {
"type": "number",
"description": "Major version to validate against"
},
"snippet": {
"type": "string",
"description": "Code snippet to validate"
}
},
"required": [
"component",
"framework",
"major",
"snippet"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢resolveConnectEnvironment(manifestContent)
Resolves which Mobiscroll Connect SDK (language and version) a project depends on, from the contents of its dependency manifest, and returns the Connect API and SDK versions this server documents. This server runs remotely and has no access to the local filesystem, so the manifest contents are passed in as manifestContent.
Eingabe-Schema
{
"type": "object",
"properties": {
"manifestContent": {
"description": "Raw content of the project dependency manifest: package.json, pyproject.toml, composer.json, *.csproj, pom.xml, go.mod, or Gemfile. Read the file from the workspace and pass its content here.",
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢listConnectEndpoints
Lists all Mobiscroll Connect REST API endpoints (method, path, summary, auth). Use getConnectEndpointSchema for full parameter/response detail of one endpoint.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢getConnectEndpointSchema(endpointId, method, path)
Returns the full schema of a single Connect REST endpoint: method, path, parameters (query/body) with types, authentication, response statuses, and examples. Resolve by endpointId (from listConnectEndpoints) or by method + path. Describes the endpoint from documentation; does not call it. Documents the Mobiscroll Connect REST API: https://mobiscroll.com/docs/connect/api/overview
Eingabe-Schema
{
"type": "object",
"properties": {
"endpointId": {
"description": "Endpoint id from listConnectEndpoints, e.g. \"get-events\".",
"type": "string"
},
"method": {
"description": "HTTP method, e.g. \"GET\". Use with path if endpointId is unknown.",
"type": "string"
},
"path": {
"description": "Endpoint path relative to the API base, e.g. \"/events\".",
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢listConnectSdkMethods(language)
Lists the resources (auth, calendars, events) and methods exposed by one language's Connect SDK. Use getConnectSdkMethod for the full signature/doc of one method.
Eingabe-Schema
{
"type": "object",
"properties": {
"language": {
"type": "string",
"enum": [
"node",
"python",
"php",
"dotnet",
"java",
"go",
"ruby"
],
"description": "SDK language to list methods for."
}
},
"required": [
"language"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢getConnectSdkMethod(language, method)
Returns the full schema of one SDK method in one language: signature, parameters, return type, doc comment, and example. Identify the method by canonical id ("events.create"), by the language method name ("ListAsync"), or "resource.method".
Eingabe-Schema
{
"type": "object",
"properties": {
"language": {
"type": "string",
"enum": [
"node",
"python",
"php",
"dotnet",
"java",
"go",
"ruby"
],
"description": "SDK language."
},
"method": {
"type": "string",
"description": "Canonical id, method name, or \"resource.method\"."
}
},
"required": [
"language",
"method"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢searchConnect(query, language, kind, maxResults)
Keyword search across Connect REST endpoints and SDK methods. Space-separated keywords, all must match (AND). Results sorted by relevance.
Eingabe-Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Space-separated keywords (AND logic)."
},
"language": {
"description": "Restrict SDK matches to one language. REST endpoints always searched.",
"type": "string",
"enum": [
"node",
"python",
"php",
"dotnet",
"java",
"go",
"ruby"
]
},
"kind": {
"description": "What to search (default: all).",
"type": "string",
"enum": [
"endpoint",
"operation",
"all"
]
},
"maxResults": {
"description": "Max results (default: 20).",
"type": "number"
}
},
"required": [
"query"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢mapConnectEndpointToSdk(endpointId, method, path, language)
Given a Connect REST endpoint, returns the equivalent SDK call (method name, signature, example) in each language. Resolve by endpointId or by method + path. Optionally restrict to one language. Describes the endpoint and SDK call from documentation; does not call either. Documents the Mobiscroll Connect REST API: https://mobiscroll.com/docs/connect/api/overview
Eingabe-Schema
{
"type": "object",
"properties": {
"endpointId": {
"description": "Endpoint id from listConnectEndpoints.",
"type": "string"
},
"method": {
"description": "HTTP method. Use with path if endpointId is unknown.",
"type": "string"
},
"path": {
"description": "Endpoint path relative to the API base.",
"type": "string"
},
"language": {
"description": "Restrict to one language (default: all).",
"type": "string",
"enum": [
"node",
"python",
"php",
"dotnet",
"java",
"go",
"ruby"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢getConnectErrorTaxonomy(language)
Returns the shared Connect error taxonomy: each error category with its HTTP status and the language-idiomatic exception type. Optionally filter the exception column to one language.
Eingabe-Schema
{
"type": "object",
"properties": {
"language": {
"description": "Filter the exception column to one language.",
"type": "string",
"enum": [
"node",
"python",
"php",
"dotnet",
"java",
"go",
"ruby"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Nachweis