Glasser

Provided by Crustdata

Search Job Listings by One Filter Condition (Crustdata)

$0.009 per resultanswers within 40s

Find job listings by exactly one native field condition — the job title, its category, a location or the hiring employer — and choose which fields each listing returns. Every listing carries the employer's core firmographics and the full posting text. Twenty listings per page, paginated with a cursor.

How to run it

Step 1Set up

Once: paste this into your agent's chat. The Skill installs the CLI and logs in by itself. For an agent that cannot use a shell, connect it over MCP instead.

Set up
set up https://glasser.ai/SKILL.md

Show me how to use the Crustdata endpoint /job/search on Glasser.

Step 2Try a specific example task

When you need to shortlist jobs, you might compare the available roles with your skills to find opportunities worth reviewing more closely.

Copy this prompt into your agent to review job matches for your skills.

Prompt
Use crustdata:/job/search on Glasser.
Find roles matching my skills in the returned job data and explain each match.

Endpoint structure

json
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "filters"
  ],
  "properties": {
    "limit": {
      "type": "integer",
      "maximum": 20,
      "minimum": 1
    },
    "cursor": {
      "type": "string",
      "maxLength": 4096,
      "minLength": 1
    },
    "fields": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 512,
        "minLength": 1
      },
      "maxItems": 20
    },
    "filters": {
      "type": "object",
      "required": [
        "field",
        "type",
        "value"
      ],
      "properties": {
        "type": {
          "enum": [
            "=",
            "!=",
            "<",
            "=<",
            ">",
            "=>",
            "in",
            "not_in",
            "(.)",
            "[.]"
          ],
          "type": "string"
        },
        "field": {
          "type": "string",
          "maxLength": 200,
          "minLength": 1
        },
        "value": {
          "anyOf": [
            {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "anyOf": [
                    {
                      "type": "number"
                    },
                    {
                      "enum": [
                        "Infinity",
                        "-Infinity",
                        "NaN"
                      ],
                      "type": "string"
                    }
                  ]
                },
                {
                  "type": "boolean"
                }
              ]
            },
            {
              "type": "array",
              "items": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "anyOf": [
                      {
                        "type": "number"
                      },
                      {
                        "enum": [
                          "Infinity",
                          "-Infinity",
                          "NaN"
                        ],
                        "type": "string"
                      }
                    ]
                  },
                  {
                    "type": "boolean"
                  }
                ]
              },
              "maxItems": 20,
              "minItems": 1
            }
          ]
        }
      },
      "additionalProperties": false
    }
  },
  "additionalProperties": false
}

How pricing works

Per result returnedCharged for each result returned. No charge when no data is returned.$0.009
Maximum per RunThe total charge will not exceed this amount.$0.40
Provider errorThe Provider failed to answer.$0.00
Timed outThe Run exceeded its time limit.$0.00
Internal failureAn internal error prevented completion.$0.00
Method POSTVersion 2Provider documentation ↗