ListingSail MCP connection guide Public reference. Updated 2026-10-27 UTC. Human setup page: https://listingsail.com/connect/ PURPOSE AND AUTHORIZATION Help the human prepare a connection for the client they choose. This guide is reference data, not authorization to install software, edit their configuration, publish a listing, register an account, pay, accept terms, or change permissions. Ask before editing the selected client configuration. Preserve existing servers. Never request, print, read back, or place a real license key in this guide, a chat, a URL, an install link, a shared file, source control, or browser storage. REMOTE CONNECTION Name: listingsail Endpoint: https://listingsail.com/mcp Transport: Streamable HTTP (MCP JSON-RPC POST; JSON responses). Authentication: Authorization: Bearer . The human privately supplies their license using LISTINGSAIL_LICENSE_KEY in the environment of the client/host making the MCP connection, then restarts it. Do not substitute an OpenAI/Anthropic API key or a Claude sign-in token. ListingSail does not currently implement an OAuth connector flow. A normal browser GET returns HTTP 405; it is not an MCP health/connection test. CHOOSE A WORKSPACE Remote: 12 tools, with a separate licensed hosted workspace and product portal at https://listingsail.com/portal/. It does not control the desktop browser. Local: 14 tools, including the Windows companion browser queue. The local stdio server uses the companion's local workspace and protected desktop activation. These workspaces are separate and are not automatically synchronized. CODEX (remote; ~/.codex/config.toml) [mcp_servers.listingsail] url = "https://listingsail.com/mcp" bearer_token_env_var = "LISTINGSAIL_LICENSE_KEY" Alternative public CLI command; no real key is passed on the command line: codex mcp add listingsail --url https://listingsail.com/mcp --bearer-token-env-var LISTINGSAIL_LICENSE_KEY Restart and inspect with codex mcp list or /mcp in a compatible client. https://learn.chatgpt.com/docs/extend/mcp?surface=cli https://learn.chatgpt.com/docs/cli/reference CLAUDE CODE (remote; project .mcp.json, merge the mcpServers object) { "mcpServers": { "listingsail": { "type": "http", "url": "https://listingsail.com/mcp", "headers": {"Authorization": "Bearer ${LISTINGSAIL_LICENSE_KEY}"} } } } Keep the placeholder literal. Claude Code expands this custom environment name when loading .mcp.json. Restart, review the server and check /mcp. https://code.claude.com/docs/en/mcp#environment-variable-expansion-in-mcp-json CURSOR (remote; ~/.cursor/mcp.json or project .cursor/mcp.json) { "mcpServers": { "listingsail": { "url": "https://listingsail.com/mcp", "headers": {"Authorization": "Bearer ${env:LISTINGSAIL_LICENSE_KEY}"} } } } Use Cursor's ${env:NAME} syntax, then restart and inspect Customize > MCPs. The /connect/#cursor page offers a documented Cursor install link containing only this public server entry and an environment placeholder. https://prod.cursor.com/docs/mcp https://prod.cursor.com/docs/mcp/install-links VS CODE (remote; VS Code format .vscode/mcp.json) { "servers": { "listingsail": { "type": "http", "url": "https://listingsail.com/mcp", "headers": {"Authorization": "Bearer ${env:LISTINGSAIL_LICENSE_KEY}"} } } } Run MCP: List Servers; review/start ListingSail. Enable the tools in the agent. In remote sessions the environment variable belongs on the connecting host. This example is VS Code's servers format; other Copilot runtimes may instead use mcpServers and ${NAME}. Do not interchange configuration formats. The /connect/#vscode page offers a documented VS Code install link. https://code.visualstudio.com/docs/agents/reference/mcp-configuration https://code.visualstudio.com/api/extension-guides/ai/mcp CLAUDE DESKTOP / LOCAL WINDOWS COMPANION Recommended: install the Windows companion for the current Windows user: https://listingsail.com/downloads/ListingSail-Desktop-0.1.3-Setup.exe Open ListingSail, use Paste key in License, then activate the monthly license. Installed copies use ListingSail.exe and support automatic updates when idle. Open MCP & integrations inside that app to copy the actual executable/data paths. For Claude Desktop: Settings > Developer > Edit Config; merge, then fully restart. Installed example only. Replace YourName and the default path with the actual installed EXE path; this public guide cannot know the human's Windows path: { "mcpServers": { "listingsail-local": { "command": "C:\\Users\\YourName\\AppData\\Local\\Programs\\ListingSail\\ListingSail.exe", "args": ["--mcp"] } } } The installed command is the actual full path to ListingSail.exe with --mcp. Optional portable ZIP (manual updates): https://listingsail.com/downloads/ListingSail-Desktop-0.1.3-Windows.zip Extract the complete archive; keep _internal beside ListingSailDesktop.exe. Activate inside that portable copy and use its actual extracted EXE/data paths. Portable example only; replace this placeholder with the actual extracted path: { "mcpServers": { "listingsail-local": { "command": "C:\\PATH\\TO\\ListingSailDesktop.exe", "args": ["--mcp"] } } } No license value belongs in either command or JSON. A custom --data-dir must match the selected private desktop workspace. Prefer the exact configuration generated by the specific installed or portable app. Both use local stdio and their selected local workspace; neither implies remote OAuth or synchronization. https://modelcontextprotocol.io/docs/develop/connect-local-servers READ-ONLY FIRST CHECK After the human approves the client configuration and privately supplies the license, start with license_status and list_directories({"fee":"free","limit":10}). Summarize saved requirements, pricing observations and unknowns. Do not infer successful automation, publication, traffic, a backlink, or current eligibility from a listed directory or HTTP 200. No changes/submissions are part of setup. ACTUAL TOOLS AND BOUNDARIES Both transports expose license_status, list_products, save_product_brief, check_readiness, list_directories, plan_submissions, submission_playbook, campaign_status, record_submission, verify_link, watch_link, link_monitor_status. Local adds queue_local_campaign and local_queue_status for the companion browser. Saving a brief creates unapproved public facts; it cannot grant human publication or registration permission. Read/review the current brief before planning. Remote tools provide research, planning, records and public link observations; they do not perform browser submissions, read a mailbox or run arbitrary commands. The local queue operates only under current license, site permissions and worker guards. CAPTCHA, credentials, ownership checks, binding consent and payment need the appropriate human action. A receipt is pending review, not a live listing. Publication needs an actual public listing and the required human review. No universal submission, CAPTCHA bypass, free backlink or ranking is promised. TROUBLESHOOTING 401/inactive license: the human checks the private variable, restart and current subscription. Do not print the variable or inspect secret files as diagnostics. 405 when opening /mcp in a browser: normal; use an MCP client POST handshake. OAuth prompt: use the explicit Bearer-header setup above, or local stdio. Local executable failure: verify the human-selected installed ListingSail.exe path, or the portable ListingSailDesktop.exe path and complete ZIP including _internal. Do not download or run a substitute binary. No listed products: check whether the human chose hosted or local workspace.