dhis2_generate_app_runtime_config
Generate configuration for DHIS2 App Runtime integration to enable data query hooks, mutation hooks, alerts, offline capabilities, and PWA features for health information system applications.
Instructions
Generate configuration for DHIS2 App Runtime integration
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| apiVersion | No | DHIS2 API version to target (e.g., 40 for 2.40) | |
| appName | Yes | Name of the application | |
| features | No | ||
| errorBoundary | No | Include error boundary component | |
| loadingMask | No | Include loading mask component |
Implementation Reference
- src/webapp-generators.ts:350-397 (handler)Handler function that generates DHIS2 App Runtime configuration code, including DataProvider setup, configuration options, and optional feature examples (dataQuery, dataMutation, alerts, offline, PWA).export function generateAppRuntimeConfig(args: any): string { const { apiVersion = 40, appName, features = {}, errorBoundary = true, loadingMask = true } = args; return `# DHIS2 App Runtime Configuration ## Provider Setup \`\`\`jsx import { DataProvider } from '@dhis2/app-runtime'; import { CssReset } from '@dhis2/ui'; const config = { baseUrl: process.env.REACT_APP_DHIS2_BASE_URL, apiVersion: ${apiVersion} }; function App() { return ( <DataProvider config={config}> <CssReset /> ${errorBoundary ? '<ErrorBoundary>' : ''} ${loadingMask ? '<LoadingMask>' : ''} <${appName}App /> ${loadingMask ? '</LoadingMask>' : ''} ${errorBoundary ? '</ErrorBoundary>' : ''} </DataProvider> ); } \`\`\` ${features.dataQuery ? generateDataQueryExamples() : ''} ${features.dataMutation ? generateDataMutationExamples() : ''} ${features.alerts ? generateAlertsExample() : ''} ${features.offline ? generateOfflineExample() : ''} ${features.pwa ? generatePWAExample() : ''} ## Configuration Options \`\`\`javascript const config = { baseUrl: 'https://your-dhis2-instance.com', apiVersion: ${apiVersion}, timeout: 30000, retries: 3, headers: { 'X-Requested-With': 'XMLHttpRequest' } }; \`\`\` `;
- src/index.ts:1009-1019 (registration)MCP tool dispatch/registration in the main server request handler switch statement, calling the generateAppRuntimeConfig handler.case 'dhis2_generate_app_runtime_config': const runtimeConfigArgs = args as any; const runtimeConfig = generateAppRuntimeConfig(runtimeConfigArgs); return { content: [ { type: 'text', text: runtimeConfig, }, ], };
- src/permission-system.ts:137-137 (registration)Permission mapping in TOOL_PERMISSIONS static array, requiring 'canConfigureApps' permission for access.['dhis2_generate_app_runtime_config', 'canConfigureApps'],