ski-france.com Agent Search
REMOTE · EN.SKI-FRANCE.COM · SCANNED AUG 3
Ski apartment search with one- or two-week prices, availability, destinations and ski passes.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →
Endpoint Security80
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability83
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 1607 tokens (~123/item across 13 items; 10 tools + 3 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
- Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Capabilities60
- Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28. See how to fix → Fail
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
remote · en.ski-france.com
claude mcp add --transport http com-ski-france-agent-search https://en.ski-france.com/api/agent/v1/mcp/
[mcp_servers.com-ski-france-agent-search] url = "https://en.ski-france.com/api/agent/v1/mcp/"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"com-ski-france-agent-search": {
"type": "remote",
"url": "https://en.ski-france.com/api/agent/v1/mcp/",
"enabled": true
}
}
} openclaw mcp add com-ski-france-agent-search --url https://en.ski-france.com/api/agent/v1/mcp/ --transport streamable-http
mcp_servers:
com-ski-france-agent-search:
url: "https://en.ski-france.com/api/agent/v1/mcp/" {
"mcpServers": {
"com-ski-france-agent-search": {
"type": "http",
"url": "https://en.ski-france.com/api/agent/v1/mcp/"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.
- 1 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.
- 31 Jul 26 +1
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 29 Jul 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.
- 28 Jul 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.
- 27 Jul 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 26 Jul 26 71
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Probed https://en.ski-france.com/api/agent/v1/mcp/
TLS valid
Negotiated TLS 1.3 with TLS_AES_256_GCM_SHA384 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=en.ski-france.com | CN=Encryption Everywhere DV TLS CA - G2,OU=www.digicert.com,O=DigiCert Inc,C=US | 15 Nov 2025 | 14 Nov 2026 | RSA 2048 | SHA256-RSA | 3edb097b17711a2db16eef810457c41 |
| SANs: en.ski-france.com | ||||||
| CN=Encryption Everywhere DV TLS CA - G2,OU=www.digicert.com,O=DigiCert Inc,C=US (CA) | CN=DigiCert Global Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US | 27 Nov 2017 | 27 Nov 2027 | RSA 2048 | SHA256-RSA | de0ffb5ee62cb61109f608c9ced5ed3 |
DNSSEC insecure
Validation of en.ski-france.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| ski-france.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000; includeSubDomains |
| x-content-type-options | nosniff |
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://en.ski-france.com/api/agent/v1/mcp/ | Verified | 200 | |
| http (plaintext) | http://en.ski-france.com/api/agent/v1/mcp/ | HTTPS enforced | 301 | https://en.ski-france.com/api/agent/v1/mcp/ |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
get_accommodation_detail Get accommodation detail ~91
Return accommodation-level context, apartment list, images, detail information and weekly availability for one public accommodation. Use this after search results to inspect all apartments belonging to one accommodation and to explain location, descriptions and detail notes. For price and bookability comparison for a specific week, prefer search_apartments with weekId.
| Name | Type | Req | Description |
|---|---|---|---|
| accommodationId | integer | yes | Accommodation id from search results or list_accommodations. |
No output schema declared.
No examples provided.
get_search_options Get search options ~57
Return the current structured search vocabulary before building a search: arrival weeks, one- or two-week durations, amenities, advanced apartment filters, price sorting, entity types and supported language subdomains. Use this first when you need valid parameter values.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_ski_area_detail Get ski area detail ~73
Return public ski area information, facts, images, ski maps and related ski resorts. Use this for destination context and recommendations, not for apartment prices or availability; use search_apartments for live week-specific accommodation results.
| Name | Type | Req | Description |
|---|---|---|---|
| skiAreaId | integer | yes | Ski area id from list_ski_areas. |
No output schema declared.
No examples provided.
get_ski_pass_prices Get ski pass prices ~256
Return ski pass weeks, durations and price tables with listPrice, discount and discountedPrice. Restrict by skiAreaId, skiResortId or accommodationId for destination-specific ski pass discovery. A global request without destination scope must provide weekId to avoid an overly broad price matrix. Omit durationDays to discover available durations with prices.
| Name | Type | Req | Description |
|---|---|---|---|
| accommodationId | integer | — | Optional accommodation id from search_apartments, list_accommodations or get_accommodation_detail. Uses the accommodation ski resort. |
| durationDays | integer | — | Optional ski pass duration in days. Omit it to return all available durations with prices. Default website duration is 6 days. |
| limit | integer | — | Results per page. Maximum is 50. |
| page | integer | — | Result page, starting at 1. |
| skiAreaId | integer | — | Optional ski area id from list_ski_areas. |
| skiResortId | integer | — | Optional ski resort id from list_ski_resorts. |
| weekId | integer | — | Optional fixed weekly winter arrival date id. Required when no skiAreaId, skiResortId or accommodationId is provided. Omit it only for destination-scoped ski pass discovery. |
No output schema declared.
No examples provided.
get_ski_resort_detail Get ski resort detail ~73
Return public ski resort information, location, facts, images and ski maps. Use this for explaining and comparing destinations, not for apartment prices or availability; use search_apartments for live week-specific accommodation results.
| Name | Type | Req | Description |
|---|---|---|---|
| skiResortId | integer | yes | Ski resort id from list_ski_resorts. |
No output schema declared.
No examples provided.
list_accommodations List accommodations ~157
List public accommodations for catalogue discovery, optionally filtered by ski area, ski resort or district ids from the destination tools. This list intentionally has no prices, availability or bookability. Use search_apartments with weekId for price and availability comparison, and get_accommodation_detail after a result for accommodation context.
| Name | Type | Req | Description |
|---|---|---|---|
| districtId | integer | — | Optional district id from accommodation or search-scope data. |
| limit | integer | — | Results per page. Maximum is 200. |
| page | integer | — | Result page, starting at 1. |
| skiAreaId | integer | — | Optional ski area id from list_ski_areas. |
| skiResortId | integer | — | Optional ski resort id from list_ski_resorts. |
No output schema declared.
No examples provided.
list_ski_areas List ski areas ~59
List public ski areas in France for destination discovery and comparison. A ski area groups one or more ski resorts and can be used as a destination scope for apartment search. Parent regions only bundle ski areas and do not have a separate detail endpoint.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_ski_resorts List ski resorts ~68
List public ski resorts in France for destination discovery, optionally filtered by ski area id. A ski resort is the local destination or village/resort used for accommodation search scopes and resort detail pages.
| Name | Type | Req | Description |
|---|---|---|---|
| skiAreaId | integer | — | Optional ski area id from list_ski_areas. |
No output schema declared.
No examples provided.
resolve_search_keywords Resolve search keywords ~122
Resolve a user phrase into concrete search-scope candidates such as parent regions, ski areas, ski resorts, districts or accommodations. Use the returned entityType and entityId in search_apartments when you want to restrict a later apartment search to a precise destination or accommodation. Broad searches can skip this and use keywords directly. Parent-region scopes are only for restricting searches, not for destination detail lookup.
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | yes | Search phrase to resolve into possible destination or accommodation scopes, for example "Val Thorens", "3 Vallees" or an accommodation name. |
No output schema declared.
No examples provided.
search_apartments Search ski apartments ~504
Main apartment-level search for winter ski accommodation in French ski areas and ski resorts. Results are apartments, not whole accommodations. Put destination, ski area, ski resort or accommodation names into keywords. Use structured parameters for amenities, rooms, living space, slope distance, ski area size, parent areas, accommodation category, chalet type, pets and price sorting. Put the traveller count into partySize, not keywords. Use weekId and durationWeeks for one- or two-week price, availability, bookability and special-discount data.
| Name | Type | Req | Description |
|---|---|---|---|
| accommodationCategories | array | — | Premium and luxury accommodation categories from get_search_options. |
| accommodationType | string | — | Optional accommodation type. |
| amenities | array | — | Amenity values from get_search_options. |
| areas | array | — | Parent-area values from get_search_options. |
| durationWeeks | integer | — | Stay duration in weeks. Two weeks requires weekId. |
| entityId | integer | — | Optional precise search-scope entity id from resolve_search_keywords. Use together with entityType. |
| entityType | string | — | Optional precise search-scope entity type from resolve_search_keywords. Use together with entityId to restrict results to a resolved parent region, ski area, ski resort, district or accommodation. |
| keywords | string | — | Natural-language destination or accommodation keywords, for example a ski resort, ski area, accommodation name or free text. Use the structured filter parameters for amenities and property requiremen… |
| maxDistanceToSlopeMeters | integer | — | Maximum distance to piste, lift or gondola in metres. |
| minBathrooms | integer | — | Minimum number of bathrooms. Value 8 means 8 or more. |
| minBedrooms | integer | — | Minimum number of bedrooms. Value 8 means 8 or more. |
| minSquareMeters | integer | — | Minimum living space in square metres. |
| page | integer | — | Result page, starting at 1. |
| partySize | integer | — | Traveller count. Results are restricted to apartments whose capacity is at least this party size within the matching website occupancy bucket. |
| pets | string | — | Pet policy. |
| priceSort | string | — | Result sorting. Status remains the primary order, followed by price and party-size category. |
| skiAreaSizes | array | — | Ski-area size categories from get_search_options. |
| weekId | integer | — | Fixed weekly winter arrival date id from get_search_options. Required for week-specific price, availability, bookabilityStatus and special-discount comparison. |
No output schema declared.
No examples provided.