The short version. You cannot connect Streamline VRS to Claude with an off-the-shelf connector today. As of July 2026 Streamline publishes no official MCP server, and its API is partner-gated: Streamline's Robust API gives approved third-party partners programmatic access to properties, reservations, calendars, owner details, work orders, and pricing, with documentation and tokens managed inside the Partner X portal. That leaves two real paths. If you have partner API access, or work with a developer or vendor who does, you can build a small custom MCP server against Streamline's JSON API and query your portfolio from Claude in natural language. If you do not, the practical route is exporting reservation, occupancy, housekeeping, and owner reports from Streamline and analyzing the files with Claude, which works today and needs nothing from Streamline.
Why Streamline is the PMS this question keeps landing on
Streamline sits at the top of the established professional segment. In RapidEye's analysis of the VRMA public member directory (5,091 vacation rental management companies, March 2026 compilation), Streamline was the most-named PMS: 238 companies, 25.8% of the 923 members who named a specific platform. That skews to exactly the operators asking this question: multi-hundred-unit businesses with owner statements, trust accounting, and housekeeping departments, not two-listing hosts. The full breakdown is in our PMS generational shift analysis.
Streamline also has its own AI story. According to Streamline's August 2024 announcement, the company shipped native AI tools, including a feature called Leo AI, unveiled at Streamline Summit 2024 and positioned as AI "built directly into the Streamline platform." That is in-product AI. It is a different thing from what this page covers: connecting an external assistant like Claude to your Streamline data so you can interrogate your whole portfolio conversationally. Streamline's AI announcement makes no mention of MCP or external assistant access.
The three ways this actually works
Hospitable proved a first-party MCP server is viable for a PMS; Streamline has not shipped one. There is a GitHub project named streamline-mcp, but it belongs to an unrelated task-management app, not Streamline VRS. Do not install it expecting reservation data. If Streamline ever publishes an MCP endpoint, this page will be updated; until then, skip to path B or C.
Streamline's API is real and covers the data you'd want: according to Streamline, it gives third-party partners programmatic access to property information, reservations, calendars and availability, owner details, maintenance and work orders, and pricing. But it is not self-serve. You apply to become a Streamline partner, and approved partners get documentation and token management through the Partner X portal.
If you have that access (or your tech vendor does), wrapping a few API methods in an MCP server is a one-to-two day developer project, not a moonshot. The skeleton is below.
No partner agreement, no code. Pull the reports you already run in Streamline (reservations, occupancy, housekeeping, owner statements) as files, and give them to Claude: attach them in a chat on claude.ai, or point Claude Desktop at an exports folder so it can read new files as you drop them in. It is point-in-time rather than live, but for month-end analysis, owner reporting prep, and operations reviews, it covers most of the value with none of the friction.
What a Streamline manager would ask Claude
These assume Claude can see your Streamline data via either path B or path C. The point is portfolio-level questions that are slow to answer by clicking through StreamlineX screens one property at a time.
Today, without partner access: exports
Export the reports you already run
From Streamline, pull the reports that match the questions you want answered: a reservation report for pacing and occupancy questions, housekeeping and work order reports for operations questions, owner statements for owner-call prep. File formats like CSV or Excel are ideal because Claude can compute on them directly rather than reading a PDF.
Give the files to Claude
Two options, in increasing order of convenience:
- Attach in a chat. On claude.ai or in Claude Desktop, attach the export files to a conversation and ask your question. Works instantly, zero setup.
- A watched exports folder. In Claude Desktop, use the filesystem MCP server (one of Anthropic's reference servers) pointed at a
~/streamline-exportsfolder. Drop each week's exports in; Claude can then read, join, and compare files across weeks without you re-attaching anything.
Ask portfolio-level questions
Start with one report and one question ("which properties are pacing behind last year?"), then combine files ("join the work order export to the reservation export and tell me which high-revenue units are generating the most maintenance"). Claude handles the joining; your job is knowing which questions matter.
The limitation to keep in mind: exports are snapshots. Anything time-sensitive, like today's turnover status, is only as fresh as your last export. For live data you need path B.
The build: a custom MCP server on Streamline's API
This path is for operators with partner API access, or developers building on a client's behalf. Realistic effort: a working read-only server in a day or two, most of it spent in the API docs picking methods.
Get partner API access and tokens
Streamline's API is available to approved third-party partners. If you're an operator, the fastest route is often through a vendor already integrated with Streamline; if you're building something new, apply through Streamline's partner application. Approved partners work inside the Partner X portal, where, per Streamline, you can find the API documentation and renew tokens within the API documentation tab.
You'll end up with a token_key and token_secret pair scoped to the property management company you're integrating with.
Understand the wire format
Streamline's API is not REST in the path-per-resource sense. Community integration code (the jhample/streamline PHP sample on GitHub) shows the shape: every call is a JSON POST to a single endpoint, https://web.streamlinevrs.com/api/json, with a methodName and a params object that carries your token_key and token_secret plus the method's arguments. Method names in that sample include GetReservationInfo, GetAllReservationsByEmail, and GetReservationFlags:
POST https://web.streamlinevrs.com/api/json
Content-Type: application/json
{
"methodName": "GetReservationInfo",
"params": {
"token_key": "YOUR_TOKEN_KEY",
"token_secret": "YOUR_TOKEN_SECRET",
"confirmation_id": "269028"
}
}
The full method catalog lives in the partner-only documentation, so treat the names above as verified examples, not the complete surface. Your Partner X docs are the source of truth for which methods your token can call.
Wrap it in an MCP server
Because everything is one endpoint plus a method name, the MCP wrapper is unusually small. Set up a Node project (npm init -y, then npm install @modelcontextprotocol/sdk zod, with "type": "module" in package.json) and adapt this skeleton, swapping in the methods your partner docs give you:
#!/usr/bin/env node
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { z } from "zod";
const TOKEN_KEY = process.env.STREAMLINE_TOKEN_KEY;
const TOKEN_SECRET = process.env.STREAMLINE_TOKEN_SECRET;
const API_URL = "https://web.streamlinevrs.com/api/json";
if (!TOKEN_KEY || !TOKEN_SECRET) {
console.error("Missing STREAMLINE_TOKEN_KEY or STREAMLINE_TOKEN_SECRET");
process.exit(1);
}
// Every Streamline call: one endpoint, methodName + params.
async function streamlineCall(methodName, params = {}) {
const response = await fetch(API_URL, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
methodName,
params: {
token_key: TOKEN_KEY,
token_secret: TOKEN_SECRET,
...params,
},
}),
});
if (!response.ok) {
throw new Error(`Streamline API ${response.status}: ${await response.text()}`);
}
return response.json();
}
const server = new McpServer({ name: "streamline", version: "1.0.0" });
// Example tool: look up a reservation by confirmation number.
// GetReservationInfo appears in community integration code; confirm
// it and add the rest of your methods from the Partner X API docs.
server.tool(
"get-reservation",
"Fetch a Streamline reservation by confirmation number. Returns guest, dates, and pricing details.",
{
confirmation_id: z.string().describe("Streamline reservation confirmation number"),
},
async ({ confirmation_id }) => {
const data = await streamlineCall("GetReservationInfo", { confirmation_id });
return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
}
);
// Example tool: all reservations for a guest email.
server.tool(
"get-reservations-by-email",
"List all Streamline reservations associated with a guest email address.",
{
email: z.string().describe("Guest email address"),
},
async ({ email }) => {
const data = await streamlineCall("GetAllReservationsByEmail", { email });
return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
}
);
const transport = new StdioServerTransport();
await server.connect(transport);
Keep it read-only. Streamline is a system of record for trust accounting and owner money; a query-only server means Claude can look at everything and change nothing. If you later add write methods, run them in a separate server so exploration and mutation never share a connection.
Register it with Claude Desktop
Add the server to claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\):
{
"mcpServers": {
"streamline": {
"command": "node",
"args": ["/absolute/path/to/streamline-mcp/index.js"],
"env": {
"STREAMLINE_TOKEN_KEY": "your_token_key",
"STREAMLINE_TOKEN_SECRET": "your_token_secret"
}
}
}
}
Then fully quit and reopen Claude Desktop (Cmd+Q on macOS; closing the window is not enough) and ask it to fetch a reservation you know the confirmation number for.
The housekeeping layer: PropertyCare X
For turnover questions, the data you care about lives in Streamline's field operations module. According to Streamline's PropertyCare feature documentation, housekeepers see which homes they need to clean and run custom inspections after cleaning, maintenance teams assign tasks to operators or outside vendors and log hours and parts costs from a phone, work orders can be created directly from inspections, and crews take before and after pictures when doing work. The PropertyCare X app runs in English and Spanish and is available to staff of companies on Streamline.
That before-and-after photo trail is the underused asset. Most operators store thousands of turnover photos in PropertyCare X that nobody ever looks at again.
This is the part we work on directly: RapidEye has a live integration with Streamline's PropertyCare X module, running AI damage detection on the cleaner photos your teams already capture at turnover, so damage, missed cleaning issues, and staging problems get flagged before the next guest arrives instead of after. If your portfolio runs on Streamline, that connection already exists; see also the RapidEye API for wiring inspection results into the rest of your stack.
Troubleshooting
I found "streamline-mcp" on GitHub. Is that the connector?
No. That project (RosTeHeA/streamline-mcp) is an MCP server for an unrelated task-management app called Streamline, configured with Supabase credentials. It has nothing to do with Streamline VRS and cannot read your PMS data. The name collision is exactly why this page exists.
Where are Streamline's API docs? Public links 404 on me.
That's expected. Streamline's API documentation lives behind the Partner X portal login (partner.streamlinevrs.com); the doc URLs are not publicly reachable, and we found the direct apidocs path returns a 404 when hit without a session. Streamline's public pages describe the API's scope and point you to the partner application; the method-level reference requires partner access.
My API calls return errors or empty responses
Check three things in order. First, the request shape: a JSON POST to the single /api/json endpoint with methodName at the top level and your token_key / token_secret inside params, not as HTTP headers. Second, the method name against your Partner X docs; the catalog varies and the examples in this guide come from community code, not the full spec. Third, pacing: the community sample sleeps 10 seconds every 7 calls, which suggests being polite about request rate is wise. If tokens fail outright, renew them in the Partner X portal's API documentation tab.
Claude Desktop doesn't show the streamline tools
Claude Desktop reads the config only at startup. Fully quit (Cmd+Q on macOS, right-click tray icon and Quit on Windows) and reopen. Still missing? Check Help > Open Logs Folder for JSON parse errors in the config, a wrong absolute path to index.js, or node not on PATH.
Exports are too slow. Can I get live data without becoming a partner?
The realistic middle ground is riding on a vendor that already holds a Streamline partner integration and exposes the data you need through its own API or MCP surface. Otherwise: exports for analysis cadence, partner application if the live connection is worth the process. There is no self-serve API key in Streamline the way Hospitable or OwnerRez offer one.
Quick FAQ
Does Streamline VRS have an official MCP server?
No. As of July 2026, Streamline has not published an MCP server, so there is no official plug-and-play way to connect Streamline to Claude, ChatGPT, or any other assistant. In the STR space, Hospitable is the platform that has shipped a first-party MCP server; for Streamline the options are a custom build on the partner API or report exports.
Does Streamline have an API I can use?
Streamline has a documented API, but access is limited to approved third-party partners rather than being self-serve for operators. Per Streamline, the Robust API covers property information, reservations, calendars and availability, owner details, maintenance and work orders, and pricing, and partners manage docs and tokens through the Partner X portal. Community integration code shows the mechanics: JSON POSTs to web.streamlinevrs.com/api/json with a method name and token pair.
Can I connect Streamline to Claude without partner access?
Yes, via exports. Pull your reservation, occupancy, housekeeping, and owner reports out of Streamline and analyze the files with Claude, either attached in a chat or through a watched folder in Claude Desktop. It is not live, but it answers most portfolio-analysis questions today with zero build effort.
What is PropertyCare X?
Streamline's housekeeping and maintenance field app. Cleaners get their unit lists and post-clean inspections, maintenance staff and vendors get task assignment with hours and parts logging, work orders can spawn directly from inspections, and crews capture before and after photos. It runs in English and Spanish. It is also where RapidEye's Streamline integration plugs in, analyzing those turnover photos for damage automatically.
Does Streamline have its own AI?
Yes. Streamline announced native AI tools, including Leo AI, in August 2024 around Streamline Summit 2024, describing them as AI solutions built directly into the platform. In-product AI and external-assistant access are different capabilities though; the announcement says nothing about MCP or connecting outside AI agents to your data.
Sources & references
- Open API in Streamline (Streamline VRS)https://www.streamlinevrs.com/features/open-api/
- Partner X Portal (Streamline VRS)https://www.streamlinevrs.com/features/partner-x-portal/
- PropertyCare Vacation Home Management Software (Streamline VRS)https://www.streamlinevrs.com/features/property-care/
- The Vacation Industry's First Native AI Platform (Streamline blog, August 26, 2024)https://www.streamlinevrs.com/blog/the-vacation-industrys-first-native-ai-platform/
- jhample/streamline: PHP API call to StreamlineVRS (GitHub)https://github.com/jhample/streamline
- Model Context Protocol TypeScript SDKhttps://github.com/modelcontextprotocol/typescript-sdk
- The PMS Generational Shift (RapidEye analysis of the VRMA member directory)https://rapideyeinspections.com/blog/vacation-rental-pms-generational-shift/
Other guides in this series
The full set of connect-your-STR-stack-to-Claude guides lives at /claude-guides/.
Connect PriceLabs to Claude
Read-only queries against your synced listings and current dynamic prices. Self-serve API key.
PMSConnect Hospitable to Claude
The one STR platform with an official MCP server, plus a read-only build-it-yourself option.
PMSConnect Guesty to Claude
The other heavyweight professional PMS, and what its Open API allows.

