Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
search_datasetsA

Fuzzy-search the curated WGEA dataset catalog.

All seven curated datasets cover the WGEA Public Data File: per-employer workforce composition, manager movements, gender-equality policy answers, parental-leave + flexible-work policies, harm-prevention policies, employee support, and workplace overview.

Examples: # Find datasets about parental leave results = await search_datasets("parental leave") # → [{id: 'PARENTAL_LEAVE_FLEX', ...}]

# Find workforce composition by gender
results = await search_datasets("women in management")

Returns: List of DatasetSummary (id, name, description, update_frequency, is_curated), ranked by relevance.

describe_datasetA

Describe a dataset's filterable dimensions, returnable measures, units, and source.

Use this before calling get_data on a new dataset — it tells you the valid filter keys ('employer_name', 'anzsic_division', 'gender', ...), enumerated filter values where they exist (e.g. 'women' → 'Women'), measure aliases ('n_employees'), and the canonical source URL.

Returns: DatasetDetail with id, name, description, period_coverage, list of dimensions, list of measures, source_url, and the resolved reporting year label.

get_dataA

Query a curated WGEA dataset and return observations.

Examples: # Gender breakdown at Commonwealth Bank resp = await get_data( "WORKFORCE_COMPOSITION", filters={"employer_name": "Commonwealth Bank"}, )

# Promotions to manager by gender at Westpac in 2024-25
resp = await get_data(
    "WORKFORCE_MANAGEMENT",
    filters={"employer_name": "Westpac", "movement_type": "Promotions",
             "manager_category": "Managers"},
)

# Which employers in mining set gender targets?
resp = await get_data(
    "GENDER_EQUALITY_ACTIONS",
    filters={"anzsic_division": "Mining",
             "section": "Gender Pay Gap",
             "response": "Yes"},
)

# Sexual harassment policy responses across financial services
resp = await get_data(
    "HARM_PREVENTION",
    filters={"anzsic_division": "Financial and Insurance Services",
             "subsection": "Sexual Harassment"},
)

Returns: DataResponse with records (or csv), unit, reporting_year, row_count, source URL, the actual download_url used, "did you mean?" fuzzy hints if the employer-name filter didn't match exactly, and CC-BY 3.0 AU attribution.

latestA

Return rows from the most recent WGEA reporting year for a dataset.

Trims to the single latest reporting_year — useful for "what's the current gender breakdown at CBA?" without having to remember WGEA's annual cadence.

Examples: # Latest workforce composition at CBA resp = await latest("WORKFORCE_COMPOSITION", filters={"employer_name": "Commonwealth Bank"})

# Cap rows (portfolio-standard name)
resp = await latest("WORKFORCE_COMPOSITION",
                    filters={"anzsic_division": "Mining"}, limit=100)

# Legacy alias still works
resp = await latest("WORKFORCE_COMPOSITION",
                    filters={"anzsic_division": "Mining"}, max_rows=100)

Parameter notes: - Prefer limit (portfolio-standard; matches asic-mcp's latest(..., limit) parameter). - max_rows retained as legacy alias. - Supplying both raises ValueError — pick one. - get_data() keeps max_rows unchanged (separate surface, separate concern).

top_nA

Return the N rows with the largest (or smallest) value of a measure.

Ranks across one WGEA reporting year (the latest by default, or a specific year via reporting_year=). This is the most common agent workflow — "show me the top 10 X by Y" — collapsed into a single server-side call: rank-and-slice happens on the server so the agent never has to fetch a full table just to take the top of it.

Examples: # 10 employers with the most women managers (latest reporting year) top_n("WORKFORCE_COMPOSITION", "n_employees", n=10, filters={"gender": "Women", "manager_category": "Manager"})

# 5 ANZSIC divisions with the fewest Yes responses on Gender Pay Gap
top_n("GENDER_EQUALITY_ACTIONS", "n_responses", n=5, direction="bottom",
      filters={"section": "Gender Pay Gap", "response": "Yes"})

# Top 5 employers in Mining by total workforce in 2023-24
top_n("WORKFORCE_COMPOSITION", "n_employees", n=5,
      filters={"anzsic_division": "Mining"},
      reporting_year="2023-24")

Returns: DataResponse with at most n records, sorted by measure value in the requested direction. Other fields (reporting_year, unit, attribution) match a regular get_data call.

list_curatedA

List every curated dataset ID in this version of wgea-mcp.

Returns: Sorted list of dataset IDs.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/Bigred97/wgea-mcp'

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