/**
* MySQL Resource - Variables
*/
import type { MySQLAdapter } from '../MySQLAdapter.js';
import type { ResourceDefinition, RequestContext } from '../../../types/index.js';
export function createVariablesResource(adapter: MySQLAdapter): ResourceDefinition {
return {
uri: 'mysql://variables',
name: 'Server Variables',
title: 'MySQL Server Variables',
description: 'MySQL server configuration variables',
mimeType: 'application/json',
annotations: {
audience: ['user', 'assistant'],
priority: 0.6
},
handler: async (_uri: string, _context: RequestContext) => {
const result = await adapter.executeQuery('SHOW GLOBAL VARIABLES');
const variables: Record<string, string> = {};
for (const row of result.rows ?? []) {
variables[row['Variable_name'] as string] = row['Value'] as string;
}
return { variables };
}
};
}