firewalla-mcp-server
Version:
Model Context Protocol (MCP) server for Firewalla MSP API - Provides real-time network monitoring, security analysis, and firewall management through 28 specialized tools compatible with any MCP client
153 lines • 3.53 kB
JavaScript
/**
* Search API type definitions for Firewalla MCP Server
* Defines query AST nodes, search parameters, and result structures
*/
export const TokenType = {
FIELD: 'FIELD',
VALUE: 'VALUE',
QUOTED_VALUE: 'QUOTED_VALUE',
OPERATOR: 'OPERATOR',
LOGICAL: 'LOGICAL',
LPAREN: 'LPAREN',
RPAREN: 'RPAREN',
LBRACKET: 'LBRACKET',
RBRACKET: 'RBRACKET',
COLON: 'COLON',
WILDCARD: 'WILDCARD',
TO: 'TO',
EOF: 'EOF',
};
/**
* Supported search fields by entity type
*/
export const SEARCH_FIELDS = {
flows: [
'source_ip',
'destination_ip',
'protocol',
'port',
'direction',
'blocked',
'bytes',
'download',
'upload',
'duration',
'timestamp',
'device_ip',
'device_id',
'region',
'category',
// Enhanced geographic fields
'country',
'country_code',
'continent',
'city',
'timezone',
'isp',
'organization',
'hosting_provider',
'asn',
'is_cloud_provider',
'is_cloud',
'is_proxy',
'is_vpn',
'geographic_risk_score',
'geo_location',
// Application-level fields
'user_agent',
'application',
'application_category',
'domain_category',
'ssl_subject',
'ssl_issuer',
// Behavioral pattern fields
'session_duration',
'frequency_score',
'bytes_per_session',
'connection_pattern',
'activity_level',
],
alarms: [
'severity',
'type',
'source_ip',
'destination_ip',
'remote_ip',
'device_ip',
'protocol',
'port',
'timestamp',
'status',
'direction',
'description',
'message',
// Enhanced geographic fields
'country',
'country_code',
'continent',
'city',
'remote_country',
'remote_continent',
'timezone',
'isp',
'organization',
'hosting_provider',
'asn',
'is_cloud_provider',
'is_proxy',
'is_vpn',
'geographic_risk_score',
'geo_risk_score',
'geo_location',
// Application-level fields
'user_agent',
'application',
'application_category',
'domain_category',
'ssl_subject',
'ssl_issuer',
// Behavioral pattern fields
'session_duration',
'frequency_score',
'bytes_per_session',
'connection_pattern',
'activity_level',
],
rules: [
'id',
'name',
'description',
'action',
'target_type',
'target.type', // User-friendly alias for target_type
'target_value',
'target.value', // User-friendly alias for target_value
'direction',
'status',
'category',
'hit_count',
'last_hit',
'enabled',
'created_at',
'updated_at',
],
devices: [
'id',
'name',
'ip',
'mac',
'mac_vendor',
'online',
'device_type',
'os',
'network_name',
'group_name',
'last_seen',
'bandwidth_usage',
'connection_count',
'total_download',
'total_upload',
],
target_lists: ['name', 'owner', 'category', 'target_count', 'last_updated'],
};
//# sourceMappingURL=types.js.map