Real estate lead generation, skip tracing, and multi-channel outreach for investors and agents
Spur connects to Zillow listings and property data to help real estate professionals search for properties, find owner contact details through skip tracing, save leads into lists, and run automated email, SMS and direct mail campaigns to owners.
Try asking Muse: "Find all rental properties under $2,500 a month in Austin owned for 10+ years, then send them a personalized email asking if they'd consider selling."
Source: Found in the official MCP Registry (com.usespur/spur) · First listed October 29, 2026
Each bar is one check, every 15 minutes. Green means it answered. Last checked 2 h ago.
What Muse can see: It does not ask you to sign in, so it cannot see your accounts. It only sees what Muse sends it from your request.
Before it acts: Read what Muse plans to do before you approve it, and remove the app from Muse when you stop using it.
musedirectory.ai is not part of Meta. More about how Muse handles your information
Not in Muse's Connectors list yet, but Muse can still use it. Copy the request below and paste it into Muse. Muse asks before it shares anything with the app's site. Meta does not review apps used this way, so only use ones you trust. We tested this in the Muse app on September 24, 2026: Muse used an app's link directly this way and returned a live answer.
https://mcp.usespur.com/mcpNot in Muse's Connectors list yet. Muse can still use it: its page gives you a request to paste into Muse.
Spur is a remote MCP server, so any assistant that can add a custom connector by link can use it. Same link, same tools.
In ChatGPT, open Settings, then Connectors (called Apps & Connectors on some accounts).
Under Advanced settings, switch on Developer mode. That is what lets you add a connector by link.
Choose Create, give it a name, paste the link as the MCP server URL, and save. If it needs a sign-in, ChatGPT asks for it here.
Start a chat, open the tools menu, pick the connector, and ask. ChatGPT asks before it runs a tool the first time.
Custom connectors need a paid ChatGPT plan, and on Team, Enterprise and Edu accounts only an admin can add them. Our "Working" label means the server answered us; it cannot tell whether your plan lets you add it. All connectors that work in ChatGPT
In Claude, open Settings, then Connectors.
Choose Add custom connector, give it a name, and paste the link.
If it needs a sign-in, Claude sends you to it. Then turn the connector on in a chat from the tools menu and ask.
Custom connectors are available on paid Claude plans; on Team and Enterprise accounts an admin may need to add them. Our "Working" label means the server answered us; it cannot tell whether your plan lets you add it. All connectors that work in Claude
https://mcp.usespur.com/mcpResponse time at the last check: 443ms. Worked in n/a of checks over 30 days.
Screened, no issues found
Screening looks for known threats and hidden instructions at the time of the check, and runs again weekly and whenever the tool list changes. It cannot see the server's code, so only connect what you need and review what Muse asks to do. How screening works.
spur_search_propertiesSearch live listings (Zillow data) in Spur with plain English and/or structured filters, including event filters. Results show as cards and a map. Uses 1 property-search credit per call from the user's Spur plan, or 2 credits when the search makes more than 3 ZHomes calls (e.g. sspur_parse_search_queryShow how Spur interprets a plain-English property search (filters and events) without running it. Free: uses no search credit. Use it to confirm intent before spending a credit, or to turn a vague request into explicit filters you can adjust. The returned arguments can be passed spur_get_propertyShow one property as a detailed card: a saved Spur property by property_id, or a live listing by zpid. Includes owner links and enrichment status for saved properties.spur_save_propertiesSave live listings into the user's Spur properties (and optionally a property list). Pass listing objects from spur_search_properties structuredContent.cards[].listing. Already-saved listings are refreshed, not duplicated.spur_list_saved_propertiesList properties the user has saved in Spur, optionally filtered by city, state, list, or enrichment status. Shows cards and a map.spur_get_property_statsTotals for the user's saved properties: counts by status, enrichment progress and similar portfolio-level numbers.spur_find_ownersFind property owners in the user's Spur account by name, phone, email or mailing address text. Use spur_get_owner for full details and portfolio.spur_get_ownerFull owner record: contact details, mailing address, enrichment status and their property portfolio in Spur.spur_enrichRun skip tracing to find owners and their phone numbers, emails and mailing addresses. - property_ids: find the owner of saved properties (creates/links owner records) - owner_ids: refresh contact details for existing owners Costs enrichment credits per record (check spur_get_bilspur_list_property_listsAll of the user's property lists with ids and sizes. Use the id with spur_list_saved_properties, spur_add_properties_to_list or outreach tools.spur_create_property_listCreate a property list, optionally seeding it with saved property ids.spur_add_properties_to_listAdd saved properties to an existing property list.spur_draft_messageDraft an email, SMS or direct-mail message with Spur's AI. Returns text only; nothing is sent. Pass owner_id/property_id to personalize with real owner and property data. Uses 1 AI credit. Use {{merge_fields}} like {{owner_first_name}} and {{property_address}} to keep it reusablespur_list_workflowsThe user's multi-step outreach workflows (email/SMS/mail sequences) with status and enrollment counts.spur_get_workflowOne outreach workflow's steps in order (including reply/open branches built in the app), with the email, SMS or mail template each send step uses and its step_id.spur_create_workflowCreate a multi-step outreach sequence from saved templates. It's saved as an inactive draft: nothing sends until it's activated (spur_set_workflow_active) and owners are enrolled. Send steps take a saved template: email/SMS from spur_list_message_templates (design new ones with sspur_set_workflow_step_templateSet which saved template a workflow's send step uses (send_email ← email template, send_sms ← SMS template, send_direct_mail ← postcard/letter template). Get step_ids from spur_get_workflow. If the workflow is active, enrolled owners get the new template from their next send.spur_set_workflow_activeActivate a workflow (enrolled owners start receiving its emails, texts and mail on schedule, which uses credits) or pause it. Activating requires every send step to have a template and the user's explicit approval.spur_enroll_owners_in_workflowEnroll owners in an outreach workflow. The workflow will start emailing/texting/mailing them on its schedule, which uses credits. Confirm the workflow name and owner count with the user first.spur_send_smsText an owner from the user's Spur number. Show the user the exact message and recipient and get approval before calling with confirm=true. Costs 1 SMS credit.spur_list_sms_conversationsSMS conversations with owners, newest first, with unread counts and the last message. Good for triaging replies (hot leads, not interested, wrong number).spur_get_sms_conversationThe full SMS thread with one owner, oldest first.spur_get_outreach_reportOutreach performance (sent, delivered, opened, replied, by channel) for all workflows or one, over an optional date range.spur_list_message_templatesThe user's saved email and SMS templates. These are what outreach workflow send_email / send_sms steps use.spur_get_message_templateFetch an email template's subject, HTML and plain text, or an SMS template's text, for reading or editing. For small changes prefer the update tool's replacements over resending everything.spur_preview_message_templateShow a saved email (inbox view, desktop and mobile) or SMS (phone view, segment count) rendered with sample data or a real owner's data, plus design checks. Changes nothing.spur_preview_message_draftPreview email HTML or SMS text before saving it: renders it with sample or real owner data and runs the design checks. Nothing is saved; iterate here, then save with spur_create_email_template / spur_create_sms_template. Email HTML guidance (see spur://email-design-guide): full Hspur_create_email_templateSave a new email template and show its inbox preview. Ways to start: - From blank: start_from_blank=true gives a tested 600px responsive layout with greeting, signature and a compliant footer; pass html to replace it. - Redesign: base_template_id copies one of the user's email tespur_update_email_templateEdit one of the user's email templates and show the updated inbox preview. For tweaks pass replacements (exact find → replace in "html", "subject" or "text"); to redesign pass full html. When the HTML changes, the plain-text version is regenerated unless it was hand-written or yospur_create_sms_templateSave a new SMS template and show its phone preview with segment count and checks. The saved template can then be used by outreach workflows (spur_create_workflow / spur_set_workflow_step_template). SMS guidance: plain text, ideally one segment (160 GSM characters, or 70 if it usespur_update_sms_templateEdit one of the user's SMS templates and show the updated preview. Pass full text / fallback_body, or replacements (exact find → replace in "text" or "fallback"). Pass fallback_body="" to remove the fallback. SMS guidance: plain text, ideally one segment (160 GSM characters, or 7spur_delete_message_templateDelete one of the user's email or SMS templates. Workflow steps that use it will fail until they get another template, so check spur_list_workflows and confirm with the user first.spur_send_test_emailSend an email template, filled with sample data (or one owner's data), to the user's own Spur account email from their email sender, to check it in a real inbox. Never goes to owners. Confirm with the user first.spur_list_postcard_templatesPostcard templates available to the user: their own (editable), Spur defaults, and Spur's built-in gallery. Copy a default or gallery design with spur_create_postcard_template base_template_id to redesign it, or start from blank with start_from_blank.spur_get_postcard_templateFetch a postcard template's HTML for reading or editing. For small text changes prefer spur_update_postcard_template with replacements instead of resending whole HTML.spur_preview_postcard_templateShow any postcard template (yours, a Spur default or a gallery design) rendered with sample data, without changing anything.spur_create_postcard_templateCreate a postcard template and show a preview. Three ways to start: - From blank: start_from_blank=true gives an empty, correctly sized canvas for the size (any side you pass HTML for replaces the blank side). - Redesign an existing template: base_template_id (yours, a Spur defauspur_update_postcard_templateEdit one of the user's postcard templates and show the updated preview. For text tweaks pass replacements (exact find → replace on a side); to redesign, pass full front_html/back_html. Spur default and gallery templates can't be edited: copy them first with spur_create_postcard_tspur_add_postcard_qr_codePut a tracked QR code on the back of one of the user's postcard templates and show the preview. Each mailed postcard gets its own code under the chosen QR code, so scans are tracked per recipient (spur_get_qr_code_activity). Placement: position="auto" fills the back's QR slot (anspur_remove_postcard_qr_codeRemove the tracked QR code from one of the user's postcard templates (both sides) and show the preview. A QR slot from the design stays, empty.https://mcp.usespur.com/mcpNot in Muse's Connectors list yet, but Muse can still use it. Paste this into Muse: "Use Spur to help me. It is a free service with an MCP server at https://mcp.usespur.com/mcp. It does not need an API key. Ask me before you share anything with it." Muse asks before it shares anything with the app's site. Meta does not review apps used this way, so only use ones you trust. We tested this in the Muse app on September 24, 2026: Muse used an app's link directly this way and returned a live answer.
At the last check (October 29, 2026, 23:11 UTC) the endpoint was working, answering in 443ms. It is checked every 15 minutes.
It was screened on October 29, 2026 with the result "screened, no issues found". Screening checks the domain against threat feeds and reads the tools for hidden instructions and requests for passwords or card numbers. It cannot see the server's code, so grant only the access you need.
It exposes 40 tools, including spur_search_properties, spur_parse_search_query, spur_get_property, spur_save_properties. For example, you could ask Muse: "Find all rental properties under $2,500 a month in Austin owned for 10+ years, then send them a personalized email asking if they'd consider selling."
This listing was added from public sources (Found in the official MCP Registry (com.usespur/spur)). If you build Spur, claim it to correct the details and get your badge.
Paste this on your site or README. It always shows the latest check.
<a href="https://musedirectory.ai/connector/spur"><img src="https://musedirectory.ai/badge/spur.svg" alt="Spur on musedirectory.ai" width="236" height="40"></a>