Skip to main content
Glama
by zachegner
facility.py1.79 kB
"""Facility-related data models.""" from pydantic import BaseModel, Field from typing import List, Optional from enum import Enum from .common import Coordinates class FacilityType(str, Enum): """Types of EPA-regulated facilities.""" TRI = "TRI" # Toxics Release Inventory RCRA = "RCRA" # Resource Conservation and Recovery Act SDWIS = "SDWIS" # Safe Drinking Water Information System FRS = "FRS" # Facility Registry Service ICIS = "ICIS" # Integrated Compliance Information System GHG = "GHG" # Greenhouse Gas Reporting Program NEI = "NEI" # National Emissions Inventory SEMS = "SEMS" # Superfund Enterprise Management System class FacilityInfo(BaseModel): """Information about an EPA-regulated facility.""" registry_id: str = Field(..., description="FRS Registry ID") name: str = Field(..., description="Facility name") address: Optional[str] = Field(None, description="Facility address") city: Optional[str] = Field(None, description="City") state: Optional[str] = Field(None, description="State abbreviation") zip_code: Optional[str] = Field(None, description="ZIP code") coordinates: Optional[Coordinates] = Field(None, description="Facility coordinates") programs: List[FacilityType] = Field(default_factory=list, description="Active EPA programs") naics_code: Optional[str] = Field(None, description="NAICS industry code") naics_description: Optional[str] = Field(None, description="NAICS industry description") distance_miles: Optional[float] = Field(None, ge=0, description="Distance from search center in miles") status: Optional[str] = Field(None, description="Facility status") def __str__(self) -> str: return f"{self.name} ({self.registry_id})"

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/zachegner/envirofacts-mcp'

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