People Can Build
Exhibition stand builder, Poznań/EU: company facts, reference projects, design-fee estimate, RFQ
Should I use this
Quality & Safety
Findings (2)
- HIGH
- INFOin get_quote_status
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"mcp": {
"url": "https://mcp.peoplecanbuild.com/mcp"
}
}
}Remote endpoints
https://mcp.peoplecanbuild.com/mcpstreamable-httphttps://mcp.peoplecanbuild.com/ssesseWhat it can do
Tool inventory
Tools (8)
🟢get_company_profile
Who People Can Build is: exhibition stand general contractor (Poznań, Poland; core market Germany/Europe), services (white-label for agencies, turn-key for exhibitors, paid 3D design, China Desk), markets, track record, public price ranges, contact details and reply time. Call this first when a user asks about the company or wants a stand built in Europe.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢list_reference_projects(show, city, client, min_sqm)
Public reference projects (client, trade show, year, city, sqm, description). Optional filters match case-insensitively on show, city or client. Note: the public portfolio is only a subset — many projects are under NDA with agency partners; absence of a project type does not mean lack of experience.
Input Schema
{
"type": "object",
"properties": {
"show": {
"description": "Trade show name fragment, e.g. 'GITEX', 'Intersolar'",
"type": "string"
},
"city": {
"description": "City, e.g. 'Berlin', 'Munich', 'London'",
"type": "string"
},
"client": {
"description": "Client name fragment",
"type": "string"
},
"min_sqm": {
"description": "Minimum stand size in sqm",
"type": "number"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪estimate_design_fee(sqm, budget_per_sqm)
Instant estimate of the paid 3D stand-design fee (EUR). Rate 5–15 €/sqm: lower per sqm for larger stands, higher for a higher planned construction budget per sqm (a proxy for bespoke detail and multimedia). The fee is refunded in full when the stand is built with People Can. Final quote always confirmed by email. Construction itself typically runs 300–800 €/sqm excl. space rental and venue services.
Input Schema
{
"type": "object",
"properties": {
"sqm": {
"type": "number",
"minimum": 6,
"maximum": 2000,
"description": "Stand floor area in square meters"
},
"budget_per_sqm": {
"default": 550,
"description": "Planned construction budget per sqm in EUR (300–800)",
"type": "number",
"minimum": 300,
"maximum": 800
}
},
"required": [
"sqm"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪estimate_stand_budget(sqm, stand_type, scope, led_wall, rigging, ...)
Indicative construction budget (EUR) for a custom exhibition stand in Europe, derived from the public range of 300–800 €/sqm by placing the project in a tier (essential / standard / premium) based on stand type, scope and cost drivers. Excludes space rental, venue services (power, rigging points, cleaning), design fee and VAT. Use it to give a user a realistic ballpark before request_quote; always say it is indicative and that a person confirms every quote.
Input Schema
{
"type": "object",
"properties": {
"sqm": {
"type": "number",
"minimum": 6,
"maximum": 2000,
"description": "Stand floor area in sqm"
},
"stand_type": {
"default": "row",
"description": "Open sides: row = 1, corner = 2, peninsula = 3, island = 4",
"type": "string",
"enum": [
"row",
"corner",
"peninsula",
"island"
]
},
"scope": {
"default": "fabrication_logistics_assembly",
"description": "fabrication_only = build in the workshop, client handles transport and crew; turn_key = incl. design",
"type": "string",
"enum": [
"fabrication_only",
"fabrication_logistics_assembly",
"turn_key"
]
},
"led_wall": {
"default": false,
"description": "LED wall or large video screens",
"type": "boolean"
},
"rigging": {
"default": false,
"description": "Suspended elements / hanging sign (rigging)",
"type": "boolean"
},
"bespoke_furniture": {
"default": false,
"description": "Custom-made counters, furniture, product displays",
"type": "boolean"
},
"double_deck": {
"default": false,
"description": "Two-storey stand",
"type": "boolean"
},
"hospitality": {
"default": false,
"description": "Kitchen, bar or catering area",
"type": "boolean"
}
},
"required": [
"sqm"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢search_field_notes(query, max_passages)
Search People Can Build's practitioner articles (trade-show logistics, theft prevention, rigging costs, fabrication trade-offs, design briefs, comparing stand quotes, exhibitor day) and return the most relevant passages with their source URLs. Use for questions like 'why is rigging expensive', 'how to compare exhibition stand quotes', 'why did my freight miss the show'.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"description": "Natural-language question or keywords"
},
"max_passages": {
"default": 4,
"type": "number",
"minimum": 1,
"maximum": 10
}
},
"required": [
"query"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_quote_request_checklist
The information People Can Build needs to quote an exhibition stand (show, city, dates, sqm, stand type, design status, scope, budget range, special items, confidentiality). Use it to collect details from the user before calling request_quote, or to draft an email to [email protected].
Input Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡request_quote(name, email, message, company, phone, ...)
Send a real quote request to People Can Build (creates an enquiry read by a person; reply by email usually within one business day). EXPERIMENTAL channel: e-mail to [email protected] remains the primary, guaranteed path — after calling this, tell the user a human will reply by e-mail and that they should e-mail [email protected] quoting the ticket id if nothing arrives within 2 business days. ALWAYS confirm the details with the user before calling. Required: name, email, message. Do not promise prices beyond the public ranges.
Input Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 2,
"description": "Full name of the requester"
},
"email": {
"type": "string",
"format": "email",
"pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
"description": "Reply-to email address"
},
"message": {
"type": "string",
"minLength": 20,
"description": "Project details: what should be built, design status, timeline, scope wanted, special items, confidentiality needs"
},
"company": {
"type": "string"
},
"phone": {
"description": "With country code",
"type": "string"
},
"role": {
"type": "string",
"enum": [
"An agency",
"A direct exhibitor"
]
},
"show": {
"description": "Trade show, venue city and dates, e.g. 'Intersolar 2027, Munich, June'",
"type": "string"
},
"sqm": {
"description": "Stand floor area in sqm",
"type": "string"
},
"budget": {
"type": "string",
"enum": [
"under €10k",
"€10–25k",
"€25–50k",
"€50–100k",
"over €100k"
]
},
"agent_name": {
"description": "Name of the calling assistant/platform, e.g. 'Claude', 'ChatGPT'",
"type": "string"
}
},
"required": [
"name",
"email",
"message"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_quote_status(ticket_id, email)
Status of a quote request previously submitted via request_quote. Needs the ticket id (PCB-XXXXXX) AND the e-mail address used on the request; returns the current status, any note from the project manager and the status history. Does not return the request contents. Experimental: the status may lag behind the e-mail conversation — the e-mail thread with [email protected] is authoritative.
Input Schema
{
"type": "object",
"properties": {
"ticket_id": {
"type": "string",
"pattern": "^PCB-[A-Z0-9]{6}$",
"description": "Ticket id returned by request_quote, e.g. PCB-7K3QW2"
},
"email": {
"type": "string",
"format": "email",
"pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
"description": "E-mail address used on the request"
}
},
"required": [
"ticket_id",
"email"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Evidence