L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Développement · SKILL.md

connect-apps

connect-apps

Manage CompliCore external app integrations: PMS providers (Guesty, Hostaway, Lodgify, Beds24, Hostfully), OTA channels (Airbnb, VRBO, Booking.com), payment processors (Stripe, PayPal), smart locks (August, Schlage, Yale), accounting (QuickBooks, Xero), and insurance (Superhog). Actions: list, connect, disconnect, sync, check env vars, diagnose errors. Uses…

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: connect-apps description: "Manage CompliCore external app integrations: PMS providers (Guesty, Hostaway, Lodgify, Beds24, Hostfully), OTA channels (Airbnb, VRBO, Booking.com), payment processors (Stripe, PayPal), smart locks (August, Schlage, Yale), accounting (QuickBooks, Xero), and insurance (Superhog). Actions: list, connect, disconnect, sync, check env vars, diagnose errors. Uses the connect-apps-plugin MCP server."

Connect Apps — CompliCore Integration Skill

Manage external application integrations for the CompliCore rental platform. This skill provides context and instructions for working with the connect-apps-plugin MCP server located at connect-apps-plugin/.

When to Apply

Use this skill when the user asks about:

  • Connecting, disconnecting, or configuring external apps
  • Syncing data with PMS, OTA, payment, smart-lock, or accounting systems
  • Checking environment variables or credentials for integrations
  • Diagnosing sync errors or connection issues
  • Listing available connectors and their status

Architecture

connect-apps-plugin/
├── mcp.json           # MCP server manifest
├── package.json       # Dependencies (@modelcontextprotocol/sdk, zod)
├── tsconfig.json      # TypeScript config (ES2022, ESNext modules)
├── src/
│   └── index.ts       # MCP server with 7 tools (864 lines)
└── dist/              # Compiled output (after npm run build)

Runtime: Node.js ≥ 20, TypeScript, MCP stdio transport Launch: claude --plugin-dir ./connect-apps-plugin

Connector Registry

IDNameCategoryAuthRequired Env Vars
guestyGuestypmsOAuthGUESTY_CLIENT_ID, GUESTY_CLIENT_SECRET
hostawayHostawaypmsAPI KeyHOSTAWAY_API_KEY, HOSTAWAY_ACCOUNT_ID
lodgifyLodgifypmsAPI KeyLODGIFY_API_KEY
beds24Beds24pmsAPI KeyBEDS24_PROP_KEY, BEDS24_API_KEY
hostfullyHostfullypmsOAuthHOSTFULLY_CLIENT_ID, HOSTFULLY_CLIENT_SECRET
airbnbAirbnbotaOAuthAIRBNB_CLIENT_ID, AIRBNB_CLIENT_SECRET
vrboVRBOotaAPI KeyVRBO_API_KEY, VRBO_ADVERTISER_ID
booking-comBooking.comotaAPI KeyBOOKINGCOM_API_KEY, BOOKINGCOM_HOTEL_ID
stripeStripepaymentAPI KeySTRIPE_SECRET_KEY, STRIPE_PUBLISHABLE_KEY, STRIPE_WEBHOOK_SECRET
paypalPayPalpaymentOAuthPAYPAL_CLIENT_ID, PAYPAL_CLIENT_SECRET
augustAugust Smart Locksmart-lockOAuthAUGUST_CLIENT_ID, AUGUST_CLIENT_SECRET
schlageSchlage Encodesmart-lockAPI KeySCHLAGE_API_KEY
yaleYale Accesssmart-lockOAuthYALE_CLIENT_ID, YALE_CLIENT_SECRET
quickbooksQuickBooks OnlineaccountingOAuthQUICKBOOKS_CLIENT_ID, QUICKBOOKS_CLIENT_SECRET
xeroXeroaccountingOAuthXERO_CLIENT_ID, XERO_CLIENT_SECRET
superhogSuperhoginsuranceAPI KeySUPERHOG_API_KEY, SUPERHOG_HOST_ID

MCP Tools Reference

list_connectors

List all connectors, optionally filtered by category or status.

  • category (optional): pms | ota | payment | smart-lock | accounting | insurance
  • status (optional): connected | disconnected | error | configured

get_connector

Get details for a specific connector including env vars and sync history.

  • connectorId (required): Connector ID string (e.g. guesty, stripe)

connect_app

Activate a connection with credentials.

  • connectorId (required): Connector ID
  • apiKey (optional): For API-key connectors
  • oauthCode (optional): For OAuth connectors
  • webhookUrl (optional): Webhook endpoint to register

disconnect_app

Disconnect and revoke credentials.

  • connectorId (required): Connector ID

trigger_sync

Trigger a data sync with a connected app.

  • connectorId (required): Connector ID
  • syncType (optional, default full): full | listings | bookings | availability | pricing | payouts

get_sync_history

View recent sync history.

  • connectorId (optional): Filter by connector
  • limit (optional, default 20): Max records (1–100)

check_env_vars

Check which required env vars are set vs missing for a connector. Does not expose secret values.

  • connectorId (required): Connector ID

Workflow Patterns

First-Time Setup

  1. list_connectors — see what's available
  2. check_env_vars with target connector — verify credentials are configured
  3. connect_app with credentials — activate the connection
  4. trigger_sync with syncType: "full" — pull initial data
  5. get_sync_history — verify the sync completed

Diagnose a Failing Connector

  1. get_connector — check status and recent sync errors
  2. check_env_vars — look for missing credentials
  3. If status is error, disconnect_app then connect_app to re-auth
  4. trigger_sync — test with a fresh sync

Daily Operations

  • list_connectors with status: "error" — find broken connections
  • get_sync_history with limit: 5 — check recent activity
  • trigger_sync with syncType: "availability" — quick calendar sync

Development

cd connect-apps-plugin
npm install          # Install deps
npm run build        # Compile TypeScript → dist/
npm run dev          # Run with tsx (hot-reload)
npm start            # Run compiled output

Adding a New Connector

  1. Add entry to the connectors array in src/index.ts
  2. Define: id, name, category, authType, status, docsUrl, description, requiredEnvVars
  3. Rebuild: npm run build

Key Types

type ConnectorCategory = "pms" | "ota" | "payment" | "smart-lock" | "accounting" | "insurance";
type ConnectorStatus = "connected" | "disconnected" | "error" | "configured";
interface AppConnector {
  id: string; name: string; category: ConnectorCategory;
  authType: "oauth" | "apiKey" | "webhook";
  status: ConnectorStatus; docsUrl: string;
  description: string; requiredEnvVars: string[];
}

Related Files

  • connect-apps-plugin/src/index.ts — Full MCP server implementation
  • connect-apps-plugin/mcp.json — Server manifest
  • AGENTS.md — LodgingOrchestrator agent manifesto (references settlement contracts)
  • contracts/ComplicoreInstantSettlement.sol — Settlement smart contract
  • backend/src/routes/ — Backend API routes that consume synced data
Skills enregistrées