guesty-mcp-server 0.5.0 → 0.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,29 @@
2
2
 
3
3
  All notable changes to the Guesty MCP Server will be documented in this file.
4
4
 
5
+ ## [0.6.0] - 2026-04-10
6
+
7
+ ### Added
8
+ - **License tier gating** — 3-tier monetization (Free/Pro/Business/Enterprise)
9
+ - 23 free tools (read-only operations)
10
+ - 15 gated tools (write operations, messaging, webhooks)
11
+ - License key validation via `GUESTY_MCP_LICENSE_KEY` env var
12
+ - **MCP annotations** on all 38 tools (`readOnlyHint`, `destructiveHint`)
13
+ - **Enhanced rate limiting** with exponential backoff and retry-after header support
14
+ - Streamable HTTP remote endpoint via Vercel deployment
15
+ - License key environment variable documented in server.json
16
+
17
+ ### Changed
18
+ - Upgraded from v0.5.0 monetization foundation to production-ready gating
19
+ - Improved server.json with full environment variable documentation
20
+ - Version bumped across all entry points (server.js, http-server.js, cli.js)
21
+
22
+ ## [0.5.0] - 2026-04-07
23
+
24
+ ### Added
25
+ - License tier system (`src/license.js`) for Pro/Business/Enterprise gating
26
+ - MCP annotations on all 38 tools for better client-side filtering
27
+
5
28
  ## [0.4.3] - 2026-03-27
6
29
 
7
30
  ### Changed
