Propstack MCP by usefulapi

io.usefulapiPublished by usefulapi.ioOfficial publisherv1.23.5Updated Nov 8, 2026

Read Propstack contacts, properties, projects, deals, tasks, events; create and update CRM records.

The publisher's own server: Ably MCP by usefulapi

VerifiedStreamable HTTPWeb executableProductivity & WorkflowBusiness & Commerce

Overview

Propstack MCP by usefulapi's hosted MCP server (propstack.usefulapi.io), published by usefulapi.io; no sign-in required; Streamable HTTP; 18 tools.

No AI overview yet: these facts come from the registry entry and the server itself.

Publisher
usefulapi.io
Endpoint
propstack.usefulapi.io
Last checked

Installation

In SourceWeft

  1. Open Propstack MCP by usefulapi in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.usefulapi%2Fpropstack/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "propstack-by-usefulapi": {
      "type": "http",
      "url": "https://propstack.usefulapi.io/mcp"
    }
  }
}

README

Propstack MCP by usefulapi

Use Propstack from Claude, Cursor, or any MCP client — contacts, properties, projects, deals and pipelines, activities, tasks, events and users, plus creating and updating contacts, tasks (notes, to-dos, appointments) and deals. Contact output is limited to business fields. Hosted, no local install: connect with your own Propstack credentials.

Live endpoint: https://propstack.usefulapi.io/mcp · Homepage: https://usefulapi.io/propstack

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://propstack.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http propstack https://propstack.usefulapi.io/mcp, then run /mcp to log in.
  • VS Code: Add to VS Code.
  • Cursor and other clients: add the URL as a remote MCP server:
json
{  "mcpServers": {    "propstack": {      "url": "https://propstack.usefulapi.io/mcp"    }  }}

Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your Propstack credentials.

Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/propstack/

Tools

ToolTypeWhat it does
propstack_list_contactsreadList or search contacts
propstack_get_contactreadGet contact
propstack_list_propertiesreadList or search properties
propstack_get_propertyreadGet property
propstack_list_projectsreadList projects
propstack_list_dealsreadList deals
propstack_list_deal_pipelinesreadList deal pipelines
propstack_list_activitiesreadList activities
propstack_get_taskreadGet task
propstack_list_eventsreadList calendar events
propstack_list_usersreadList users
propstack_get_reference_datareadGet reference data
propstack_create_contactwriteCreate contact
propstack_update_contactwriteUpdate contact
propstack_create_taskwriteCreate note, to-do or appointment
propstack_update_taskwriteUpdate task
propstack_create_dealwriteCreate deal
propstack_update_dealwriteUpdate deal
propstack_usage_statusmetaUsage status (free-tier meter)
propstack_request_featuremetaRequest a missing feature
propstack_upgrademetaUpgrade to Pro or Pro+
propstack_cancel_subscriptionmetaCancel the Pro subscription

read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.

Pricing

PlanPriceLimit
Free$050 tool calls / month
Pro (per API key)$9/mo or $90/yr (2 months free)Unlimited*

*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to [email protected].

Pro covers this server only. Subscribe with propstack_upgrade (it returns a Stripe Checkout link). Cancel any time with propstack_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running propstack_upgrade before then undoes the cancel. Or write to [email protected].

License

MIT © usefulapi. Not affiliated with or endorsed by Propstack.

Source: servers/propstack/README.md at commit 4046075

Tools

18

propstack_list_contacts

List or search contacts

List or search CRM contacts (Kontakte). Returns business fields only (name, company, email, phone numbers, status, source, tags, owner, dates), never birth data, identity or tax numbers, income or portal tokens. Search by free text (name, email, address, phone), exact email, exact phone number, or filter by status, source, tag, owner and dates. Archived contacts are excluded unless archived is set. GET /contacts.

Parametersperpageemailorderquerysort_bytag_idsarchivedbroker_idsource_idsstatus_idsphone_number+5 more

propstack_get_contact

Get contact

One contact by id with address, salutation, language, notes, GDPR status, owner, status, source, tags, sub-contacts and owned properties. Birth data, identity and tax numbers, income and the portal token are never returned. GET /contacts/{id}.

Parametersincludecontact_idrequiredcustom_fields

propstack_list_properties

List or search properties

List or search properties (Objekte / units): address, type, marketing type (buy/rent), rooms, areas, prices, status. Images and owners are not returned. Filter by free text, status, tag, project, marketing type, object type, price and area ranges. GET /units.

Parametersperpageorderquerycountryrs_typesort_bytag_idsarchivedprice_torooms_toprice_from+8 more

propstack_get_property

Get property

One property (Objekt) by id: address, type, rooms, areas, prices, status and the description, location and furnishing texts (clipped). No images or owner. GET /units/{id}.

Parametersproperty_idrequired

propstack_list_projects

List projects

List projects (Projekte: a project groups several property units): title, project id, status, address, owner. Not paged; at most 200 are returned. GET /projects.

Takes no parameters.

propstack_list_deals

List deals

List deals (a deal links a contact to a property and sits in a pipeline stage). Filter by pipeline, stage, category (qualified/unqualified/lost), contact, property, project or owner. Use propstack_list_deal_pipelines for stage ids. GET /client_properties.

