FrankSpace Public MCP
Read-only search over live UK office & workspace listings on FrankSpace.
Should I use this
Quality & Safety
Findings (2)
- HIGH
- MEDIUMin submit_feedback
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": {
"frankspace-public": {
"url": "https://bqixfybgflusxwnvzjwu.supabase.co/functions/v1/mcp"
}
}
}Remote endpoints
https://bqixfybgflusxwnvzjwu.supabase.co/functions/v1/mcpstreamable-httpWhat it can do
Tool inventory
Tools (5)
🟢ai_search(query, client_hint)
Search FrankSpace workspaces with a plain-English query — the same AI parser that powers the app. Handles budgets, headcount, neighbourhoods, amenities, EPC ratings, and lease terms. Returns matching live UK listings.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"description": "Plain-English search query, e.g. 'small office for 6 people in Shoreditch under £3k'."
},
"client_hint": {
"description": "Name of the calling agent (e.g. 'claude', 'chatgpt', 'cursor') for analytics.",
"type": "string"
}
},
"required": [
"query"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢search_workspaces(location, size_band, max_price_pence, limit, client_hint)
Search live UK workspace listings on FrankSpace. Filter by location text (city, postcode, submarket), size band, and maximum monthly price (pence). For richer natural-language queries prefer `ai_search`.
Input Schema
{
"type": "object",
"properties": {
"location": {
"description": "Free-text location, e.g. 'Shoreditch' or 'EC2A'.",
"type": "string"
},
"size_band": {
"description": "small ≤500 sqft, medium 500-1500, large 1500-3000, xlarge >3000.",
"type": "string",
"enum": [
"small",
"medium",
"large",
"xlarge"
]
},
"max_price_pence": {
"description": "Max monthly price in pence.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"limit": {
"default": 10,
"type": "integer",
"minimum": 1,
"maximum": 50
},
"client_hint": {
"description": "Name of the calling agent (e.g. 'claude', 'chatgpt') for analytics.",
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_workspace(workspace_id, client_hint)
Fetch full public details for a single FrankSpace workspace by its ID (UUID).
Input Schema
{
"type": "object",
"properties": {
"workspace_id": {
"type": "string",
"description": "Workspace UUID."
},
"client_hint": {
"description": "Name of the calling agent (e.g. 'claude', 'chatgpt') for analytics.",
"type": "string"
}
},
"required": [
"workspace_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_frankspace_skill(client_hint)
Fetch the FrankSpace Agent Skill: how to query the listing inventory correctly, how to read the data (prices are pence, IDs are UUIDs), the commercial facts, and the limits of what this server can do. Read this once before your first search if you are unfamiliar with FrankSpace.
Input Schema
{
"type": "object",
"properties": {
"client_hint": {
"description": "Name of the calling agent (e.g. 'claude', 'chatgpt') for analytics.",
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴submit_feedback(message, kind, workspace_id, subject_url, client_hint)
Report something wrong or missing in FrankSpace's agent-facing surface: a listing whose details look stale or incorrect, a gap that made a search impossible, an unclear or contradictory statement in llms.txt / skill.md, or a tool that behaved unexpectedly. Feedback is reviewed by the FrankSpace team. Do NOT use this to contact a property owner, register interest in a workspace, ask a question, or pass on anything a user expects a reply to — nobody replies to this channel. Enquiries and viewings go through the listing page at https://frankspace.co.uk/office/<id>, by the user, on the site. Send one clear report rather than several; describe what you observed and what you expected.
Input Schema
{
"type": "object",
"properties": {
"message": {
"type": "string",
"minLength": 10,
"maxLength": 4000,
"description": "What is wrong, in plain English. Include what you observed and what you expected. Do not include personal data about the user."
},
"kind": {
"default": "other",
"description": "data_error: a listing's details are wrong or stale. missing_data: a field or filter you needed does not exist. docs_unclear: llms.txt / skill.md is unclear, contradictory or incomplete. tool_problem: a tool errored or returned something unusable.",
"type": "string",
"enum": [
"data_error",
"missing_data",
"docs_unclear",
"tool_problem",
"other"
]
},
"workspace_id": {
"description": "UUID of the workspace the report is about, when it concerns one listing.",
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"subject_url": {
"description": "The FrankSpace URL the report is about, if not a specific workspace.",
"type": "string",
"maxLength": 500
},
"client_hint": {
"description": "Name of the calling agent (e.g. 'claude', 'chatgpt') for analytics.",
"type": "string"
}
},
"required": [
"message"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Recommended Prompts
ai_searchai_searchget_workspaceget_workspaceai_searchget_workspaceCommunity
Evidence