@@ -0,0 +1,44 @@
1
+ # Hacker News Show HN Post — Launch Tomorrow 8:30 AM EST
2
+
3
+ ## Title (80 chars max)
4
+ Show HN: First MCP server for Guesty property management – 39 tools, open source
5
+
6
+ ## URL
7
+ https://github.com/DLJRealty/guesty-mcp-server
8
+
9
+ ## First Comment (post within 5 minutes of submission)
10
+
11
+ Hey HN – we built guesty-mcp-server because we manage 8 short-term rental properties on Guesty and wanted our AI agents to actually *do* things, not just chat.
12
+
13
+ **What it does:** Connects any MCP-compatible AI client (Claude, ChatGPT, Copilot, Cline) to the Guesty property management API. 39 tools covering reservations, guest messaging, pricing, financials, calendars, reviews, tasks, and webhooks.
14
+
15
+ **Install:** `npx guesty-mcp-server`
16
+
17
+ **Tech:** Node.js, MCP SDK, Express for the hosted transport layer. MIT licensed. TypeScript would be nice – PRs welcome.
18
+
19
+ **Why MCP:** Guesty has 100K+ listings worldwide but no MCP integration existed. Every major PMS will need one – we built the first.
20
+
21
+ **What we learned:**
22
+ - Guesty's /reservations API only returns future data. Had to use the calendar endpoint as a workaround for historical queries.
23
+ - The MCP Dev Summit is happening this week in NYC (April 2-3). Timing was lucky.
24
+ - 497 npm downloads in the first week, mostly from the Smithery registry listing.
25
+
26
+ **Limitations:**
27
+ - Tool execution requires your own Guesty API credentials (not a hosted SaaS... yet)
28
+ - Some Guesty API endpoints have aggressive rate limiting (5 token refreshes/day)
29
+ - The SSE transport doesn't work on Vercel serverless (expected)
30
+
31
+ Hosted version: https://guesty-mcp-server.vercel.app
32
+ npm: https://www.npmjs.com/package/guesty-mcp-server
33
+
34
+ Happy to answer questions about building MCP servers for vertical SaaS APIs.
35
+
36
+ ## Timing
37
+ - Post at 8:30 AM EST / 5:30 AM PT on Wednesday April 3
38
+ - HN peak traffic: Tuesday-Thursday, 8-10 AM PT
39
+ - MCP Dev Summit Day 2 happening same day = topical relevance
40
+ - Engage with EVERY comment within first 2 hours
41
+
42
+ ## Backup titles (if first doesn't get traction)
43
+ - "Show HN: We built an MCP server that manages our Airbnb properties"
44
+ - "Show HN: Open-source MCP server for Guesty – manage rentals with AI agents"
@@ -0,0 +1,48 @@
1
+ **To:** partnerships@guesty.com
2
+ **Subject:** First MCP Server for Guesty — Marketplace Partnership Request
3
+
4
+ ---
5
+
6
+ Hi Guesty Partnerships Team,
7
+
8
+ We built the first Model Context Protocol (MCP) server for Guesty and would like to discuss listing it in the Guesty Marketplace.
9
+
10
+ **What we built:**
11
+ guesty-mcp-server — an open-source MCP server that enables AI agents (Claude, ChatGPT, Copilot, Cline, and others) to interact with Guesty's Open API through the industry-standard MCP protocol. One install command: `npx guesty-mcp-server`.
12
+
13
+ **39 tools covering the full Guesty workflow:**
14
+ - Reservations: list, get, create, update
15
+ - Guests: get, list, search
16
+ - Messaging: list conversations, get posts, send messages
17
+ - Listings: list, get, update, calendar, availability, photos
18
+ - Pricing: get pricing, update base price, calendar pricing
19
+ - Financials: summary, owner payouts, payout details, revenue report
20
+ - Operations: tasks, cleaning tasks, check-in/check-out, occupancy report
21
+ - Reviews: list, get, reply
22
+ - Webhooks: create, list, delete
23
+ - Analytics: channel distribution
24
+
25
+ **Why this matters for Guesty:**
26
+ - MCP is the fastest-growing AI integration standard — 97M monthly SDK downloads, adopted by Anthropic, OpenAI, Google, Microsoft, and AWS
27
+ - The MCP Dev Summit (April 2-3, NYC) is happening this week under the Linux Foundation
28
+ - Every major property management platform will have MCP integration within 12 months — Guesty can lead by being first
29
+ - This server lets any Guesty customer connect AI agents to their account in under 60 seconds
30
+
31
+ **Traction:**
32
+ - Live and hosted: https://guesty-mcp-server.vercel.app
33
+ - Published on npm: https://www.npmjs.com/package/guesty-mcp-server
34
+ - Listed on Smithery (accepted), Cline MCP Marketplace, official MCP servers directory, and 4 additional MCP directories
35
+ - Battle-tested in production at DLJ Properties (7 units across Colorado and Miami)
36
+ - Open source: https://github.com/DLJRealty/guesty-mcp-server
37
+
38
+ **What we're asking:**
39
+ We'd like to be listed as a Community Partner or Integrated Partner in the Guesty Marketplace. We're happy to work with your team on any requirements — documentation, security review, or deeper API integration.
40
+
41
+ We're also open to co-marketing the launch. Our case study shows measurable results: 500+ automated guest replies, reduced response times, and streamlined operations across 7 properties using Guesty + MCP.
42
+
43
+ Happy to jump on a call anytime. Looking forward to partnering.
44
+
45
+ Best,
46
+ Danny Perez
47
+ DLJ Properties
48
+ https://guestycopilot.com
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "guesty-mcp-server",
3
- "version": "0.5.0",
3
+ "version": "0.6.1",
4
4
  "description": "The first MCP server for Guesty property management. 38 tools for reservations, guests, messaging, pricing, financials, calendars, reviews, tasks, and webhooks.",
5
5
  "main": "src/server.js",
6
6
  "bin": {
@@ -14,11 +14,22 @@
14
14
  },
15
15
  "keywords": [
16
16
  "mcp",
17
+ "mcp-server",
18
+ "model-context-protocol",
17
19
  "guesty",
18
20
  "property-management",
19
21
  "short-term-rental",
20
22
  "airbnb",
21
- "ai-agent"
23
+ "vrbo",
24
+ "vacation-rental",
25
+ "ai-agent",
26
+ "claude",
27
+ "claude-code",
28
+ "openclaw",
29
+ "pms",
30
+ "hospitality",
31
+ "real-estate",
32
+ "automation"
22
33
  ],
23
34
  "author": "DLJ Properties",
24
35
  "license": "MIT",
