
Propstack Mcp
- 7 repo stars
- Updated July 1, 2026
- ashev87/propstack-mcp
Propstack MCP is a MCP server that lets an AI agent call Propstack CRM to search contacts, manage properties, track deals, and schedule viewings.
About
io.github.ashev87/propstack-mcp is a Model Context Protocol server that wires Claude Code, Cursor, Codex, and other MCP clients to Propstack, the German real-estate CRM at crm.propstack.de. developers and small teams who already run deals in Propstack—or who are building internal tools on top of it—can ask the agent to search contacts, work with listings, move deals forward, and handle viewing logistics instead of copying IDs into the browser. The server ships as an npm stdio transport package and requires a Propstack API key from the admin API keys screen. It is a narrow, high-fit integration: valuable if Propstack is your system of record, not a general-purpose CRM replacement. Treat it as agent-side CRM automation during Build, then lean on your normal Grow workflows for closing and follow-up in the CRM UI.
- Search and manage Propstack contacts from MCP tools
- Property lookup and deal tracking in CRM workflows
- Schedule and coordinate property viewings via API
- Stdio npm package propstack-mcp-server v1.0.1
- Authenticated with PROPSTACK_API_KEY from Propstack admin
Propstack Mcp by the numbers
- Data as of Jul 9, 2026 (Skillselion catalog sync)
claude mcp add --env PROPSTACK_API_KEY=YOUR_PROPSTACK_API_KEY propstack-mcp-server -- npx -y propstack-mcp-serverAdd your badge
Show developers this MCP server is listed on Skillselion. Paste this into your README.
| repo stars | ★ 7 |
|---|---|
| Package | propstack-mcp-server |
| Transport | STDIO |
| Auth | Required |
| Last updated | July 1, 2026 |
| Repository | ashev87/propstack-mcp ↗ |
What it does
Let your coding agent search Propstack CRM contacts and properties, track deals, and schedule viewings without leaving the chat.
Who is it for?
agencies, proptech side projects, or developers who already pay for Propstack and want agent-driven CRM tasks.
Skip if: Skip if you're without a Propstack account, non–real-estate products, or teams that need a full offline CRM replacement inside the agent.
What you get
After you register the server and set PROPSTACK_API_KEY, the agent can perform Propstack CRM actions through typed tools while you stay in the IDE or chat.
- Agent-callable tools for Propstack contacts, properties, deals, and viewings
- Stdio MCP registration snippet with PROPSTACK_API_KEY
- Repeatable CRM queries without manual dashboard navigation
By the numbers
- Server version 1.0.1 on npm registry
- Transport: stdio
- One required secret env: PROPSTACK_API_KEY
README.md
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
- Bulk export — full data dumps for reporting, backup, or migration
Quick Start
1. Set your API key
export PROPSTACK_API_KEY=your_api_key_here
2a. Claude Desktop
Add to your Claude Desktop config (claude_desktop_config.json):
{
"mcpServers": {
"propstack": {
"command": "npx",
"args": ["-y", "propstack-mcp-server"],
"env": {
"PROPSTACK_API_KEY": "your_api_key_here"
}
}
}
}
2b. Claude Code (CLI)
Add to your project's .mcp.json:
{
"mcpServers": {
"propstack": {
"command": "npx",
"args": ["-y", "propstack-mcp-server"],
"env": {
"PROPSTACK_API_KEY": "your_api_key_here"
}
}
}
}
2c. ChatGPT
- Go to Settings > Connectors > Developer Mode
- Add a new MCP connector
- Set the command to
npx -y propstack-mcp-server - Add environment variable
PROPSTACK_API_KEY
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):
{
"mcpServers": {
"propstack": {
"command": "node",
"args": ["./dist/index.js"],
"cwd": "C:/Users/you/path/to/propstack_mcp",
"env": {
"PROPSTACK_API_KEY": "your_api_key_here"
}
}
}
}
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):
{
"mcpServers": {
"propstack": {
"command": "npx",
"args": ["-y", "propstack-mcp-server"],
"env": {
"PROPSTACK_API_KEY": "your_api_key_here"
}
}
}
}
2e. Run directly
npm install propstack-mcp-server
PROPSTACK_API_KEY=your_key npx propstack-mcp-server
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 (50)
Contacts (Kontakte)
| Tool | Description |
|---|---|
search_contacts |
Search and filter contacts by name, email, phone, status, tags, broker, GDPR status |
get_contact |
Get full details of a single contact with related data |
create_contact |
Create a new contact (auto-dedup by email) |
update_contact |
Update contact details, tags, GDPR status, broker assignment |
delete_contact |
Soft-delete a contact (30-day recycle bin) |
get_contact_sources |
List lead sources (ImmoScout24, Website, Empfehlung, etc.) |
search_contacts_by_phone |
Look up a contact by phone number (formatting-insensitive) |
Properties (Objekte)
| Tool | Description |
|---|---|
search_properties |
Search properties with 11 range filters, 17 sort fields |
get_property |
Get full property details including media and custom fields |
create_property |
Create a new property listing |
update_property |
Update price, status, description, broker assignment |
get_property_statuses |
List property statuses (Verfuegbar, Reserviert, Verkauft, etc.) |
Tasks (Aufgaben & Notizen)
| Tool | Description |
|---|---|
create_task |
Create a note, to-do, appointment, or cancellation (polymorphic) |
update_task |
Mark done, reschedule, update notes |
get_task |
Get task details with linked contacts, properties, projects |
Deals (Pipeline)
| Tool | Description |
|---|---|
search_deals |
Search deals by stage, pipeline, category, broker, feeling score |
create_deal |
Link a contact to a property at a pipeline stage |
update_deal |
Move deal through pipeline stages, update price/notes |
Search Profiles (Suchprofile)
| Tool | Description |
|---|---|
list_search_profiles |
List what buyers/renters are looking for |
create_search_profile |
Capture buyer criteria from natural language |
update_search_profile |
Adjust budget, cities, room count, features |
delete_search_profile |
Remove a search profile |
Projects (Projekte)
| Tool | Description |
|---|---|
list_projects |
List development projects with unit counts |
get_project |
Get project details with all units, media, documents |
Activities & Events (Aktivitaeten & Termine)
| Tool | Description |
|---|---|
search_activities |
Full activity timeline for a contact, property, or project |
list_events |
Calendar events — viewings, meetings, filtered by date/state |
Emails (E-Mails)
| Tool | Description |
|---|---|
send_email |
Send email using a Propstack template (snippet) |
update_email |
Mark read/archived, categorize, link to CRM records |
Documents (Dokumente)
| Tool | Description |
|---|---|
list_documents |
List files attached to a property, project, or contact |
upload_document |
Upload a document (base64 data URI) |
Relationships (Beziehungen)
| Tool | Description |
|---|---|
create_ownership |
Link a contact as property owner (Eigentuemer) |
create_partnership |
Link a contact as buyer, tenant, etc. (Kaeufer, Mieter) |
Lookups (Konfiguration)
| Tool | Description |
|---|---|
list_pipelines |
Get deal pipelines with stages (IDs, names, positions) |
get_pipeline |
Get a single pipeline with stage details |
list_tags |
List tags/groups (Merkmale) — filter contacts by group IDs |
create_tag |
Create a new tag for contacts, properties, or activities |
list_activity_types |
List note/todo/event templates for create_task |
list_contact_statuses |
List contact statuses for search/assign |
list_reservation_reasons |
List deal cancellation reasons |
list_custom_fields |
Discover custom field definitions (names, types, options) |
list_users |
List all brokers/agents with contact info |
list_teams |
List teams/departments with member assignments |
list_locations |
List geographic areas (Geolagen) for location matching |
Smart Composites (Intelligente Workflows)
| Tool | Description |
|---|---|
full_contact_360 |
Complete contact dossier — info, search profiles, deals, activity |
property_performance_report |
Days on market, inquiry count, pipeline breakdown, activity summary |
pipeline_summary |
Deals per stage, total values, stale deals needing attention |
smart_lead_intake |
Full lead workflow: dedup, create/update, log notes, deal, reminder |
match_contacts_to_property |
Find buyers whose search profiles match a property |
Admin (Verwaltung)
| Tool | Description |
|---|---|
list_webhooks |
List all configured webhook subscriptions |
create_webhook |
Subscribe to CRM events (CLIENT_CREATED, PROPERTY_UPDATED, etc.) |
delete_webhook |
Remove a webhook subscription |
export_data |
Bulk export an entire data table as JSON |
get_contact_favorites |
Get properties a contact has favorited |
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...
Development
git clone <repo-url>
cd propstack-mcp-server
npm install
npm run build # tsc → dist/
npm start # requires PROPSTACK_API_KEY
Project Structure
src/
index.ts # Server entry point (stdio transport)
propstack-client.ts # HTTP client with auth, retry, error handling
types/
propstack.ts # TypeScript interfaces for all API responses
tools/
helpers.ts # Shared formatting utilities
contacts.ts # 7 contact tools
properties.ts # 5 property tools
tasks.ts # 3 task tools (polymorphic: note/todo/event/cancel)
deals.ts # 3 deal pipeline tools
search-profiles.ts # 4 search profile tools
projects.ts # 2 project tools
activities.ts # 2 activity/event tools
emails.ts # 2 email tools
documents.ts # 2 document tools
relationships.ts # 2 relationship tools (ownership/partnership)
lookups.ts # 8 lookup/config tools
composites.ts # 5 smart composite tools
admin.ts # 5 admin tools (webhooks, export, favorites)
License
MIT
Recommended MCP Servers
How it compares
Propstack-specific MCP integration, not a generic CRM skill or marketplace workflow.
FAQ
Who is Propstack MCP for?
It is for developers and small teams using Propstack CRM who want Claude Code, Cursor, or similar agents to run contact, property, deal, and viewing operations via API.
When should I use Propstack MCP?
Use it during Build when you are automating Propstack-backed workflows, prototyping agent assistants for agents, or reducing manual CRM clicks while shipping integrations.
How do I add Propstack MCP to my agent?
Install the npm package propstack-mcp-server, configure stdio MCP in your client, and set the required secret PROPSTACK_API_KEY from crm.propstack.de/app/admin/api_keys.