Skip to main content
Glama

HANA Cloud MCP Server

by HatriGt
query-tools.js1.62 kB
/** * Query execution tools for HANA MCP Server */ const { logger } = require('../utils/logger'); const QueryExecutor = require('../database/query-executor'); const Validators = require('../utils/validators'); const Formatters = require('../utils/formatters'); class QueryTools { /** * Execute a custom SQL query */ static async executeQuery(args) { logger.tool('hana_execute_query', args); const { query, parameters = [] } = args || {}; // Validate required parameters const validation = Validators.validateRequired(args, ['query'], 'hana_execute_query'); if (!validation.valid) { return Formatters.createErrorResponse('Error: query parameter is required', validation.error); } // Validate query const queryValidation = Validators.validateQuery(query); if (!queryValidation.valid) { return Formatters.createErrorResponse('Invalid query', queryValidation.error); } // Validate parameters const paramValidation = Validators.validateParameters(parameters); if (!paramValidation.valid) { return Formatters.createErrorResponse('Invalid parameters', paramValidation.error); } try { const results = await QueryExecutor.executeQuery(query, parameters); const formattedResults = Formatters.formatQueryResults(results, query); return Formatters.createResponse(formattedResults); } catch (error) { logger.error('Query execution failed:', error.message); return Formatters.createErrorResponse('Query execution failed', error.message); } } } module.exports = QueryTools;

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/HatriGt/hana-mcp-server'

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