Skip to main content
Glama

dhis2_android_configure_camera

Configure camera settings for the DHIS2 Android app to enable photo capture, video recording, barcode scanning, and document scanning with customizable resolution, quality, and format options.

Instructions

Set up camera and media capture capabilities for DHIS2 Android app

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cameraFeaturesYesCamera features to enable
imageSettingsNo
videoSettingsNo
barcodeTypesNoSupported barcode formats
permissionsNoRequired permissions for media capture

Implementation Reference

  • The core handler function that executes the tool by generating complete Android camera configuration including permissions, CameraX/VideoCapture setup, barcode scanning with ML Kit, usage examples, and testing code.
    export function generateCameraConfiguration(args: any): string { const { cameraFeatures, imageSettings, videoSettings, barcodeTypes, permissions } = args; return `# DHIS2 Android Camera Configuration ## Features: ${cameraFeatures.join(', ')} ${generateCameraPermissions(permissions)} ${generateCameraImplementation(cameraFeatures, imageSettings, videoSettings, barcodeTypes)} ${cameraFeatures.includes('barcode_scanning') ? generateBarcodeScanning(barcodeTypes) : ''} ## Usage Examples \`\`\`kotlin class DataCaptureActivity : AppCompatActivity() { private val cameraManager by lazy { DHIS2CameraManager(this) } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) binding.capturePhotoButton.setOnClickListener { capturePhoto() } ${cameraFeatures.includes('barcode_scanning') ? ` binding.scanBarcodeButton.setOnClickListener { scanBarcode() }` : ''} } private fun capturePhoto() { cameraManager.capturePhoto { result -> when (result) { is CameraResult.Success -> { // Handle captured photo handleCapturedPhoto(result.imageUri) } is CameraResult.Error -> { showError(result.message) } } } } ${cameraFeatures.includes('barcode_scanning') ? ` private fun scanBarcode() { cameraManager.scanBarcode { barcode -> // Handle scanned barcode updateDataElementWithBarcode(barcode) } }` : ''} } \`\`\` `; }
  • src/index.ts:1297-1307 (registration)
    Registers and dispatches calls to the tool handler in the MCP server's CallToolRequestSchema handler.
    case 'dhis2_android_configure_camera': const cameraArgs = args as any; const cameraConfig = generateCameraConfiguration(cameraArgs); return { content: [ { type: 'text', text: cameraConfig, }, ], };
  • Maps the tool to required user permission 'canUseMobileFeatures' in the permission system used for tool filtering.
    ['dhis2_android_init_project', 'canUseMobileFeatures'], ['dhis2_android_configure_gradle', 'canUseMobileFeatures'], ['dhis2_android_setup_sync', 'canConfigureMobile'], ['dhis2_android_configure_storage', 'canConfigureMobile'], ['dhis2_android_setup_location_services', 'canUseMobileFeatures'], ['dhis2_android_configure_camera', 'canUseMobileFeatures'], ['dhis2_android_setup_authentication', 'canConfigureMobile'], ['dhis2_android_generate_data_models', 'canUseMobileFeatures'], ['dhis2_android_setup_testing', 'canUseMobileFeatures'], ['dhis2_android_configure_ui_patterns', 'canUseMobileFeatures'], ['dhis2_android_setup_offline_analytics', 'canUseMobileFeatures'], ['dhis2_android_configure_notifications', 'canUseMobileFeatures'], ['dhis2_android_performance_optimization', 'canUseMobileFeatures'],

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Dradebo/dhis2-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server