{"name":"com.anglinglines/angling-lines","slug":"anglinglines-angling-lines","title":"Angling Lines","description":"Carp fishing lakes in France: search venues, check availability, get week prices, book.","url":"https://mcp.market/server/anglinglines-angling-lines","rating":null,"grade":"C","score":69,"certified":false,"status":"active","category":"search","tags":["search"],"presence":{"score":8,"stars":null,"forks":null,"downloads_week":null,"last_push_at":null,"license":null},"uptime":{"percent":100,"checks":1,"ok":1,"last_checked_at":"2026-09-19T15:20:49.273Z","last_ok_at":"2026-09-19T15:20:49.273Z","latency_ms":606},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":null,"website":"https://www.anglinglines.com","version":"0.1.0","remotes":[{"type":"streamable-http","url":"https://www.anglinglines.com/mcp"}],"packages":[],"tools":[{"name":"get_quote","description":"Quote one Angling Lines venue for one fixed 7-day week: give a venue name or slug, a Saturday arrival date (YYYY-MM-DD) and the party, and get the total price for the whole party for the whole week. Prices come from the live booking engine — the venue price plus the cheapest Channel crossing for the vehicles quoted — and are in GBP. Returns a structured \"unavailable\" result, not a price, when that week is not free for that party.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"booking_option":{"description":"Golden Carp Lake whole package explicitly chosen by the customer after seeing available list_swims options: 1 cabin & swim 1; 2 all of swims 2,3,4; 3 exclusive without cabin; 4 exclusive with cabin. Never infer a package from a single swim preference such as swim 4. Required for GCL.","minimum":1,"maximum":4,"type":"integer"},"accommodation_ids":{"description":"Selected accommodation IDs returned by list_swims for this date. GCL booking_option includes the matching cabin automatically.","items":{"minimum":1,"type":"integer"},"type":"array"},"include_crossing":{"description":"True when the customer wants a crossing, including cheapest crossing at a crossing-optional venue. False for venue-only. Omit to use the venue default.","type":"boolean"},"swims":{"description":"Chosen swim numbers from list_swims; omit for suitable available defaults. Requote after changing swims.","items":{"minimum":1,"type":"integer"},"type":"array"},"venue":{"description":"The venue to quote, by name or slug, e.g. \"Beaurepaire\".","type":"string"},"date":{"description":"The Saturday arrival date of the 7-day week, as YYYY-MM-DD. Every stay runs Saturday to Saturday.","type":"string"},"anglers":{"description":"Actual number of fishing guests supplied by the customer, never a package or swim capacity. Keep 2 guests as 2 even for a package with capacity 5.","minimum":1,"type":"integer"},"non_anglers":{"description":"Number of non-fishing guests. Defaults to 0.","minimum":0,"type":"integer"},"cars":{"description":"Number of cars travelling — crossing costs are per vehicle. Ask when unknown for a crossing quote; do not silently assume 1. Pass 0 for a van-only party. Defaults to 1 for older callers.","minimum":0,"type":"integer"},"vans":{"description":"Number of vans travelling. Preserve the customer's count in all crossing and booking calls. Defaults to 0.","minimum":0,"type":"integer"},"exclusive":{"description":"Quote the venue exclusively for this party. Some party sizes force exclusive use anyway.","type":"boolean"}},"required":["venue","date","anglers"]}},{"name":"list_crossings","description":"List the Channel crossing choices for one trip — venue, Saturday arrival date (YYYY-MM-DD) and party — cheapest first. Each option gives the route, operator, ferry/tunnel type, crossing time, an overnight flag and the TOTAL holiday price with that crossing, plus the outbound/inbound route ids to pass to prepare_booking when the customer picks one. The cheapest option matches the get_quote price. Crossing choice is subject to sailing availability at checkout.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"booking_option":{"description":"Golden Carp Lake whole package explicitly chosen by the customer after seeing available list_swims options: 1 cabin & swim 1; 2 all of swims 2,3,4; 3 exclusive without cabin; 4 exclusive with cabin. Never infer a package from a single swim preference such as swim 4. Required for GCL.","minimum":1,"maximum":4,"type":"integer"},"accommodation_ids":{"description":"Selected accommodation IDs returned by list_swims for this date. GCL booking_option includes the matching cabin automatically.","items":{"minimum":1,"type":"integer"},"type":"array"},"include_crossing":{"description":"True when the customer wants a crossing, including cheapest crossing at a crossing-optional venue. False for venue-only. Omit to use the venue default.","type":"boolean"},"swims":{"description":"Chosen swim numbers from list_swims; omit for suitable available defaults. Requote after changing swims.","items":{"minimum":1,"type":"integer"},"type":"array"},"venue":{"description":"The venue being booked, by name or slug, e.g. \"Beaurepaire\".","type":"string"},"date":{"description":"The Saturday arrival date of the 7-day week, as YYYY-MM-DD.","type":"string"},"anglers":{"description":"Actual number of fishing guests supplied by the customer, never a package or swim capacity. Keep 2 guests as 2 even for a package with capacity 5.","minimum":1,"type":"integer"},"non_anglers":{"description":"Number of non-fishing guests. Defaults to 0.","minimum":0,"type":"integer"},"cars":{"description":"Number of cars travelling. Use the same confirmed count as get_quote; crossing costs are per vehicle. Pass 0 for a van-only party. Defaults to 1 for older callers.","minimum":0,"type":"integer"},"vans":{"description":"Number of vans travelling. Use the same confirmed count as get_quote. Defaults to 0.","minimum":0,"type":"integer"},"exclusive":{"description":"Whether the venue is being booked exclusively.","type":"boolean"}},"required":["venue","date","anglers"]}},{"name":"list_swims","description":"Check swim and accommodation availability for a venue on a specific Saturday date and actual party. Returns free/taken swim numbers, capacities, venue-specific rules and map URL. Golden Carp Lake sells four fixed booking_options, never individual swims: if asked for one swim, explain the full package and obtain customer acceptance before passing booking_option to get_quote, list_crossings or prepare_booking. Never silently expand a single-swim request or increase the party to package capacity. At other swim venues pass chosen swims and accommodation_ids, or allow suitable free defaults. Choices can affect price, so quote the final selection before confirming.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"venue":{"description":"The venue, by name or slug, e.g. \"Fullys Lake\".","type":"string"},"date":{"description":"The Saturday arrival date of the 7-day week, as YYYY-MM-DD.","type":"string"},"anglers":{"description":"Actual number of anglers, not package or swim capacity. Pass it so the tool can check which choices fit the party.","minimum":1,"type":"integer"},"non_anglers":{"description":"Number of non-fishing guests. Defaults to 0.","minimum":0,"type":"integer"},"exclusive":{"description":"Whether the customer wants the venue exclusively.","type":"boolean"}},"required":["venue","date"]}},{"name":"list_venues","description":"List every bookable Angling Lines carp fishing venue in France, with its headline facts (lake size, swims, capacity, lake record, accommodation), boolean feature flags (dogs_allowed, catfish, pool_or_hot_tub, …) and canonical URLs. The feature keys match the search_venues filter names, so prefer search_venues to filter server-side. Takes no arguments. This is the full catalogue, not an availability check.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{}}},{"name":"prepare_booking","description":"Prepare a confirmed trip, including selected swims, accommodation, Golden Carp Lake booking_option and crossing, for the Angling Lines review page. Returns a live total and signed prefill link; creates nothing until the customer opens it. Call after the customer confirms the venue, Saturday date, party and choices. Missing or unavailable choices return a reason to resolve IN CHAT with list_swims/list_crossings; GCL can be booked through chat. Nothing is held or booked until checkout is completed.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"booking_option":{"description":"Golden Carp Lake whole package explicitly chosen by the customer after seeing available list_swims options: 1 cabin & swim 1; 2 all of swims 2,3,4; 3 exclusive without cabin; 4 exclusive with cabin. Never infer a package from a single swim preference such as swim 4. Required for GCL.","minimum":1,"maximum":4,"type":"integer"},"accommodation_ids":{"description":"Selected accommodation IDs returned by list_swims for this date. GCL booking_option includes the matching cabin automatically.","items":{"minimum":1,"type":"integer"},"type":"array"},"include_crossing":{"description":"True when the customer wants a crossing, including cheapest crossing at a crossing-optional venue. False for venue-only. Omit to use the venue default.","type":"boolean"},"venue":{"description":"The venue to book, by name or slug, e.g. \"Beaurepaire\".","type":"string"},"date":{"description":"The Saturday arrival date of the 7-day week, as YYYY-MM-DD. Every stay runs Saturday to Saturday.","type":"string"},"anglers":{"description":"Actual number of fishing guests supplied by the customer, never a package or swim capacity. Keep 2 guests as 2 even for a package with capacity 5.","minimum":1,"type":"integer"},"non_anglers":{"description":"Number of non-fishing guests. Defaults to 0.","minimum":0,"type":"integer"},"cars":{"description":"Number of cars travelling. Pass the customer's confirmed count from get_quote/list_crossings unchanged, including 0 for a van-only party. Defaults to 1 for older callers.","minimum":0,"type":"integer"},"vans":{"description":"Number of vans travelling. Pass the customer's confirmed count from get_quote/list_crossings unchanged. Defaults to 0.","minimum":0,"type":"integer"},"exclusive":{"description":"Book the venue exclusively for this party. Some party sizes force exclusive use anyway.","type":"boolean"},"outbound_route_id":{"description":"Outbound crossing route id from list_crossings. Omit (with inbound_route_id) to book the cheapest crossing.","minimum":1,"type":"integer"},"inbound_route_id":{"description":"Inbound crossing route id from list_crossings. Must be given together with outbound_route_id.","minimum":1,"type":"integer"},"dog_info":{"description":"Dog count and breed(s) supplied by the customer, e.g. \"2 dogs: Labrador and Spaniel\". Ask for missing count/breeds; do not invent them. Only for dog-friendly venues. Saved on the booking and review/edit pages; dog crossing fees are added on the review page, not included in this quote.","maxLength":100,"type":"string"},"swims":{"description":"Swim NUMBERS the customer chose (from list_swims), e.g. [1, 4]. Omit to auto-pick good free swims — the customer can change them on the review page. Ignored at venues without designated swims.","items":{"minimum":1,"type":"integer"},"type":"array"}},"required":["venue","date","anglers"]}},{"name":"search_categories","description":"Browse the curated venue categories Angling Lines maintains — themed collections such as big carp lakes, family-friendly lakes, lakes with a swimming pool, or lakes close to Calais. Called with no arguments it lists every category with its description and venue count; pass a category slug to get the bookable venues in that category. These lists are hand-picked by Angling Lines, so they cannot be reproduced by filtering on venue attributes.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"category":{"description":"The category slug to open, e.g. \"big-carp-lakes\". Omit it to list every category.","type":"string"}}}},{"name":"search_venues","description":"The tool for \"find me a lake\": search the Angling Lines catalogue by party size, features and availability, exactly the way the website search does. Every filter is optional — call it with nothing for the whole catalogue, or combine party size (\"anglers\", \"non_anglers\"), lake facts (\"min_carp_lb\", \"min_lake_acres\") and facilities (\"accommodation\", \"all_inclusive\", \"meals\", \"pool_or_hot_tub\", \"tackle_hire\", \"catfish\", \"dogs_allowed\", \"campervans\", \"rowing_boats\", \"bait_boats\", \"bait_on_site\"). Add a Saturday \"date\" (YYYY-MM-DD) to get real availability plus \"alternatives\" — venues that match everything but that week, each with the nearest earlier and later free Saturday — or \"months\" ([\"YYYY-MM\"]) to scan whole months. Narrow to a curated theme with \"category\", whose slugs come from search_categories.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"anglers":{"description":"Number of anglers (fishing guests) in the party. Defaults to 1.","minimum":1,"type":"integer"},"non_anglers":{"description":"Number of non-fishing guests travelling with the party. Defaults to 0.","minimum":0,"type":"integer"},"date":{"description":"A single Saturday arrival date as \"YYYY-MM-DD\", e.g. \"2026-09-05\". Give this to get real availability plus earlier/later alternatives. Stays run Saturday to Saturday, so any other weekday is rejected.","type":"string"},"months":{"description":"Whole months to scan, each as \"YYYY-MM\", e.g. [\"2026-09\", \"2026-10\"]. Use this OR \"date\". Returns venues with at least one free week in those months.","items":{"type":"string"},"type":"array"},"category":{"description":"Narrow to a curated search category by slug, e.g. \"big-carp-lakes\". Call search_categories for the slugs that exist.","type":"string"},"min_carp_lb":{"description":"Only lakes whose carp record is at least this many pounds, e.g. 60.","minimum":0,"type":"integer"},"min_lake_acres":{"description":"Only lakes of at least this many acres, e.g. 10.","minimum":0,"type":"number"},"accommodation":{"description":"Only lakes with on-site accommodation, rather than bivvy fishing.","type":"boolean"},"sleeps":{"description":"Only lakes whose accommodation sleeps at least this many. Applies with \"accommodation\".","minimum":1,"type":"integer"},"fish_from_accommodation":{"description":"Only lakes where you can fish from the accommodation. Applies with \"accommodation\".","type":"boolean"},"all_inclusive":{"description":"Only all-inclusive venues.","type":"boolean"},"meals":{"description":"Only venues where meals are available.","type":"boolean"},"pool_or_hot_tub":{"description":"Only venues with a swimming pool or a hot tub.","type":"boolean"},"tackle_hire":{"description":"Only venues where tackle can be hired.","type":"boolean"},"catfish":{"description":"Only venues stocked with catfish.","type":"boolean"},"dogs_allowed":{"description":"Only venues that accept dogs and other pets.","type":"boolean"},"campervans":{"description":"Only venues that take campervans and motorhomes.","type":"boolean"},"rowing_boats":{"description":"Only venues with rowing boats.","type":"boolean"},"bait_boats":{"description":"Only venues where bait boats are allowed.","type":"boolean"},"bait_on_site":{"description":"Only venues selling bait on site.","type":"boolean"},"crossing_optional":{"description":"Only venues bookable WITHOUT a Channel crossing — the holiday is priced venue-only and the customer arranges their own travel.","type":"boolean"}}}},{"name":"venues_available_on_date","description":"Check which Angling Lines venues genuinely have space for a party, either on one specific Saturday or across a whole month. Stays are fixed 7-day weeks, so an arrival date must be a Saturday in \"YYYY-MM-DD\" form; pass \"month\" as \"YYYY-MM\" instead to scan a whole month (defaults to the current month). Returns only venues with real availability, each with its free arrival dates and remaining capacity. Use this — not list_venues — whenever the question is about what is free or bookable.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"anglers":{"description":"Number of anglers (fishers) in the party.","minimum":1,"type":"integer"},"date":{"description":"A single Saturday arrival date as \"YYYY-MM-DD\", e.g. \"2026-09-05\". Use this OR \"month\". Stays run Saturday to Saturday, so any other weekday is rejected.","type":"string"},"month":{"description":"A whole month to scan as \"YYYY-MM\", e.g. \"2026-09\". Use this OR \"date\". Defaults to the current month when neither is given.","type":"string"},"non_anglers":{"description":"Number of non-fishing guests travelling with the party. Defaults to 0.","minimum":0,"type":"integer"}},"required":["anglers"]}}],"scan":{"score":69,"grade":"C","scanned_at":"2026-09-19T09:55:12.745Z","report":{"scannerVersion":"0.1.3","scannedAt":"2026-09-19T09:55:12.704Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 1604ms"]},"poisoning":{"score":15,"max":15,"notes":["8 tool descriptions checked"]},"auth":{"score":10,"max":15,"notes":["open endpoint, read-only tools"]},"maintenance":{"score":3,"max":15,"notes":["no repository listed"]},"identity":{"score":4,"max":10,"notes":["verified namespace with website, no repo"]}},"findings":[{"id":"maint.no-repo","severity":"low","component":"maintenance","title":"No source repository listed"}],"inputs":{"probes":[{"url":"https://www.anglinglines.com/mcp","reachable":true,"authRequired":false,"latencyMs":1604,"serverInfo":{"name":"Angling Lines","version":"0.1.0"}}],"packages":[],"repo":{"found":false},"icon":{"url":"https://www.anglinglines.com/apple-touch-icon.png","source":"site","width":180,"height":180},"presence":{"stars":null,"forks":null,"downloadsWeek":null,"license":null,"lastPushAt":null,"score":8}}}},"grade_history":[],"reviews":[]}