Connects AI assistants to Propstack CRM for contacts, properties, deals, activities, documents, and real estate workflows.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent โ or use 1-click editor setup below.
This server is confirmed live โ we successfully called its tools/list endpoint directly (see the verified badge above). We haven't yet sandbox-tested the stdio install command below specifically, which is a separate, ongoing check.
๐ก Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by Propstack MCP.
search_contactsSearch and filter contacts in Propstack CRM. Use this tool to: - Find contacts by name, email, or phone number - List recent leads (sort by created_at desc) - Find uncontacted leads (last_contact_at is null) - Filter by broker assignment, status, tags, or GDPR status - Search across all contact fields with 'q' parameter The 'q' parameter searches across: first name, last name, all emails, all addresses, and all phone numbers. Phone search ('phone_number') ignores formatting โ both 015712345678 and 0157-123-456-78 will match. Returns paginated results. Use expand=true for full details including custom fields. Custom fields: pass 'custom_filters' as an object of custom-field-name โ value to filter by agency-specific fields (use list_custom_fields to discover field names). Each entry becomes a cf_<name> query parameter, e.g. { marketing_channel: "Website" }. Data minimization (Art. 25 DSGVO): pass 'fields' with an array of contact field names to return only those fields per contact (e.g. ["first_name", "last_name", "email"]). Omit 'fields' to return the default set unchanged. Unknown field names produce an error listing the valid options.
get_contactGet full details of a single contact by ID. Use this tool to: - View complete contact information before a call - Check relationships, documents, and owned properties - See sub-contacts (e.g. family members at same address) Use 'include' to load related data in one request.
create_contactCreate a new contact in Propstack CRM. Use this tool to: - Register a new lead after a phone call - Create a contact from a web form submission - Add a new property owner Auto-upserts: if a contact with the same email or old_crm_id already exists, it will be updated instead of creating a duplicate. Use get_contact_sources first to find valid source IDs.
update_contactUpdate an existing contact in Propstack CRM. Use this tool to: - Update contact details after a call - Change broker assignment - Add or remove tags (Merkmale) - Update GDPR status - Change contact rating or status Tag management options: - group_ids: replaces ALL tags with this list - add_group_ids: adds tags without removing existing ones - sub_group_ids: removes specific tags Only provide the fields you want to change.
delete_contactDelete a contact from Propstack CRM (soft delete). The contact is moved to a 30-day recycle bin and can be restored. Use this tool for: - GDPR deletion requests (Art. 17 DSGVO) - Removing duplicate contacts - Cleaning up test data
get_contact_sourcesList all available contact/lead sources in Propstack. Returns the list of sources like "Immobilienscout 24", "Website", "Empfehlung", etc. with their IDs. Use this tool to look up valid source IDs before creating or updating contacts with client_source_id.
The ashev87/propstack-mcp MCP server gives AI assistants access to Propstack CRM data and workflows used by real estate agencies. It covers contact records, property listings, sales and rental deals, development projects, search profiles, activities, calendar events, emails, and attached documents.
Contact tools support searching by names, email addresses, phone numbers, status, tags, broker, GDPR state, and custom fields. Phone lookups ignore formatting, which supports caller identification workflows. Contacts can be created, updated, soft-deleted, and associated with lead sources. Search and retrieval operations can limit returned fields to reduce the personal data sent to the connected language model.
Property tools handle listing search, detail retrieval, creation, and updates. Searches can filter by property type, marketing type, status, location, rooms, area, price, rent, construction year, projects, and custom fields. Deals link contacts to properties and can be created, searched, and moved through pipeline stages. Search profiles capture buyer or renter requirements such as cities, budget, room count, space, and feature preferences.
The server runs locally as an MCP process and sends requests to Propstack using the configured API key. An MCP client invokes individual tools with structured parameters. Lookup tools provide IDs needed by other operations, such as property statuses, contact sources, deal pipelines and stages, tags, custom fields, users, and reservation reasons.
Tasks provide a shared endpoint for notes, reminders, appointments, and cancellations. Events can be queried by date, broker, contact, property, or state. Email tools use Propstack templates and a broker account connected to Propstack. Documents are listed or uploaded as base64 data URIs and attached to exactly one contact, property, or project.
The server also includes composite workflows such as contact dossiers, property performance reports, pipeline summaries, lead intake, and matching contacts to properties. These operations combine CRM data into higher-level responses rather than requiring every underlying lookup to be called separately.
Install and run the ashev87/propstack-mcp MCP server with Node.js and the published package:
Set PROPSTACK_API_KEY before starting the process. The key is created in Propstack under the administration API-key settings, and its permissions determine which read and write operations are available. Claude Desktop and Cursor configurations can launch the server with the same command and pass the key through their environment settings. The project also documents use with ChatGPT connectors and Claude Code.
The server sends Propstack personal data to the connected language model. The Propstack customer remains responsible for the applicable data-controller obligations and should use the fields parameter where narrower contact, property, or deal responses are appropriate. Write operations may require specific Propstack permissions and valid IDs from the relevant lookup tools.
Email sending depends on a broker with a connected email account and a valid Propstack template ID. Uploaded documents must be supplied as base64 data URIs. Contact deletion is a soft delete that places the record in a 30-day recycle bin rather than immediately removing it permanently.
Factual signals from GitHub, npm, and our automated checks โ not a rating.
No reviews yet โ be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/ashev87-propstack-mcp)<a href="https://allmcps.com/mcp/ashev87-propstack-mcp"><img src="https://allmcps.com/api/badge/ashev87-propstack-mcp?style=directory" alt="Propstack MCP on AllMCPs" /></a>