package/server.json CHANGED
@@ -1,14 +1,41 @@
1
1
  {
2
- "\$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
2
+ "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
3
3
  "name": "io.github.DLJRealty/guesty",
4
4
  "title": "Guesty MCP Server",
5
- "description": "The first MCP server for Guesty property management. 38 tools for reservations, guests, messaging, pricing, financials, calendars, reviews, tasks, and webhooks.",
6
- "version": "0.5.0",
5
+ "description": "MCP server for Guesty property management 38 tools for STR operations.",
6
+ "version": "0.6.0",
7
+ "repository": {
8
+ "url": "https://github.com/DLJRealty/guesty-mcp-server",
9
+ "source": "github"
10
+ },
7
11
  "packages": [{
8
12
  "registryType": "npm",
9
13
  "identifier": "guesty-mcp-server",
10
- "version": "0.5.0",
11
- "transport": { "type": "stdio" }
14
+ "version": "0.6.0",
15
+ "transport": { "type": "stdio" },
16
+ "environmentVariables": [
17
+ {
18
+ "description": "Guesty OAuth2 Client ID",
19
+ "isRequired": true,
20
+ "format": "string",
21
+ "isSecret": true,
22
+ "name": "GUESTY_CLIENT_ID"
23
+ },
24
+ {
25
+ "description": "Guesty OAuth2 Client Secret",
26
+ "isRequired": true,
27
+ "format": "string",
28
+ "isSecret": true,
29
+ "name": "GUESTY_CLIENT_SECRET"
30
+ },
31
+ {
32
+ "description": "License key for Pro/Business/Enterprise features (optional for free tier)",
33
+ "isRequired": false,
34
+ "format": "string",
35
+ "isSecret": true,
36
+ "name": "GUESTY_MCP_LICENSE_KEY"
37
+ }
38
+ ]
12
39
  }],
13
40
  "remotes": [{
14
41
  "transportType": "streamable-http",
@@ -23,7 +23,7 @@ app.use((req, res, next) => {
23
23
  // Server info
24
24
  const SERVER_INFO = {
25
25
  name: "guesty-mcp-server",
26
- version: "0.4.3",
26
+ version: "0.6.0",
27
27
  description: "The first MCP server for Guesty property management. 38 tools for reservations, guests, messaging, pricing, financials, calendars, reviews, tasks, and webhooks.",
28
28
  capabilities: {
29
29
  tools: { listChanged: false },
package/src/server.js CHANGED
@@ -125,7 +125,7 @@ async function guestyDelete(path, retries = 2) {
125
125
  // Create MCP Server
126
126
  const server = new McpServer({
127
127
  name: "guesty-mcp-server",
128
- version: "0.5.0",
128
+ version: "0.6.0",
129
129
  });
130
130
  // License tier check
131
131
  const _tier = getTier();
@@ -0,0 +1,27 @@
1
+ **To:** pmsupport@tripadvisor.com
2
+ **From:** DLJrealty@yahoo.com
3
+ **Subject:** API Access Request — Vacation Rental Property Manager (7 Properties)
4
+
5
+ ---
6
+
7
+ Hi TripAdvisor Rentals Team,
8
+
9
+ I manage 7 short-term rental properties across Colorado and Miami through DLJ Properties. I'd like to request API access to programmatically manage our TripAdvisor Rentals listings.
10
+
11
+ Our portfolio:
12
+ - 4 boutique tiny homes in Woodland Park, Colorado (Pikes Peak area)
13
+ - 3 apartments in Miami, Florida
14
+ - 628+ five-star reviews across platforms
15
+ - Airbnb Superhost, every quarter
16
+
17
+ We use Guesty as our PMS and would like to integrate with TripAdvisor's Content Connect API to manage listings, calendars, rates, and photos.
18
+
19
+ Our website: https://tinyhomeboutiques.com
20
+ Our properties: https://tinyhomeboutiques.com/unit-y-boutique-tinyhome.html
21
+
22
+ Could you provide API access and documentation? Happy to discuss our setup and integration needs.
23
+
24
+ Best,
25
+ Danny Perez
26
+ DLJ Properties
27
+ DLJrealty@yahoo.com
@@ -1,33 +0,0 @@
1
- # Smithery Listing — Optimized Description (v2 — Operations Focus)
2
-
3
- ## Display Name
4
- Guesty MCP Server
5
-
6
- ## Short Description (for search results)
7
- The first MCP server for Guesty — automate property operations, reports, calendar sync, pricing, and occupancy monitoring for short-term rentals and vacation rental portfolios.
8
-
9
- ## Full Description (for server detail page)
10
- Automate short-term rental operations with Guesty — the leading property management system (PMS). 39 production-ready tools for property managers, Airbnb hosts, VRBO operators, and hospitality teams managing vacation rentals, boutique hotels, and serviced apartments.
11
-
12
- Reports & Revenue: Generate financial reports, owner statements, expense summaries, and revenue breakdowns across your entire portfolio. Track reservation-level financials and host payouts in real time.
13
-
14
- Calendar & Availability: Sync calendars across all channels, manage date blocks, and monitor occupancy rates. Never miss a booking gap or double-booking risk.
15
-
16
- Pricing Management: View and update nightly rates, cleaning fees, seasonal pricing, and weekly/monthly discounts. Optimize revenue across every listing.
17
-
18
- Reservations & Guest Data: Search and filter reservations by date, status, channel, or listing. Look up guest details, contact info, and booking history.
19
-
20
- Property Operations: Create and track maintenance tasks, view listing details, manage property photos, monitor automation rules, and check channel distribution status.
21
-
22
- Reviews & Reputation: Monitor guest reviews across all platforms — track your rating trends and response rates.
23
-
24
- Webhooks & Automation: Configure real-time event webhooks for check-ins, check-outs, new bookings, cancellations, and message events.
25
-
26
- Free tier includes 23 operations and data tools. Pro tier unlocks guest messaging, review responses, and write operations. Production-tested across 7 properties. Supports stdio and HTTP/SSE transports. Open source, MIT licensed.
27
-
28
- ## Keywords Hit
29
- property management, PMS, vacation rental, short-term rental, Airbnb, VRBO, Booking.com,
30
- hospitality, operations, reports, revenue, calendar sync, pricing, occupancy monitoring,
31
- task management, property operations, channel manager, reservations, financial reports,
32
- owner statements, expenses, webhooks, automation, property manager, host, real estate,
33
- boutique hotel, serviced apartment, cleaning fee, reviews, reputation management
@@ -1,37 +0,0 @@
1
- # Smithery Verification Request — Guesty MCP Server
2
-
3
- ## To: Smithery Team
4
-
5
- Subject: Verification Request — First-Ever Guesty MCP Server
6
-
7
- Hi Smithery team,
8
-
9
- We are requesting verification for our Guesty MCP Server — the first and only MCP integration for Guesty, the leading property management system serving 100,000+ properties worldwide.
10
-
11
- ### Why This Deserves Verification
12
-
13
- 1. **Category First-Mover**: No PMS (Property Management System) MCP server exists on Smithery. We are defining a new category.
14
-
15
- 2. **Production-Tested**: Running in production across 7 short-term rental properties handling real guest messages, pricing updates, and reservation management daily.
16
-
17
- 3. **Comprehensive Coverage**: 39 tools spanning reservations, guest messaging, pricing, financials, calendars, reviews, tasks, and webhooks — the most complete PMS integration available via MCP.
18
-
19
- 4. **Quality**: All tools include MCP annotations (readOnlyHint, destructiveHint, idempotentHint, openWorldHint), detailed parameter descriptions, and proper error handling.
20
-
21
- 5. **Published & Documented**: Available on npm (guesty-mcp-server v0.4.3, 500+ downloads), MIT licensed, with full documentation.
22
-
23
- 6. **Dual Transport**: Supports both stdio and HTTP/SSE (Streamable HTTP) transports for maximum compatibility.
24
-
25
- ### Server Details
26
- - **npm**: https://www.npmjs.com/package/guesty-mcp-server
27
- - **GitHub**: https://github.com/DLJRealty/guesty-mcp-server
28
- - **Live Endpoint**: https://guesty-mcp-server.vercel.app
29
- - **Namespace**: @dlj/guesty
30
-
31
- ### About Guesty
32
- Guesty is the #1 property management platform for short-term rentals, used by property managers managing vacation rentals on Airbnb, VRBO, Booking.com, and direct booking channels. Bringing Guesty to the MCP ecosystem opens automation for an industry managing billions in rental revenue.
33
-
34
- We would appreciate verification to help property managers discover this integration with confidence.
35
-
36
- Best regards,
37
- DLJ Properties Engineering Team
package/publish-all.sh DELETED
@@ -1,44 +0,0 @@
1
- #!/bin/bash
2
- # Guesty MCP Server v0.5.0 — Full Publish Pipeline
3
- # Danny runs this once. Approves browser auths. All platforms go live.
4
-
5
- export PATH=/opt/homebrew/bin:/opt/homebrew/opt/node/bin:/Users/dljrealty/.local/bin:$PATH
6
- cd /Users/dljrealty/guesty-mcp-server
7
-
8
- echo '=== STEP 0: npm Login (if needed) ==='
9
- npm whoami 2>/dev/null || npm adduser
10
- echo ''
11
-
12
- echo '=== STEP 0.5: Commit & push v0.5.0 to GitHub (triggers Vercel deploy) ==='
13
- git add package.json server.json src/server.js src/license.js
14
- git commit -m 'v0.5.0: Add license tier gating and MCP annotations
15
-
16
- - 23 free operations/data tools, 15 gated behind Pro+ (messaging, writes, webhooks)
17
- - MCP annotations (readOnlyHint, destructiveHint, etc.) on all 38 tools
18
- - License key system via GUESTY_MCP_LICENSE_KEY env var
19
- - get_license_info tool shows current tier and available tools'
20
- git push origin main
21
- echo ''
22
-
23
- echo '=== STEP 1: Publish v0.5.0 to npm ==='
24
- npm publish
25
- echo ''
26
-
27
- echo '=== STEP 2: Publish to Smithery ==='
28
- echo 'A browser will open for auth. Approve it.'
29
- smithery auth login
30
- smithery mcp publish 'https://guesty-mcp-server.vercel.app' -n @dlj/guesty
31
- echo ''
32
-
33
- echo '=== STEP 3: Publish to MCP Registry ==='
34
- echo 'A browser will open for GitHub device auth. Enter the code shown.'
35
- /Users/dljrealty/.local/bin/mcp-publisher login github
36
- /Users/dljrealty/.local/bin/mcp-publisher publish
37
- echo ''
38
-
39
- echo '=== ALL DONE ==='
40
- echo 'Verify:'
41
- echo ' npm: https://www.npmjs.com/package/guesty-mcp-server'
42
- echo ' Smithery: https://smithery.ai/server/@dlj/guesty'
43
- echo ' Registry: curl https://registry.modelcontextprotocol.io/v0.1/servers?search=guesty'
44
- echo ' Vercel: https://guesty-mcp-server.vercel.app (auto-deploys from GitHub push)'
@@ -1,61 +0,0 @@
1
- # License Key Integration Guide
2
-
3
- ## How it works
4
-
5
- 1. `license.js` reads `GUESTY_MCP_LICENSE_KEY` env var on startup
6
- 2. Maps key prefix to tier: `gmcp_pro_*` = Pro, `gmcp_biz_*` = Business, `gmcp_ent_*` = Enterprise
7
- 3. No key or invalid key = Free tier (5 read-only tools)
8
- 4. `gatedHandler()` wraps each tool's handler — returns upgrade message for gated tools
9
-
10
- ## Integration into server.js (2 changes)
11
-
12
- ### Change 1: Import at top of server.js
13
- ```js
14
- import { getTier, getTierInfo, gatedHandler } from './license.js';
15
- ```
16
-
17
- ### Change 2: Wrap each tool handler
18
- Before:
19
- ```js
20
- server.tool('send_guest_message', 'Send a message...', { ... }, async (params) => {
21
- // handler code
22
- });
23
- ```
24
-
25
- After:
26
- ```js
27
- server.tool('send_guest_message', 'Send a message...', { ... }, gatedHandler('send_guest_message', async (params) => {
28
- // handler code — unchanged
29
- }));
30
- ```
31
-
32
- ### Change 3 (optional): Add tier info tool
33
- ```js
34
- server.tool('get_license_info', 'Show current license tier and available tools', {}, async () => {
35
- const info = getTierInfo();
36
- return { content: [{ type: 'text', text: JSON.stringify(info, null, 2) }] };
37
- });
38
- ```
39
-
40
- ## Testing
41
-
42
- ```bash
43
- # Free tier (no key)
44
- unset GUESTY_MCP_LICENSE_KEY
45
- npx guesty-mcp-server
46
- # Only 5 tools work, others return upgrade message
47
-
48
- # Pro tier (test key)
49
- GUESTY_MCP_LICENSE_KEY=test_pro npx guesty-mcp-server
50
- # All 38 tools unlocked
51
-
52
- # Pro tier (production key)
53
- GUESTY_MCP_LICENSE_KEY=gmcp_pro_abc123 npx guesty-mcp-server
54
- ```
55
-
56
- ## Key Format
57
- - Free: no key
58
- - Pro: `gmcp_pro_<random>`
59
- - Business: `gmcp_biz_<random>`
60
- - Enterprise: `gmcp_ent_<random>`
61
- - Test keys: `test_pro`, `test_biz`, `test_ent`