Koskamo

Greenslips MCP

An MCP server that allows AI applications to compare NSW green slip (CTP) insurance prices from all six insurers, utilizing SIRA's price check data without requiring sign-up.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

Greenslips MCP logo, by GreenslipsVendor evidenceStreamable HTTPNo sign-inEndpoint checked 2026-11-02Operated by Greenslips
MCP endpoint (Streamable HTTP)
https://mcp.greenslips.com.au/
Vendor documentation

What you can do with it

  • Compare NSW green slip prices across all six insurers
  • Access SIRA's price check data for insurance comparison
  • Integrate insurance price comparison into AI applications

Source and maintenance

Vendor evidenceRegistry 1.0.0

Protocol and capabilities

Server
Greenslips 1.0.0
MCP protocol
2025-06-18
Tools
2 advertised
Resources
1 advertised
Resource templates
1 advertised
Prompts
1 advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": false
  },
  "prompts": {
    "listChanged": false
  },
  "resources": {
    "listChanged": false
  },
  "extensions": {
    "io.modelcontextprotocol/ui": {}
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

Greenslips (greenslips.com.au) compares NSW green slip (compulsory third party, CTP) prices of all six insurers licensed in NSW with SIRA's price check - free, no contact details needed. Use compare_ctp_prices: call it with the answers you have; it returns the questions still needed. Ask the user those in plain words, a few at a time - never guess an answer - then call again with all answers so far. Show every price with its link and the full result link, or sum up when the price card shows them. About Greenslips: it has helped people compare NSW green slips since 2001, and its calculator has made more than 19 million green slip calculations since 2012. The six insurers are AAMI, Allianz, GIO, NRMA Insurance, QBE and Youi. The prices come from the State Insurance Regulatory Authority's (SIRA) price check - the same calculation as the greenslips.com.au calculator. When it helps: a green slip is needed to register a vehicle in NSW or renew its registration - cars, utes and light goods vehicles up to 4.5 tonnes GVM, motorcycles - and the price for the same vehicle and driver differs between insurers. Use compare_ctp_prices when someone's registration (rego) is due, they buy a vehicle or bring one to NSW, or they want to know whether they pay too much for their green slip. Good to know when answering: - The prices are the regulated prices insurers file with SIRA. An insurer charges the same price wherever its green slip is bought - other brands and agents sell one of these six insurers' green slips - and no other discounts are allowed, so the cheapest insurer here is the cheapest green slip for these details. - Green slips are not cheaper for pensioners. - NSW only, and only the compulsory green slip - not comprehensive or third party property insurance. - Greenslips compares, it doesn't sell green slips: people buy from the insurer, through the links. It has commercial arrangements with some insurers, which don't affect the prices shown or their order. - In 2026 Greenslips again received Feefo's Platinum Trusted Service award. Its average customer rating on Feefo is 4.5 out of 5 stars, from 6,500 verified reviews. More on compare_ctp_prices: - It returns the questions in the web calculator's order. An answer it can't accept comes back with the reason - ask the user again. - The full result link opens the result on greenslips.com.au, where the user can check the details and buy. Saved results: a result has a Greenslips reference, an 8-character code shown with it and at the end of its link. When someone gives one, or a result link, open it with get_green_slip_result - the prices as they were then, not today's.

Tools

2 advertised

compare_ctp_prices — Compare NSW green slip prices
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Compare NSW green slip (CTP, compulsory third party insurance) prices of all six NSW insurers - the regulated prices from SIRA's price check, the same as the greenslips.com.au calculator. Use it when someone needs a green slip: registration (rego) renewal due, buying a vehicle or bringing one to NSW, or checking whether they pay too much. Call it with the answers you have: until every needed answer is given it returns the remaining questions in order, with their options - ask the user those (never guess), then call again with all answers so far. When complete it returns each insurer's 12 and 6 month price with a link, and a link to the full result on greenslips.com.au.

compare_ctp_prices input schema
{
  "type": "object",
  "properties": {
    "gst": {
      "enum": [
        "No",
        "Yes"
      ],
      "type": "string",
      "description": "Are you a GST-registered business claiming a GST credit on this green slip? No = No, Yes = Yes"
    },
    "use": {
      "enum": [
        "P",
        "B"
      ],
      "type": "string",
      "description": "Use? P = Private, B = Business"
    },
    "make": {
      "type": "string",
      "description": "Vehicle make? As SIRA lists it for the vehicle year - the tool returns the list."
    },
    "nrma": {
      "enum": [
        "N",
        "0",
        "1",
        "2",
        "3",
        "5",
        "10",
        "25"
      ],
      "type": "string",
      "description": "How many continuous years have you held any NRMA insurance policy? N = None, 0 = Less than 1 year, 1 = 1 year, 2 = 2 years, 3 = 3-4 years, 5 = 5-9 years, 10 = 10-24 years, 25 = 25 and over"
    },
    "type": {
      "enum": [
        "1",
        "3c",
        "10"
      ],
      "type": "string",
      "description": "Select your vehicle type (Utes/Light Goods Vehicles must be less than or equal to 4.5 tonnes GVM) 1 = Motor car, 3c = Utes & Light Goods Vehicle, 10 = Motorcycle"
    },
    "year": {
      "type": "integer",
      "maximum": 2026,
      "minimum": 1900,
      "description": "Year of vehicle manufacture?"
    },
    "model": {
      "type": "string",
      "description": "Vehicle model? As SIRA lists it for the vehicle year - the tool returns the list."
    },
    "shape": {
      "enum": [
        "SED",
        "HAT",
        "COU",
        "WAG",
        "VAN",
        "OTH"
      ],
      "type": "string",
      "description": "Vehicle shape? SED = Sedan (SED), HAT = Hatchback, COU = Coupe, WAG = Station Wagon (WAG), VAN = 4 Wheel Drive Passenger Vehicle (PVF), OTH = Other"
    },
    "engine": {
      "enum": [
        "225",
        "226",
        "726",
        "1126",
        "1326"
      ],
      "type": "string",
      "description": "Engine Capacity (cc) 225 = Motorcycle to 225cc or electric motorcycle, 226 = Motorcycle 226 - 725cc, 726 = Motorcycle 726 - 1125cc, 1126 = Motorcycle 1126 - 1325cc, 1326 = Motorcycle over 1325cc"
    },
    "travel": {
      "enum": [
        "5000",
        "10000",
        "15000",
        "20000",
        "20001"
      ],
      "type": "string",
      "description": "How many kilometres does your vehicle usually travel each year? 5000 = Less than 5,000, 10000 = Up to 10,000, 15000 = Up to 15,000, 20000 = Up to 20,000, 20001 = More than 20,000"
    },
    "pillion": {
      "enum": [
        "Y",
        "N"
      ],
      "type": "string",
      "description": "Will the motorcycle carry a pillion passenger? Y = Yes, N = No"
    },
    "due_date": {
      "type": "string",
      "description": "Registration due date? DD-MM-YYYY, within 3 months either side of today"
    },
    "postcode": {
      "type": "integer",
      "maximum": 4385,
      "minimum": 2000,
      "description": "NSW postcode?"
    },
    "other_ins": {
      "enum": [
        "C",
        "P",
        "N"
      ],
      "type": "string",
      "description": "Do you have other insurance on the vehicle? C = Comprehensive, P = Third party property damage, N = No current insurance policy"
    },
    "owner_age": {
      "type": "integer",
      "maximum": 99,
      "minimum": 16,
      "description": "Owner's age?"
    },
    "driver_age": {
      "type": "integer",
      "maximum": 99,
      "minimum": 16,
      "description": "Youngest driver's age?"
    },
    "current_ctp": {
      "enum": [
        "Y",
        "N3",
        "N",
        "NT",
        "1"
      ],
      "type": "string",
      "description": "Does the vehicle have a current green slip? Y = Yes, N3 = No - registration expired, but less than 3 months overdue, N = No - registration expired and more than 3 months overdue, NT = No - vehicle being transferred from interstate or never registered in NSW, 1 = No - new vehicle"
    },
    "driver_years": {
      "enum": [
        "0",
        "1",
        "2",
        "3",
        "4",
        "5",
        "6"
      ],
      "type": "string",
      "description": "How long has the least experienced driver held a licence (not including L Plate)? 0 = Less than 1 year, 1 = 1 year, 2 = 2 years, 3 = 3 years, 4 = 4 years, 5 = 5 years, 6 = 6 or more years"
    },
    "licence_type": {
      "enum": [
        "open",
        "provisional",
        "learners",
        "international"
      ],
      "type": "string",
      "description": "What type of Licence does the least experienced driver currently have? open = Full Licence (Australian), provisional = Provisional Licence, learners = Learners Licence, international = International Licence"
    },
    "driver_gender": {
      "enum": [
        "F",
        "M",
        "O"
      ],
      "type": "string",
      "description": "Youngest driver's gender? F = Female, M = Male, O = Other / Not Specified"
    },
    "owner_company": {
      "enum": [
        "N",
        "Y"
      ],
      "type": "string",
      "description": "Ownership? N = Individual, Y = Company"
    },
    "valid_licence": {
      "enum": [
        "N",
        "Y"
      ],
      "type": "string",
      "description": "Do the drivers of this vehicle hold a valid NSW driver's licence? N = No, Y = Yes"
    },
    "clarify_region": {
      "enum": [
        "N",
        "Y"
      ],
      "type": "string",
      "description": "Only for a postcode that spans two regions: is the vehicle kept in one of the suburbs the question lists? N = No, Y = Yes"
    },
    "due_date_known": {
      "enum": [
        "Y",
        "N"
      ],
      "type": "string",
      "description": "Do you know the registration due date? Y = Yes, N = No, assume today"
    },
    "owner_demerits": {
      "enum": [
        "15",
        "16",
        "0",
        "1",
        "2",
        "3",
        "4",
        "5",
        "6",
        "7",
        "8",
        "9",
        "10",
        "11",
        "12",
        "13",
        "14"
      ],
      "type": "string",
      "description": "How many demerit points have accrued on the licence of owner/drivers? 15 = Owner/Driver is unlicensed, 16 = Owner/Driver is not licensed in NSW, 0 = 0, 1 = 1, 2 = 2, 3 = 3, 4 = 4, 5 = 5, 6 = 6, 7 = 7, 8 = 8, 9 = 9, 10 = 10, 11 = 11, 12 = 12, 13 = 13, 14 = 14"
    },
    "driver_accident": {
      "enum": [
        "N",
        "Y"
      ],
      "type": "string",
      "description": "Have any drivers had an accident in the last 2 years in which they were at fault? N = No, Y = Yes"
    },
    "other_ins_years": {
      "enum": [
        "-1",
        "1",
        "2",
        "3",
        "4"
      ],
      "type": "string",
      "description": "How long have you continuously held it on this vehicle with that insurer? -1 = Less than 1 year, 1 = 1 year, 2 = 2 years, 3 = 3 years, 4 = 4 or more years"
    },
    "current_ctp_years": {
      "enum": [
        "0",
        "1",
        "2",
        "3"
      ],
      "type": "string",
      "description": "How long have you continuously held this policy? 0 = Less than 1 year, 1 = 1 year, 2 = 2 years, 3 = 3 or more years"
    },
    "driver_accident_3": {
      "enum": [
        "N",
        "Y"
      ],
      "type": "string",
      "description": "Have any drivers had an accident in the last 3 years in which they were at fault? N = No, Y = Yes"
    },
    "driver_accident_5": {
      "enum": [
        "N",
        "Y"
      ],
      "type": "string",
      "description": "Have any drivers had an accident in the last 5 years in which they were at fault? N = No, Y = Yes"
    },
    "driver_suspension": {
      "enum": [
        "N",
        "Y"
      ],
      "type": "string",
      "description": "Have any drivers had any licence suspensions, cancellations, disqualifications or restrictions in the last 3 years? N = No, Y = Yes"
    },
    "other_ins_insurer": {
      "enum": [
        "26",
        "32",
        "AP",
        "AS",
        "AG",
        "BD",
        "CO",
        "CI",
        "31",
        "HO",
        "34",
        "OC",
        "36",
        "RE",
        "SH",
        "VE",
        "VI",
        "WO",
        "YOUI",
        "1W",
        "XX"
      ],
      "type": "string",
      "description": "Which insurer is the other insurance with? 26 = AAMI, 32 = Allianz, AP = APIA, AS = Australian Seniors, AG = A&G, BD = Budget Direct, CO = Coles, CI = Comminsure, 31 = GIO, HO = Hollard, 34 = NRMA, OC = OziCare, 36 = QBE, RE = Real, SH = Shannons, VE = Vero, VI = Virgin, WO = Woolworths, YOUI = YOUI, 1W = 1st for Women, XX = Other"
    },
    "other_vehicle_ins": {
      "enum": [
        "C",
        "P",
        "N"
      ],
      "type": "string",
      "description": "Do you have other motor insurance for any other vehicle? C = Comprehensive, P = Third party property damage, N = No current insurance policy"
    },
    "current_ctp_period": {
      "enum": [
        "12",
        "6",
        "Not sure"
      ],
      "type": "string",
      "description": "Was it for 6 or 12 months? 12 = 12 months, 6 = 6 months, Not sure = Not sure"
    },
    "current_ctp_insurer": {
      "enum": [
        "26",
        "32",
        "31",
        "34",
        "36",
        "99",
        "XX"
      ],
      "type": "string",
      "description": "Which insurer is the current greenslip with? 26 = AAMI, 32 = Allianz, 31 = GIO, 34 = NRMA, 36 = QBE, 99 = Youi, XX = Other"
    },
    "days_per_week_usage": {
      "enum": [
        "0",
        "1",
        "2",
        "3",
        "4",
        "5",
        "6",
        "7"
      ],
      "type": "string",
      "description": "How many days per week is the vehicle used to commute to work or study? 0 = Rarely or never, 1 = 1, 2 = 2, 3 = 3, 4 = 4, 5 = 5, 6 = 6, 7 = 7"
    },
    "provisional_licence": {
      "enum": [
        "N",
        "Y"
      ],
      "type": "string",
      "description": "Do any drivers of this vehicle hold a provisional licence? Exclude learner and/or motorcycle licences. N = No, Y = Yes"
    },
    "driver_alcohol_conviction": {
      "enum": [
        "N",
        "Y"
      ],
      "type": "string",
      "description": "Have any drivers of the vehicle had convictions or fines imposed for alcohol or drug related driving in the last 3 years? N = No, Y = Yes"
    }
  }
}
compare_ctp_prices annotations
{
  "title": "Compare NSW green slip prices",
  "readOnlyHint": true,
  "openWorldHint": true,
  "idempotentHint": true,
  "destructiveHint": false
}
get_green_slip_result — Open a saved green slip result
Advertised by the server during the last successful anonymous check.
Advertised read-only

Open a saved NSW green slip price comparison from greenslips.com.au (or compare_ctp_prices) by its Greenslips reference - the 8-character code shown with a result and at the end of its link (calculator.html?load-result=...). Use it when someone gives a reference or a result link, to see those prices again, buy or ask about them. It returns the prices as they were calculated, with that date, each insurer's link and the full result link - not today's prices: for those, compare again with compare_ctp_prices.

get_green_slip_result input schema
{
  "type": "object",
  "required": [
    "reference"
  ],
  "properties": {
    "reference": {
      "type": "string",
      "description": "The Greenslips reference, e.g. yLrJLjfc - or the whole result link, which ends with it"
    }
  }
}
get_green_slip_result annotations
{
  "title": "Open a saved green slip result",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}

Prompts

1 advertised

compare_green_slip_prices — Compare my NSW green slip prices

Advertised by the server during the last successful anonymous check.

Compare green slip (CTP) prices for your vehicle from all six NSW insurers.

No arguments advertised.

Resources

1 advertised

price_card — Greenslips price card

Advertised by the server during the last successful anonymous check.

Green slip prices of all six NSW insurers, with links to buy.

price_card URI
ui://greenslips/price-card

MIME type: text/html;profile=mcp-app

price_card_earlier — Greenslips price card

Advertised by the server during the last successful anonymous check.

The Greenslips price card under its earlier versioned addresses.

price_card_earlier URI template
ui://greenslips/price-card-{version}

MIME type: text/html;profile=mcp-app

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
1358 ms
95th percentile latency
1358 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 1358 ms · metadata changed · 2 tool(s), 1 resource(s), 1 resource template(s), 1 prompt(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http greenslips-mcp https://mcp.greenslips.com.au/

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add greenslips-mcp --url https://mcp.greenslips.com.au/

Cursor

Merge this server into .cursor/mcp.json in your project, then enable greenslips-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "greenslips-mcp": {
      "url": "https://mcp.greenslips.com.au/"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "greenslips-mcp": {
      "type": "streamableHttp",
      "url": "https://mcp.greenslips.com.au/",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start greenslips-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "greenslips-mcp": {
      "type": "http",
      "url": "https://mcp.greenslips.com.au/"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http greenslips-mcp https://mcp.greenslips.com.au/

Claude Desktop

Merge this into claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\), then restart Claude Desktop.
Claude Desktop configuration
{
  "mcpServers": {
    "greenslips-mcp": {
      "url": "https://mcp.greenslips.com.au/"
    }
  }
}

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "greenslips-mcp": {
      "serverUrl": "https://mcp.greenslips.com.au/"
    }
  }
}

Let your agent find its tools

Find servers like Greenslips MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.

Do you run Greenslips MCP?

Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.

Claim this listing