
Propstack Mcp
io.github.ashev87Published by GitHub account ashev87v1.1.0Updated Oct 24, 2026
Connect AI assistants to your Propstack real estate CRM (contacts, properties, deals).
Overview
Lets an assistant work with a Propstack real estate CRM: contacts, properties, deals, tasks, emails, and documents.
- What you can do
- Exposes roughly 49 tools over the Propstack V1 API, covering contact search and management, property listings, deal pipelines, search profiles, tasks and calendar events, templated emails, documents, and configuration lookups. Composite tools provide a full contact dossier, property performance reports, pipeline summaries, lead intake, and matching of contacts to a property. It runs locally over stdio and is stateless.
- When to use it
- Useful for real estate agents or teams already on Propstack who want to query and update CRM records by chat, prepare call briefings, run lead intake, or review pipeline and listing performance without opening the CRM.
- Requirements
- A local Node.js runtime to run the npm package propstack-mcp-server over stdio, plus a Propstack V1 API key supplied in the environment variable PROPSTACK_API_KEY. The key's permissions determine which endpoints are reachable. Desktop clients only.
Installation
In SourceWeft
- Open Propstack Mcp in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
Propstack MCP Server
Connect AI assistants (Claude, ChatGPT) to your Propstack real estate CRM.
Verbinden Sie KI-Assistenten mit Ihrem Propstack-CRM — Kontakte verwalten, Objekte durchsuchen, Deals pflegen, Besichtigungen planen und Suchprofile erstellen, alles per Sprache oder Chat.
What you can do / Was Sie damit machen koennen
- Contact management — search, create, update, and tag contacts with GDPR tracking
- Property search & management — filter by price, rooms, area, status; create and update listings
- Deal pipeline — create deals, move through stages, track win/loss rates
- Buyer matching — create search profiles from natural language ("3-Zimmer in Berlin, bis 400k, mit Balkon") and auto-match to new listings
- Task & calendar — log call notes, set follow-up reminders, schedule viewings
- Email — send templated emails linked to contacts and properties
- 360-degree contact view — get a complete briefing before every call
- Pipeline dashboards — deal counts and values per stage, stale deal alerts
- Lead intake — one-call workflow: dedup, create contact, log notes, create deal, set reminder
Data protection (DSGVO): Using this server sends personal data from your Propstack CRM into the LLM you connect (Claude, ChatGPT, …). You — the Propstack customer — remain the data controller. See Datenschutz (DSGVO) for responsibility, legal basis, the
fieldsdata-minimization parameter, and notes on automated decisions.
Quick Start
1. Set your API key
2a. Claude Desktop
Add to your Claude Desktop config (claude_desktop_config.json):
2b. Claude Code (CLI)
Add to your project's .mcp.json:
2c. ChatGPT and claude.ai (web / mobile)
These clients only connect to remote MCP servers over an HTTPS URL. They
cannot start a local npx command, so this server can't be added to them
directly — use Claude Desktop, Claude Code, Cursor or another local client
instead.
If you need ChatGPT or the claude.ai apps, the server has to run behind an authenticated HTTPS endpoint. Do not expose it through an open tunnel or an unauthenticated stdio-to-HTTP bridge: anyone with the URL would get full read/write access to your CRM with your API key. Open an issue if you need a hosted setup.
2d. Cursor IDE
- Open Settings (Ctrl+,) → search "MCP"
- Edit MCP Servers JSON, or add
mcp.jsonin project root /.cursor/
Option A — local project (after npm run build):
Or use .env in project root — the server loads it automatically; you can omit the env block.
Option B — npx (published package or npx from local):
2e. Run directly
API Key / API-Schluessel
Get your Propstack API key:
- Log in to crm.propstack.de
- Go to Verwaltung > API-Schluessel (Administration > API Keys)
- Create or copy your V1 API key
Hinweis: Der API-Schluessel bestimmt die Berechtigungen. Stellen Sie sicher, dass Lese- und Schreibzugriff fuer die benoetigten Endpunkte aktiviert ist.
Available Tools (56)
Contacts (Kontakte)
Properties (Objekte)
Tasks (Aufgaben & Notizen)
Deals (Pipeline)
Search Profiles (Suchprofile)
Projects (Projekte)
Activities & Events (Aktivitaeten & Termine)
Emails (E-Mails)
Documents (Dokumente)
Images (Bilder)
Relationships (Beziehungen)
Lookups (Konfiguration)
Smart Composites (Intelligente Workflows)
Admin (Verwaltung)
Example Conversations / Beispiel-Konversationen
Morning Briefing / Morgen-Briefing
You: What's on my calendar today?
AI: calls
list_eventswith today's date range — You have 3 viewings scheduled...
Du: Gibt es neue Leads seit gestern?
KI: ruft
search_contactsmit created_at_from=gestern auf — 5 neue Kontakte...
Lead Intake / Leaderfassung
You: I just got off the phone with Maria Schmidt, +49 157 1234 5678. She's looking for a 3-room apartment in Berlin, budget 300-400k, must have a balcony. She found us on ImmoScout.
AI: calls
smart_lead_intake— Contact created (ID: 4521), call note logged, follow-up reminder set for tomorrow 9:00. Would you like me to create a search profile for her criteria?
Property Matching / Objekt-Matching
Du: Wir haben ein neues Listing: 3-Zimmer-Wohnung in Charlottenburg, 385.000 EUR. Wer kommt als Kaeufer in Frage?
KI: ruft
match_contacts_to_propertyauf — 12 passende Suchprofile gefunden. Top 3: Herr Weber (Score 95%), Frau Mueller (Score 88%), Herr Kim (Score 85%)...
Pipeline Review
You: How's our sales pipeline looking? Any stale deals?
AI: calls
pipeline_summary— 47 active deals, total value 12.3M EUR. 5 deals haven't been updated in 14+ days...
Pre-Call Briefing / Vor dem Anruf
Du: Gib mir alles ueber Kontakt 3847 — ich rufe gleich an.
KI: ruft
full_contact_360auf — Herr Weber, Rating 3 Sterne, sucht 3-Zimmer in Berlin/Potsdam bis 400k. 2 aktive Deals, letzte Aktivitaet vor 3 Tagen...
Datenschutz (DSGVO)
English summary: Using this MCP server sends personal data from your Propstack CRM into whichever LLM you connect. You (the Propstack customer) are the data controller (Verantwortlicher) under Art. 4(7) GDPR — the tool author hosts and processes nothing. The German section below covers controller responsibility, the legal basis your LLM processing needs, the
fieldsparameter for data minimization, automated-decision notes formatch_contacts_to_property, and audit logging. These points apply to any LLM tool handling customer data; they are stated here because they are easy to overlook.
Verantwortlichkeit
Dies ist ein quelloffenes Werkzeug (Open Source). Jeder Nutzer verbindet es über seinen eigenen API-Schluessel mit seinem eigenen Propstack-Konto. Der Server ist zustandslos, laeuft lokal beim jeweiligen Nutzer und speichert keine Daten. Es werden keine Daten durch den Autor des Werkzeugs gehostet oder verarbeitet. Der Propstack-Kunde, der dieses Werkzeug einsetzt, ist der Verantwortliche im Sinne von Art. 4 Nr. 7 DSGVO.
Verarbeitung durch das LLM
Bei der Nutzung dieses Werkzeugs werden personenbezogene Daten (Namen, Adressen, Kontaktdaten sowie je nach Tool auch Finanz- bzw. Deal-Daten) in das Kontextfenster des jeweils verbundenen LLM (Claude, ChatGPT usw.) uebertragen. Dies stellt einen Verarbeitungsvorgang im Sinne von Art. 4 Nr. 2 DSGVO dar. Der Verantwortliche benoetigt hierfuer:
- eine Rechtsgrundlage nach Art. 6 DSGVO,
- eine entsprechende Angabe in der eigenen Datenschutzerklaerung (Transparenzpflichten nach Art. 13/14 DSGVO gegenueber den betroffenen Personen),
- gegebenenfalls einen Auftragsverarbeitungsvertrag (AVV) mit dem LLM-Anbieter.
Dies gilt fuer jedes LLM-gestuetzte Werkzeug, das Kundendaten verarbeitet, und ist nicht spezifisch fuer diesen MCP-Server — es wird hier dennoch ausdruecklich genannt, da es leicht uebersehen wird.
Hinweis zu automatisierten Entscheidungen (match_contacts_to_property)
Das Tool match_contacts_to_property erzeugt einen Uebereinstimmungs-Score (Ranking) zwischen Kontakten und einem Objekt — zur Vorlage fuer eine menschliche Pruefung. Es ist als Entscheidungsunterstuetzung konzipiert, nicht als autonomer Entscheider: Der Makler prueft die Ergebnisse und handelt manuell. Dadurch faellt die Nutzung nicht unter Art. 22 DSGVO (der ausschliesslich automatisierte Entscheidungen mit rechtlicher oder aehnlich erheblicher Wirkung betrifft). Der Verantwortliche sollte jedoch sicherstellen, dass das Tool auch tatsaechlich so eingesetzt wird — also nicht ohne menschliche Pruefung in eine vollstaendig automatisierte Ansprache eingebunden wird.
Datenminimierung (fields-Parameter)
Die Tools, die personenbezogene Daten in groesserem Umfang zurueckgeben — search_contacts, search_properties, search_deals und full_contact_360 — unterstuetzen einen optionalen fields-Parameter. Damit lassen sich gezielt nur die benoetigten Felder abrufen (z. B. ["first_name", "last_name", "email"]). Ohne fields bleibt das Verhalten unveraendert (alle Felder werden zurueckgegeben). Es wird empfohlen, dass Verantwortliche fields nutzen, um nur die fuer den jeweiligen Zweck erforderlichen Daten zu verarbeiten — im Sinne von Datenschutz durch Technikgestaltung (Art. 25 DSGVO).
Audit-Logging / Zugriffskontrolle
Protokollierung von Zugriffen und Zugriffskontrolle liegen in der Verantwortung des Verantwortlichen — etwa ueber die Berechtigungssteuerung von Propstack (API-Schluessel-Berechtigungen) oder ueber Protokollierung auf Client- bzw. Sitzungsebene. Da der Server zustandslos ist und lokal beim jeweiligen Nutzer laeuft, ist eine solche Protokollierung nicht im Werkzeug selbst enthalten.
Development
Project Structure
License
MIT
[Image]Source: README.md at commit 3acf764
Tools
0Version history
1- v1.1.0LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts