Skip to content

com.stayportland/mcp

by stayportland.com · remote · no sign-in to list tools · v2.1.0 · published by com.stayportland

Search Portland rentals, compare homes, save a shortlist, and get a live quote. No payments.

Deletes · 1Changes · 3

14 tools: 1 can delete or cancel things, 3 change things and 10 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http stayportland https://www.stayportland.com/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

14 tools

Deletes or cancels 1Claude Code: deny
  • complete_bookingResume the site's existing reservation finalizer only after the guest approved and authorized payment in hosted checkout.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Resume the site's existing reservation finalizer only after the guest approved and authorized payment in hosted checkout. This cannot create or authorize a payment. Completion is controlled by a server flag; check status to follow an in-progress checkout.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: true
Changes things 3Claude Code: ask
  • prepare_bookingCreate a fresh exact-date quote and secure hosted checkout link.No findings

    Why it is in this group

    • The description's first verb is "create": a word for a change.
    Description, as the server wrote it
    Create a fresh exact-date quote and secure hosted checkout link. Share the link with the guest for price review, details and payment approval. This tool never books, charges, or accepts card details. Its capability lets this agent check only this quote's booking status.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • shortlist_propertySave one property to the guest's list for this conversation, or drop it with remove: true.No findings

    Why it is in this group

    • The description's first verb is "save": a word for a change.
    Description, as the server wrote it
    Save one property to the guest's list for this conversation, or drop it with remove: true. The result carries a sessionToken — reuse that exact token on every later shortlist_property and get_shortlist call in this conversation. Never read the token out to the guest; refer to it only as "your saved list". Saving creates no account and never collects card details.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • suggest_alternate_datesFor one live listing, find the closest calendar-confirmed stays with the same length when preferred dates do not work.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    For one live listing, find the closest calendar-confirmed stays with the same length when preferred dates do not work. Results are not priced; call get_quote for the final total.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
Only reads 10Claude Code: allow
  • compare_propertiesRender a visual, source-grounded comparison for two to five listing ids or slugs selected from search_properties.No findings

    Why it is in this group

    • The name "compare_properties" says "compare": a word for reading.
    Description, as the server wrote it
    Render a visual, source-grounded comparison for two to five listing ids or slugs selected from search_properties. Preserves the requested order and returns public listing profiles.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_booking_statusRead the coarse status of the exact checkout prepared by this agent.No findings

    Why it is in this group

    • The name "get_booking_status" says "get": a word for reading.
    Description, as the server wrote it
    Read the coarse status of the exact checkout prepared by this agent. Requires its private booking capability. Returns no guest, card, PaymentIntent, or reservation identifiers.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_collection_overviewPublic portfolio overview: live home count, Portland neighborhoods, direct-booking advantages, policies, and the no-payment tool boundary.No findings

    Why it is in this group

    • The name "get_collection_overview" says "get": a word for reading.
    Description, as the server wrote it
    Public portfolio overview: live home count, Portland neighborhoods, direct-booking advantages, policies, and the no-payment tool boundary.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_listingFull profile for one listing by Guesty id or slug: specs, amenities, rules, prices.No findings

    Why it is in this group

    • The name "get_listing" says "get": a word for reading.
    Description, as the server wrote it
    Full profile for one listing by Guesty id or slug: specs, amenities, rules, prices.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_policiesCanonical Stay Portland policies: fees, cancellation, pets, check-in, taxes, parking, house rules.No findings

    Why it is in this group

    • The name "get_policies" says "get": a word for reading.
    Description, as the server wrote it
    Canonical Stay Portland policies: fees, cancellation, pets, check-in, taxes, parking, house rules.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_quoteLive all-in quote (nights + cleaning + taxes) and a checkout URL.No findings

    Why it is in this group

    • The name "get_quote" says "get": a word for reading.
    Description, as the server wrote it
    Live all-in quote (nights + cleaning + taxes) and a checkout URL. Hand the guest the URL; never collect card details.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • get_reviewsRecent guest reviews — for one listing (by Guesty id or slug) or across the whole collection.No findings

    Why it is in this group

    • The name "get_reviews" says "get": a word for reading.
    Description, as the server wrote it
    Recent guest reviews — for one listing (by Guesty id or slug) or across the whole collection. Text, rating, and month+year only.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_shortlistList every property saved in this conversation.No findings

    Why it is in this group

    • The name "get_shortlist" says "get": a word for reading.
    Description, as the server wrote it
    List every property saved in this conversation. Pass the sessionToken returned by shortlist_property; refer to it with the guest only as "your saved list".

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • search_priced_availabilitySearch Stay Portland's live availability for one required date range and return up to six exact base quotes per page.No findings

    Why it is in this group

    • The name "search_priced_availability" says "search": a word for reading.
    Description, as the server wrote it
    Search Stay Portland's live availability for one required date range and return up to six exact base quotes per page. Use this first when a traveler provides dates and asks for options, full prices, fees, taxes, a budget comparison, or checkout links. Each result includes the home, accommodation, cleaning, taxes, USD base total, excluded pet fees and extras, and temporary checkout URL. Price sorting applies within the returned page. Use nextOffset to continue through matching inventory; retry unpricedProperties individually with get_quote. Quote creation never reserves, books, charges, or collects payment details.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • search_propertiesSearch Portland rentals across up to five date windows with verified layout, amenity, traveler-fit, accommodation-only price, rating, and neighborhood evidence.No findings

    Why it is in this group

    • The name "search_properties" says "search": a word for reading.
    Description, as the server wrote it
    Search Portland rentals across up to five date windows with verified layout, amenity, traveler-fit, accommodation-only price, rating, and neighborhood evidence. Dated results are live-bookable only. Use search_priced_availability when a traveler provides one date range and needs confirmed base prices including cleaning and stay taxes. After choosing candidates, call compare_properties for the visual explorer. Stay Portland charges no platform or booking fees when you book direct, and every direct booking comes with our guaranteed lowest price.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 2.1.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http stayportland https://www.stayportland.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__stayportland__get_booking_status",
      "mcp__stayportland__search_properties",
      "mcp__stayportland__search_priced_availability",
      "mcp__stayportland__compare_properties",
      "mcp__stayportland__get_collection_overview",
      "mcp__stayportland__get_listing",
      "mcp__stayportland__get_quote",
      "mcp__stayportland__get_reviews",
      "mcp__stayportland__get_shortlist",
      "mcp__stayportland__get_policies"
    ],
    "ask": [
      "mcp__stayportland__prepare_booking",
      "mcp__stayportland__suggest_alternate_dates",
      "mcp__stayportland__shortlist_property"
    ],
    "deny": [
      "mcp__stayportland__complete_booking"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as stayportland. Review it before you use it.