run_select_query
Execute SQL queries to retrieve data from your GigAPI cluster databases, ensuring safe and structured query execution for efficient data management.
Instructions
Execute SQL queries on your GigAPI cluster. All queries are executed safely.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| database | Yes | ||
| sql | Yes |
Implementation Reference
- mcp_gigapi/tools.py:45-78 (handler)The handler function that executes the SQL SELECT query on the GigAPI cluster using the client, handles errors, and returns results or error info.def run_select_query(self, sql: str, database: str) -> Dict[str, Any]: """Execute SQL query on GigAPI. Args: sql: The SQL query to execute database: The database to execute the query against Returns: Query results """ try: response = self.client.execute_query(sql, database) if response.error: return { "error": response.error, "success": False } return { "results": response.results, "success": True, "query": sql, "database": database } except GigAPIClientError as e: logger.error(f"Query execution failed: {e}") return { "error": str(e), "success": False, "query": sql, "database": database }
- mcp_gigapi/tools.py:226-230 (registration)The registration of the 'run_select_query' tool using FastMCP's Tool.from_function within the create_tools function.Tool.from_function( tools_instance.run_select_query, name="run_select_query", description="Execute SQL queries on your GigAPI cluster. All queries are executed safely.", ),
- mcp_gigapi/tools.py:14-19 (schema)Pydantic model defining the input schema for SQL queries, matching the tool parameters (though not directly used in registration).class QueryInput(BaseModel): """Input model for SQL query execution.""" sql: str = Field(..., description="The SQL query to execute") database: str = Field(..., description="The database to execute the query against")