Skip to main content
Glama
panther-labs

Panther MCP Server

Official

list_databases

Retrieve all available data lake databases in Panther's security monitoring platform to identify and access security log repositories for investigation.

Instructions

List all available datalake databases in Panther.

Returns: Dict containing: - success: Boolean indicating if the query was successful - databases: List of databases, each containing: - name: Database name - description: Database description - message: Error message if unsuccessful

Permissions:{'all_of': ['Query Data Lake']}

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • The primary handler and registration for the 'list_databases' MCP tool. Decorated with @mcp_tool and implements the core logic by executing LIST_DATABASES_QUERY.
    @mcp_tool(
        annotations={
            "permissions": all_perms(Permission.DATA_ANALYTICS_READ),
            "readOnlyHint": True,
        }
    )
    async def list_databases() -> Dict[str, Any]:
        """List all available datalake databases in Panther.
    
        Returns:
            Dict containing:
            - success: Boolean indicating if the query was successful
            - databases: List of databases, each containing:
                - name: Database name
                - description: Database description
            - message: Error message if unsuccessful
        """
    
        logger.info("Fetching datalake databases")
    
        try:
            # Execute the query using shared client
            result = await _execute_query(LIST_DATABASES_QUERY, {})
    
            # Get query data
            databases = result.get("dataLakeDatabases", [])
    
            if not databases:
                logger.warning("No databases found")
                return {"success": False, "message": "No databases found"}
    
            logger.info(f"Successfully retrieved {len(databases)} results")
    
            # Format the response
            return {
                "success": True,
                "status": "succeeded",
                "databases": databases,
                "stats": {
                    "database_count": len(databases),
                },
            }
        except Exception as e:
            logger.error(f"Failed to fetch database results: {str(e)}")
            return {
                "success": False,
                "message": f"Failed to fetch database results: {str(e)}",
            }
  • GraphQL query definition used by list_databases tool to retrieve the list of available data lake databases.
    LIST_DATABASES_QUERY = gql("""
    query ListDatabases {
        dataLakeDatabases {
            name
            description
        }
    }
    """)

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/panther-labs/mcp-panther'

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