YachtFinder
Search about 20,000 yachts for sale, charter and sold, with where AIS last placed each one.
我該用這個嗎
品質與安全性
根據工具定義與協定合規性的自動化分析。
上下文成本
這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。
安裝
一鍵安裝
將以下內容加入你的 `claude_desktop_config.json` 檔案:
{
"mcpServers": {
"yachtfinder": {
"url": "https://mcp.yachtfinder.co/mcp"
}
}
}遠端端點
https://mcp.yachtfinder.co/mcpstreamable-http它能做什麼
工具清單
工具(3)
🟢find_yachts(builder, name_contains, min_length_m, max_length_m, min_price_usd, ...)
Search YachtFinder's catalogue of about 20,000 yachts by builder, length, asking price, build year, status (for sale, for charter, reported sold, not for sale) and place. Returns up to 25 yachts, longest first by default, each with her status, the broker's asking price, YachtFinder's estimate where her page shows one, and a link to her page on yachtfinder.co. `near` keeps yachts whose AIS position, as the site publishes it, lies within `radius_km` of a named harbour or anchorage; `listed_in` matches the town or country the broker's listing states.
輸入結構描述
{
"type": "object",
"properties": {
"builder": {
"type": "string",
"maxLength": 60,
"description": "Shipyard, e.g. \"Benetti\", \"Feadship\", \"Lürssen\". Case and accents are ignored."
},
"name_contains": {
"type": "string",
"maxLength": 60,
"description": "Part of the yacht's name."
},
"min_length_m": {
"type": "number",
"minimum": 0,
"maximum": 200,
"description": "Minimum length overall, metres."
},
"max_length_m": {
"type": "number",
"minimum": 0,
"maximum": 200,
"description": "Maximum length overall, metres."
},
"min_price_usd": {
"type": "number",
"minimum": 0,
"description": "Minimum asking price in whole US dollars (20000000 = $20M). Only yachts with a published asking price are compared."
},
"max_price_usd": {
"type": "number",
"minimum": 0,
"description": "Maximum asking price in whole US dollars."
},
"min_year": {
"type": "integer",
"minimum": 1850,
"maximum": 2100,
"description": "Earliest build year."
},
"max_year": {
"type": "integer",
"minimum": 1850,
"maximum": 2100,
"description": "Latest build year."
},
"status": {
"type": "string",
"enum": [
"for_sale",
"for_charter",
"reported_sold",
"not_for_sale",
"any"
],
"default": "for_sale",
"description": "Default for_sale. for_charter includes yachts offered for both."
},
"near": {
"type": "string",
"maxLength": 80,
"description": "A harbour, harbour town or anchorage by name, e.g. \"Port Hercule\", \"Antibes\", \"Fort Lauderdale\", \"Off Monaco\"."
},
"radius_km": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 100,
"description": "With near: the radius. Default 2 km for a harbour, 3 km for an anchorage."
},
"seen_within_hours": {
"type": "integer",
"minimum": 1,
"maximum": 2880,
"description": "With near: only AIS positions this recent. Default: any position the site publishes (up to 120 days)."
},
"listed_in": {
"type": "string",
"maxLength": 60,
"description": "Town or country named in the broker's listing, e.g. \"Fort Lauderdale\", \"Italy\". This is where the listing says she is, not an AIS position."
},
"sort": {
"type": "string",
"enum": [
"longest",
"price_high",
"price_low",
"newest"
],
"default": "longest"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 25,
"default": 10
}
},
"additionalProperties": false
}輸出結構描述
{
"type": "object",
"properties": {
"summary": {
"type": "string"
},
"data_as_of": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "When YachtFinder last rebuilt the catalogue this answer was read from (ISO 8601)."
},
"read_at": {
"type": "string",
"description": "When this server read that catalogue (ISO 8601)."
},
"answered_at": {
"type": "string"
},
"source": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"url": {
"type": "string"
}
}
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"total_matches": {
"type": "integer"
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Her address on yachtfinder.co (the last part of url); yacht_facts accepts it."
},
"name": {
"type": "string"
},
"builder": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"year": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"length_m": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"status": {
"type": "string",
"enum": [
"for sale",
"for charter",
"reported sold",
"not for sale"
]
},
"asking_price_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "The broker's asking price in US dollars; null when none is published. Never a sale price."
},
"last_asking_price_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "For a reported-sold or not-for-sale yacht, her last asking price. Not a sale price."
},
"price_on_application": {
"type": "boolean"
},
"our_estimate_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "YachtFinder's model estimate, only where her page shows one. Not an appraisal, not a sale price."
},
"listed_location": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"position": {
"anyOf": [
{
"type": "object",
"properties": {
"latitude": {
"type": "number"
},
"longitude": {
"type": "number"
},
"seen_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"distance_km": {
"type": "number"
},
"in_port": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
}
},
{
"type": "null"
}
]
},
"url": {
"type": "string"
}
},
"required": [
"id",
"name",
"status",
"url"
]
}
}
},
"required": [
"summary",
"data_as_of",
"read_at",
"answered_at",
"source",
"notes",
"total_matches",
"results"
]
}🟢yachts_near(place, latitude, longitude, radius_km, seen_within_hours, ...)
List the yachts whose latest AIS position, as yachtfinder.co publishes it, lies within a radius of a named harbour or anchorage (e.g. "Port Hercule", "Antibes", "Off Monaco") or of a latitude and longitude. By default only positions from the last 24 hours. Each yacht comes with the time of her fix, her distance from the place, whether the harbour's page counts her in port, and a link to her page. A yacht whose position the site does not publish is never listed.
輸入結構描述
{
"type": "object",
"properties": {
"place": {
"type": "string",
"maxLength": 80,
"description": "A harbour, harbour town or anchorage by name. Give this, or latitude and longitude."
},
"latitude": {
"type": "number",
"minimum": -90,
"maximum": 90
},
"longitude": {
"type": "number",
"minimum": -180,
"maximum": 180
},
"radius_km": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 100,
"description": "Default 2 km for a harbour, 3 km for an anchorage, 10 km for a coordinate."
},
"seen_within_hours": {
"type": "integer",
"minimum": 1,
"maximum": 2880,
"default": 24,
"description": "Only positions this recent. Default 24."
},
"status": {
"type": "string",
"enum": [
"for_sale",
"for_charter",
"reported_sold",
"not_for_sale",
"any"
],
"default": "any"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 20
}
},
"additionalProperties": false
}輸出結構描述
{
"type": "object",
"properties": {
"summary": {
"type": "string"
},
"data_as_of": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "When YachtFinder last rebuilt the catalogue this answer was read from (ISO 8601)."
},
"read_at": {
"type": "string",
"description": "When this server read that catalogue (ISO 8601)."
},
"answered_at": {
"type": "string"
},
"source": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"url": {
"type": "string"
}
}
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"place": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"kind": {
"type": "string"
},
"radius_km": {
"type": "number"
},
"seen_within_hours": {
"type": "integer"
}
}
},
"total_matches": {
"type": "integer"
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Her address on yachtfinder.co (the last part of url); yacht_facts accepts it."
},
"name": {
"type": "string"
},
"builder": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"year": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"length_m": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"status": {
"type": "string",
"enum": [
"for sale",
"for charter",
"reported sold",
"not for sale"
]
},
"asking_price_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "The broker's asking price in US dollars; null when none is published. Never a sale price."
},
"last_asking_price_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "For a reported-sold or not-for-sale yacht, her last asking price. Not a sale price."
},
"price_on_application": {
"type": "boolean"
},
"our_estimate_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "YachtFinder's model estimate, only where her page shows one. Not an appraisal, not a sale price."
},
"listed_location": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"position": {
"anyOf": [
{
"type": "object",
"properties": {
"latitude": {
"type": "number"
},
"longitude": {
"type": "number"
},
"seen_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"distance_km": {
"type": "number"
},
"in_port": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
}
},
{
"type": "null"
}
]
},
"url": {
"type": "string"
}
},
"required": [
"id",
"name",
"status",
"url"
]
}
}
},
"required": [
"summary",
"data_as_of",
"read_at",
"answered_at",
"source",
"notes",
"place",
"total_matches",
"results"
]
}🟢yacht_facts(yacht, builder, length_m)
One yacht's facts from YachtFinder: builder, year, length, status, the broker's asking price (never a sale price), YachtFinder's estimate where her page shows one, her published AIS position with its time, where her listing says she is, and her page on yachtfinder.co, with the source and date of each fact. Takes her name (add builder or length_m when several yachts share it) or her yachtfinder.co/y/ link.
輸入結構描述
{
"type": "object",
"properties": {
"yacht": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Her name, e.g. \"Lady Lara\", or her yachtfinder.co/y/ link or the id from another answer."
},
"builder": {
"type": "string",
"maxLength": 60,
"description": "Her builder, to choose between yachts of the same name."
},
"length_m": {
"type": "number",
"minimum": 0,
"maximum": 200,
"description": "Her length in metres, to choose between yachts of the same name."
}
},
"required": [
"yacht"
],
"additionalProperties": false
}輸出結構描述
{
"type": "object",
"properties": {
"summary": {
"type": "string"
},
"data_as_of": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "When YachtFinder last rebuilt the catalogue this answer was read from (ISO 8601)."
},
"read_at": {
"type": "string",
"description": "When this server read that catalogue (ISO 8601)."
},
"answered_at": {
"type": "string"
},
"source": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"url": {
"type": "string"
}
}
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"found": {
"type": "string",
"enum": [
"one",
"several"
]
},
"yacht": {
"type": "object"
},
"matches": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Her address on yachtfinder.co (the last part of url); yacht_facts accepts it."
},
"name": {
"type": "string"
},
"builder": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"year": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"length_m": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"status": {
"type": "string",
"enum": [
"for sale",
"for charter",
"reported sold",
"not for sale"
]
},
"asking_price_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "The broker's asking price in US dollars; null when none is published. Never a sale price."
},
"last_asking_price_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "For a reported-sold or not-for-sale yacht, her last asking price. Not a sale price."
},
"price_on_application": {
"type": "boolean"
},
"our_estimate_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "YachtFinder's model estimate, only where her page shows one. Not an appraisal, not a sale price."
},
"listed_location": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"position": {
"anyOf": [
{
"type": "object",
"properties": {
"latitude": {
"type": "number"
},
"longitude": {
"type": "number"
},
"seen_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"distance_km": {
"type": "number"
},
"in_port": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
}
},
{
"type": "null"
}
]
},
"url": {
"type": "string"
}
},
"required": [
"id",
"name",
"status",
"url"
]
}
}
},
"required": [
"summary",
"data_as_of",
"read_at",
"answered_at",
"source",
"notes",
"found"
]
}社群
證據