← WebMCP Directory

Tool tree

hacklist.io

Developer ToolsTools verified
Website
The best place on the internet to find active AI and Web3 hackathons, sorted by deadline, led by prize intelligence.
Explore capabilities
    search_opportunitiesAnswer

    Search active HackList opportunities across hackathons, jobs, grants, bounties, and programs using real Supabase data.

    View tool JSON
    {
      "name": "search_opportunities",
      "kind": "answer",
      "impl": "imperative",
      "description": "Search active HackList opportunities across hackathons, jobs, grants, bounties, and programs using real Supabase data.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "query": {
            "type": "string",
            "description": "Optional search text for title, organization, description, category, value, location, or format.",
            "maxLength": 120
          },
          "type": {
            "type": "string",
            "enum": [
              "hackathon",
              "job",
              "grant",
              "bounty",
              "program"
            ],
            "description": "Optional HackList opportunity type filter."
          },
          "category": {
            "type": "string",
            "enum": [
              "AI",
              "Web3",
              "Both"
            ],
            "description": "Optional AI/Web3/Both category filter."
          },
          "format": {
            "type": "string",
            "maxLength": 80,
            "description": "Optional format/location filter such as Online, Remote, Hybrid, or In-Person."
          },
          "verifiedOnly": {
            "type": "boolean",
            "description": "When true, return only HackList-verified listings."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 50,
            "description": "Maximum number of opportunities to return."
          }
        }
      },
      "page": "/"
    }
    get_opportunityAnswer

    Return one HackList opportunity by typed reference with normalized fields, original category metadata, and verified intelligence when available.

    View tool JSON
    {
      "name": "get_opportunity",
      "kind": "answer",
      "impl": "imperative",
      "description": "Return one HackList opportunity by typed reference with normalized fields, original category metadata, and verified intelligence when available.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "hackathon",
              "job",
              "grant",
              "bounty",
              "program"
            ],
            "description": "Optional HackList opportunity type filter."
          },
          "id": {
            "type": "string",
            "minLength": 1,
            "maxLength": 100,
            "description": "Stable ID from the source HackList table."
          },
          "opportunityRef": {
            "type": "string",
            "minLength": 3,
            "maxLength": 140,
            "description": "Alternative compound reference in the form type:id."
          }
        }
      },
      "page": "/"
    }
    match_opportunitiesAction

    Rank active HackList opportunities for a builder profile using category-aware evidence, hard constraints, and UNKNOWN-preserving reasoning.

    View tool JSON
    {
      "name": "match_opportunities",
      "kind": "act",
      "impl": "imperative",
      "description": "Rank active HackList opportunities for a builder profile using category-aware evidence, hard constraints, and UNKNOWN-preserving reasoning.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "hackathon",
              "job",
              "grant",
              "bounty",
              "program"
            ],
            "description": "Optional HackList opportunity type filter."
          },
          "opportunityTypes": {
            "type": "array",
            "maxItems": 5,
            "items": {
              "type": "string",
              "enum": [
                "hackathon",
                "job",
                "grant",
                "bounty",
                "program"
              ],
              "description": "Optional HackList opportunity type filter."
            },
            "description": "Allowed opportunity types when matching across the catalog."
          },
          "country": {
            "type": "string",
            "maxLength": 80,
            "description": "Builder country, territory, or jurisdiction."
          },
          "skills": {
            "type": "array",
            "maxItems": 12,
            "items": {
              "type": "string",
              "maxLength": 60
            },
            "description": "Builder skills, frameworks, APIs, or domain strengths."
          },
          "technologies": {
            "type": "array",
            "maxItems": 12,
            "items": {
              "type": "string",
              "maxLength": 60
            },
            "description": "Technologies the builder wants or is able to use."
          },
          "interests": {
            "type": "array",
            "maxItems": 12,
            "items": {
              "type": "string",
              "maxLength": 80
            },
            "description": "Opportunity themes or domains the builder prefers."
          },
          "availableDays": {
            "type": "integer",
            "minimum": 0,
            "maximum": 120,
            "description": "Whole days available before deadline."
          },
          "preferredFormats": {
            "type": "array",
            "maxItems": 5,
            "items": {
              "type": "string",
              "enum": [
                "Online",
                "In-Person",
                "Hybrid",
                "Remote",
                "Any"
              ]
            },
            "description": "Acceptable participation or work formats."
          },
          "avoid": {
            "type": "array",
            "maxItems": 12,
            "items": {
              "type": "string",
              "maxLength": 80
            },
            "description": "Technologies, themes, requirements, or terms to avoid."
          },
          "teamSize": {
            "type": "integer",
            "minimum": 1,
            "maximum": 99,
            "description": "Expected team size when relevant."
          },
          "solo": {
            "type": "boolean",
            "description": "Whether the builder is acting alone."
          },
          "minimumValue": {
            "type": "integer",
            "minimum": 0,
            "description": "Minimum known dollar-denominated value when relevant."
          },
          "hasExistingProject": {
            "type": "boolean",
            "description": "Whether the builder wants to submit or extend existing work."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 20,
            "description": "Maximum matches to return."
          }
        }
      },
      "page": "/"
    }
    compare_opportunitiesAction

    Compare 2 to 4 typed HackList opportunity references, preserving category-specific value types and labeling non-comparable dimensions.

    View tool JSON
    {
      "name": "compare_opportunities",
      "kind": "act",
      "impl": "imperative",
      "description": "Compare 2 to 4 typed HackList opportunity references, preserving category-specific value types and labeling non-comparable dimensions.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "opportunities"
        ],
        "properties": {
          "opportunities": {
            "type": "array",
            "minItems": 2,
            "maxItems": 4,
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "type",
                "id"
              ],
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "hackathon",
                    "job",
                    "grant",
                    "bounty",
                    "program"
                  ],
                  "description": "Optional HackList opportunity type filter."
                },
                "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 100,
                  "description": "Stable ID from the source HackList table."
                }
              }
            },
            "description": "Typed opportunity references to compare."
          },
          "profile": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "hackathon",
                  "job",
                  "grant",
                  "bounty",
                  "program"
                ],
                "description": "Optional HackList opportunity type filter."
              },
              "opportunityTypes": {
                "type": "array",
                "maxItems": 5,
                "items": {
                  "type": "string",
                  "enum": [
                    "hackathon",
                    "job",
                    "grant",
                    "bounty",
                    "program"
                  ],
                  "description": "Optional HackList opportunity type filter."
                },
                "description": "Allowed opportunity types when matching across the catalog."
              },
              "country": {
                "type": "string",
                "maxLength": 80,
                "description": "Builder country, territory, or jurisdiction."
              },
              "skills": {
                "type": "array",
                "maxItems": 12,
                "items": {
                  "type": "string",
                  "maxLength": 60
                },
                "description": "Builder skills, frameworks, APIs, or domain strengths."
              },
              "technologies": {
                "type": "array",
                "maxItems": 12,
                "items": {
                  "type": "string",
                  "maxLength": 60
                },
                "description": "Technologies the builder wants or is able to use."
              },
              "interests": {
                "type": "array",
                "maxItems": 12,
                "items": {
                  "type": "string",
                  "maxLength": 80
                },
                "description": "Opportunity themes or domains the builder prefers."
              },
              "availableDays": {
                "type": "integer",
                "minimum": 0,
                "maximum": 120,
                "description": "Whole days available before deadline."
              },
              "preferredFormats": {
                "type": "array",
                "maxItems": 5,
                "items": {
                  "type": "string",
                  "enum": [
                    "Online",
                    "In-Person",
                    "Hybrid",
                    "Remote",
                    "Any"
                  ]
                },
                "description": "Acceptable participation or work formats."
              },
              "avoid": {
                "type": "array",
                "maxItems": 12,
                "items": {
                  "type": "string",
                  "maxLength": 80
                },
                "description": "Technologies, themes, requirements, or terms to avoid."
              },
              "teamSize": {
                "type": "integer",
                "minimum": 1,
                "maximum": 99,
                "description": "Expected team size when relevant."
              },
              "solo": {
                "type": "boolean",
                "description": "Whether the builder is acting alone."
              },
              "minimumValue": {
                "type": "integer",
                "minimum": 0,
                "description": "Minimum known dollar-denominated value when relevant."
              },
              "hasExistingProject": {
                "type": "boolean",
                "description": "Whether the builder wants to submit or extend existing work."
              },
              "limit": {
                "type": "integer",
                "minimum": 1,
                "maximum": 20,
                "description": "Maximum matches to return."
              }
            },
            "description": "Optional builder profile to make the comparison decision-specific."
          }
        }
      },
      "page": "/"
    }
    get_opportunity_readinessAnswer

    Return a category-aware readiness checklist for one HackList opportunity, separating known listing facts from UNKNOWN requirements.

    View tool JSON
    {
      "name": "get_opportunity_readiness",
      "kind": "answer",
      "impl": "imperative",
      "description": "Return a category-aware readiness checklist for one HackList opportunity, separating known listing facts from UNKNOWN requirements.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "hackathon",
              "job",
              "grant",
              "bounty",
              "program"
            ],
            "description": "Optional HackList opportunity type filter."
          },
          "id": {
            "type": "string",
            "minLength": 1,
            "maxLength": 100,
            "description": "Stable ID from the source HackList table."
          },
          "opportunityRef": {
            "type": "string",
            "minLength": 3,
            "maxLength": 140,
            "description": "Alternative compound reference in the form type:id."
          }
        }
      },
      "page": "/"
    }