Parametersperpageordersort_bycategorybroker_idcontact_idproject_idproperty_idcreated_aftercreated_beforedeal_stage_ids+3 more

propstack_list_deal_pipelines

List deal pipelines

List the deal pipelines with their stages (id, name, position, win chance). Use the stage ids to filter deals or to move a deal. GET /deal_pipelines.

Takes no parameters.

propstack_list_activities

List activities

List the activity timeline (notes, tasks, appointments, e-mails, SMS, letters, rejections, inquiries) with title, linked contacts and properties, state and dates. Message and note bodies are not returned. Filter by type, contact, property, project, owner, category or date. GET /activities.

Parametersperpageorderbroker_iditem_typecontact_idproject_idcategory_idproperty_idstarts_aftercreated_afterstarts_before+2 more

propstack_get_task

Get task

One task by id (a note, to-do or appointment): title, body text (clipped), type, linked contacts, properties and projects (id and name only), due date or start/end. GET /tasks/{id}.

Parameterstask_idrequired

propstack_list_events

List calendar events

List calendar appointments (Termine, e.g. viewings) in a time window, with title, place, start/end, state and the linked contact, property and project (id and name only). Paged: follow next_page. GET /events.

Parametersperpagestatebroker_idcontact_idproject_idproperty_idstarts_afterstarts_before

propstack_list_users

List users

List the users (staff, Nutzer) of the Propstack account: id, name, work email, position, phone, team. Use the ids as owner/broker filters. GET /brokers.

Takes no parameters.

propstack_get_reference_data

Get reference data

Look up the ids used by other tools: property_statuses, activity_types (note/task/appointment types, needed as note_type_id), contact_sources, reservation_reasons (rejection reasons), contact_tags or property_tags. GET /property_statuses, /activity_types, /contact_sources, /reservation_reasons or /groups.

Parameterskindrequired

propstack_create_contact

Create contact

WRITE: create a CRM contact. Propstack matches on the email address: if a contact with the same email already exists it is UPDATED with the given fields instead of creating a duplicate. Consent flags (newsletter, contact permission, GDPR status) cannot be set here. Returns the contact id. POST /contacts.

Parametersemailcompanylanguagepositionbroker_idhome_celllast_namefirst_namehome_phoneis_companysalutationdescription+6 more

propstack_update_contact

Update contact

WRITE: change the given fields of an existing contact; fields not given stay as they are. Returns the updated contact (business fields). PUT /contacts/{id}.

Parametersemailcompanylanguagepositionbroker_idhome_celllast_namecontact_idrequiredfirst_namehome_phoneis_companysalutation+7 more

propstack_create_task

Create note, to-do or appointment

WRITE: create a note, a to-do (with due date) or an appointment (with start and end) in Propstack, linked to contacts, properties or projects. note_type_id is the activity type id (see propstack_get_reference_data activity_types). No e-mail or SMS is sent to the contact; the only mail is the reminder to the assignee when remind_at is set. Returns the new task id. POST /tasks.

Parametersbodykindrequiredtitlerequiredends_atdue_datelocationbroker_idremind_atstarts_atcontact_idsproject_idsnote_type_idrequired+1 more

propstack_update_task

Update task

WRITE: change the given fields of an existing note, to-do or appointment (for example mark a to-do done, move its due date, or reschedule). Fields not given stay as they are. PUT /tasks/{id}.

Parametersbodydonetitleends_attask_idrequireddue_datelocationbroker_idremind_atstarts_at

propstack_create_deal

Create deal

WRITE: create a deal linking a contact to a property in a pipeline stage (see propstack_list_deal_pipelines for stage ids). Returns the new deal. POST /client_properties.

Parametersnotepricebroker_idcontact_idrequiredproperty_idrequireddeal_stage_idrequired

propstack_update_deal

Update deal

WRITE: change the given fields of a deal, typically move it to another pipeline stage or update its note or price. Fields not given stay as they are. PUT /client_properties/{id}.

Parametersnotepricedeal_idrequiredbroker_iddeal_stage_id

Version history

20
  1. v1.23.5LatestNov 8, 2026
  2. v1.23.4Nov 7, 2026
  3. v1.22.3Nov 5, 2026
  4. v1.22.2Nov 5, 2026
  5. v1.22.1Nov 4, 2026
  6. v1.22.0Nov 3, 2026
  7. v1.21.1Nov 3, 2026
  8. v1.20.0Nov 1, 2026
  9. v1.18.0Oct 31, 2026
  10. v1.17.0Oct 31, 2026
  11. v1.16.2Oct 30, 2026
  12. v1.16.0Oct 30, 2026
  13. v1.11.0Oct 26, 2026
  14. v1.8.3Oct 25, 2026
  15. v1.8.0Oct 25, 2026
  16. v1.7.0Oct 24, 2026
  17. v1.4.0Oct 23, 2026
  18. v1.3.4Oct 22, 2026
  19. v1.3.3Oct 21, 2026
  20. v1.0.0Oct 12, 2026

Score

100% 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 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Usefulapi integrations