mcp

Search Canadian hunting and fishing outfitters, check availability, and send price requests.

我该使用它吗

质量与安全性

A
描述质量
94%
模式完整度
86%
命名质量
100%
投毒风险
100%
权限匹配度
90%
协议合规性
100%

发现(2)

  • LOWTool 'check_availability' description lacks action verb在 check_availability 中
  • LOWTool 'fetch' suggests web access but openWorldHint=false在 fetch 中

基于对工具定义和协议合规性的自动分析。

上下文开销

~2,996token 数(工具定义)
~3.0 KB典型响应大小
对注意力有显著影响(占 128k 上下文窗口的 2.34%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "mcp": {
      "url": "https://myoutfitters.ca/mcp"
    }
  }
}

远程端点

https://myoutfitters.ca/mcpstreamable-http

它能做什么

工具清单

工具(8)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢list_reference_data(kind, province, locale, api_key)

List the values MyOutfitters understands for each search filter: provinces, regions, species, activity types, meal plan types, lodging types, access types, amenities, ZECs, major cities used as driving origins, and seasons. Contains no outfitter data.

输入模式

{
  "type": "object",
  "properties": {
    "kind": {
      "type": "string",
      "enum": [
        "provinces",
        "regions",
        "species",
        "activity_types",
        "plan_types",
        "lodging_types",
        "access_types",
        "amenities",
        "zecs",
        "cities",
        "seasons"
      ]
    },
    "province": {
      "type": "string",
      "maxLength": 60,
      "description": "Filter regions, ZECs or cities by province."
    },
    "locale": {
      "type": "string",
      "enum": [
        "fr",
        "en"
      ]
    },
    "api_key": {
      "type": "string",
      "maxLength": 200
    }
  },
  "required": [
    "kind"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢search(query, limit, locale, api_key)

Free-text search over MyOutfitters' Canadian hunting and fishing outfitters (pourvoiries). Returns up to 10 documents with id, title and URL; pass an id to `fetch` for the full profile. For precise multi-criteria filtering (species, region, budget, lodging, dates) prefer search_outfitters. No phone, e-mail or website is ever returned.

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "maxLength": 200,
      "description": "Natural-language query, e.g. 'walleye fishing in Mauricie' or 'pourvoirie chasse orignal Abitibi'."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10
    },
    "locale": {
      "type": "string",
      "enum": [
        "fr",
        "en"
      ]
    },
    "api_key": {
      "type": "string",
      "maxLength": 200
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢fetch(id, locale, api_key)

Retrieve one MyOutfitters outfitter document by the id returned by `search` (e.g. 'PV-0009') or by its MyOutfitters URL. Returns id, title, url, readable text and metadata. No phone, e-mail or website is ever returned.

输入模式

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "maxLength": 200,
      "description": "Document id from `search` (e.g. 'PV-0009') or the outfitter's MyOutfitters URL."
    },
    "locale": {
      "type": "string",
      "enum": [
        "fr",
        "en"
      ]
    },
    "api_key": {
      "type": "string",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢search_outfitters(province, region, regions, zecs, near_city, ...)

Find up to 10 Canadian hunting and fishing outfitters (pourvoiries) matching a traveller's criteria, using the same advanced filters as the website: activities, several species at once, province, region, ZEC, access type, driving distance from a major city, Collection Prestige, per-person nightly budget, lodging type, single-lodging capacity, bedrooms, two-person and one-person bed counts, meal plan, season and equipment/amenities. Lodging criteria (capacity, bedrooms, beds, amenities) must all be met by the SAME cabin. At least one criterion is required — the full directory is never returned. Results carry no phone number, e-mail or website: enquiries go through create_price_request. Call list_reference_data to learn the valid values for any filter.

输入模式

{
  "type": "object",
  "properties": {
    "province": {
      "type": "string",
      "maxLength": 60,
      "description": "Province code or name, e.g. 'QC', 'Ontario'."
    },
    "region": {
      "type": "string",
      "maxLength": 60,
      "description": "A single tourist region, e.g. 'Mauricie'."
    },
    "regions": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 60
      },
      "maxItems": 8,
      "description": "Several tourist regions; an outfitter matches any of them."
    },
    "zecs": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 60
      },
      "maxItems": 8,
      "description": "ZEC names (Quebec controlled-exploitation zones)."
    },
    "near_city": {
      "type": "string",
      "maxLength": 60,
      "description": "Major city used as the driving origin, e.g. 'Montréal', 'Toronto'."
    },
    "max_drive_hours": {
      "type": "number",
      "minimum": 0.5,
      "maximum": 24,
      "description": "Maximum driving hours from near_city (requires near_city)."
    },
    "activity": {
      "type": "string",
      "enum": [
        "fishing",
        "hunting"
      ],
      "description": "Shorthand for the two main activities."
    },
    "activities": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "chasse",
          "peche",
          "big_game_hunting",
          "ice_fishing",
          "bird_hunting",
          "nature_lodging",
          "family_experiences",
          "hunting_fishing",
          "ecotourism",
          "rental"
        ]
      },
      "maxItems": 6,
      "description": "Exact activity-type codes an outfitter must offer: chasse (hunting), peche (fishing), big_game_hunting, ice_fishing (pêche sur glace), bird_hunting (chasse aux oiseaux), nature_lodging, family_experiences, hunting_fishing, ecotourism, rental (equipment rental)."
    },
    "species": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 60
        },
        {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 60
          },
          "maxItems": 8
        }
      ],
      "description": "One species or several, e.g. ['doré','brochet'] / ['walleye','pike']."
    },
    "species_match": {
      "type": "string",
      "enum": [
        "all",
        "any"
      ],
      "description": "'all' (default) requires every species; 'any' matches at least one."
    },
    "hunt_or_fish_keyword": {
      "type": "string",
      "maxLength": 60,
      "description": "Deprecated alias of keyword."
    },
    "keyword": {
      "type": "string",
      "maxLength": 60,
      "description": "Free text matched against the outfitter name, town, street address and the lakes, reservoirs and rivers it operates on; water-body and address matches rank first."
    },
    "party_size": {
      "type": "integer",
      "minimum": 1,
      "maximum": 60,
      "description": "Number of guests to accommodate."
    },
    "min_bedrooms": {
      "type": "integer",
      "minimum": 1,
      "maximum": 20,
      "description": "Minimum bedrooms in a single lodging ('minimum 4 chambres' / '4 rooms')."
    },
    "min_double_beds": {
      "type": "integer",
      "minimum": 1,
      "maximum": 40,
      "description": "Minimum number of two-person beds in that SAME lodging (double, queen, king; a double bunk bed counts as 2)."
    },
    "min_single_beds": {
      "type": "integer",
      "minimum": 1,
      "maximum": 40,
      "description": "Minimum number of one-person beds in that SAME lodging (single beds; a bunk bed counts as 2)."
    },
    "min_lodging_capacity": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "description": "Minimum number of people a SINGLE cabin/lodging must sleep (e.g. 'a cabin for 10 people' → 10). Different from party_size, which is how many travellers are coming."
    },
    "max_price_per_person": {
      "type": "number",
      "minimum": 1,
      "maximum": 100000,
      "description": "Cap on the starting package price per person."
    },
    "budget_min_per_person_night": {
      "type": "number",
      "minimum": 1,
      "maximum": 100000
    },
    "budget_max_per_person_night": {
      "type": "number",
      "minimum": 1,
      "maximum": 100000,
      "description": "Cap on the per-person, per-night rate (package price divided by nights)."
    },
    "access": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 60
      },
      "maxItems": 6,
      "description": "Access types by code or name (road, boat, floatplane…)."
    },
    "lodging_types": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 60
      },
      "maxItems": 8,
      "description": "Lodging types by code or name (chalet, camp, pavillon…)."
    },
    "plan_types": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 60
      },
      "maxItems": 6,
      "description": "Meal plan types by code or name (américain / american, européen, MAP…)."
    },
    "amenities": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 60
      },
      "maxItems": 8,
      "description": "Amenity names an outfitter must offer in one of its lodgings (all of them must match)."
    },
    "seasons": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "spring",
          "summer",
          "fall",
          "winter"
        ]
      },
      "maxItems": 4,
      "description": "Seasons the outfitter must be open in."
    },
    "prestige_only": {
      "type": "boolean",
      "description": "Only Collection Prestige outfitters."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Max results (hard cap 10)."
    },
    "locale": {
      "type": "string",
      "enum": [
        "fr",
        "en"
      ]
    },
    "api_key": {
      "type": "string",
      "maxLength": 200,
      "description": "Optional MyOutfitters partner key."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_outfitter(outfitter_id, locale, api_key)

Public profile of one outfitter: territory, species, season, and up to 8 summarised packages. Rates appear only when the outfitter has confirmed its listing. No phone, e-mail or website is ever returned.

输入模式

{
  "type": "object",
  "properties": {
    "outfitter_id": {
      "type": "string",
      "maxLength": 160,
      "description": "Outfitter id (e.g. 'PV-0009') or the id-bearing URL segment."
    },
    "locale": {
      "type": "string",
      "enum": [
        "fr",
        "en"
      ]
    },
    "api_key": {
      "type": "string",
      "maxLength": 200
    }
  },
  "required": [
    "outfitter_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_booking_options(outfitter_id, arrival, departure, party_size, locale, ...)

For one outfitter, return how a stay can be booked: booking mode (online payment on MyOutfitters, or a price request through MyOutfitters' anonymised relay), the packages that fit the party and the requested dates, indicative per-person rates when the listing is confirmed, the season window and the exact next step. Optionally pass dates and party size to filter the packages and get a season/availability verdict.

输入模式

{
  "type": "object",
  "properties": {
    "outfitter_id": {
      "type": "string",
      "maxLength": 200,
      "description": "Outfitter id (e.g. 'PV-0009') or the id-bearing MyOutfitters URL segment."
    },
    "arrival": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Requested arrival date (YYYY-MM-DD)."
    },
    "departure": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Requested departure date (YYYY-MM-DD)."
    },
    "party_size": {
      "type": "integer",
      "minimum": 1,
      "maximum": 60
    },
    "locale": {
      "type": "string",
      "enum": [
        "fr",
        "en"
      ]
    },
    "api_key": {
      "type": "string",
      "maxLength": 200
    }
  },
  "required": [
    "outfitter_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢check_availability(outfitter_ids, arrival, departure, party_size, locale, ...)

For up to 10 named outfitters, tell whether the requested dates fall in season and which packages fit the party. Returns a verdict per outfitter, never raw inventory.

输入模式

{
  "type": "object",
  "properties": {
    "outfitter_ids": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 160
      },
      "minItems": 1,
      "maxItems": 10,
      "description": "Outfitter ids obtained from search_outfitters."
    },
    "arrival": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "departure": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "party_size": {
      "type": "integer",
      "minimum": 1,
      "maximum": 60
    },
    "locale": {
      "type": "string",
      "enum": [
        "fr",
        "en"
      ]
    },
    "api_key": {
      "type": "string",
      "maxLength": 200
    }
  },
  "required": [
    "outfitter_ids",
    "arrival",
    "departure"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡create_price_request(outfitter_id, full_name, email, phone, message, ...)

Send a traveller's enquiry to one outfitter through MyOutfitters' anonymised relay. Requires the traveller's own name and e-mail, given with their consent. The outfitter replies by e-mail; neither side sees the other's raw contact details.

输入模式

{
  "type": "object",
  "properties": {
    "outfitter_id": {
      "type": "string",
      "maxLength": 160
    },
    "full_name": {
      "type": "string",
      "minLength": 2,
      "maxLength": 120
    },
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 255
    },
    "phone": {
      "type": "string",
      "maxLength": 40
    },
    "message": {
      "type": "string",
      "minLength": 5,
      "maxLength": 2000
    },
    "arrival": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "departure": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "party_size": {
      "type": "integer",
      "minimum": 1,
      "maximum": 60
    },
    "package_id": {
      "type": "string",
      "format": "uuid"
    },
    "locale": {
      "type": "string",
      "enum": [
        "fr",
        "en"
      ]
    },
    "api_key": {
      "type": "string",
      "maxLength": 200
    }
  },
  "required": [
    "outfitter_id",
    "full_name",
    "email",
    "message"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

推荐提示词

find_specific
Find [specific item] using mcp
预期工具: search
retrieve_data
Get details about [item] from mcp
预期工具: fetch
list_items
List all [items] available in mcp
预期工具: list_reference_data
search_research
Search for information about [topic] using mcp
预期工具: search
fetch_info
Fetch [information type] using mcp
预期工具: fetch

社区

评价此服务器

证据

最近观测

已验证未记录版本8 个工具
已验证未记录版本8 个工具