Fixatia

Search distressed auction properties for investors

For Developers

MCP Server Integration

Connect Claude and other AI assistants to Fixatia's property database using the Model Context Protocol

What is MCP?

The Model Context Protocol (MCP) is an open standard that allows AI assistants like Claude to securely access external data sources. Fixatia's MCP server provides real-time access to our European property auction database, enabling AI assistants to search properties, retrieve details, and discover available filters.

Search thousands of auction properties across 6 European countries with advanced filters

Get comprehensive property details including renovation estimates, ROI calculations, and multilingual descriptions

Discover available filter options dynamically to build powerful search queries

Learn more about MCP

Quick Start

1Server URL

The Fixatia MCP server is available at:

https://mcp.fixatia.com/api/mcp

2Configure Claude Desktop

Add the following to your Claude Desktop configuration file:

Windows: %APPDATA%\Claude\claude_desktop_config.json

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "fixatia": {
      "url": "https://mcp.fixatia.com/api/mcp"
    }
  }
}

3Start Using

Restart Claude Desktop and start asking about properties. Claude will automatically use the Fixatia tools to search and retrieve property information.

Try asking: "Find me properties in Portugal under €150,000 with at least 20% ROI potential"

Available Tools

The Fixatia MCP server provides four powerful tools for interacting with our property database:

search_properties

Search for real estate auction properties across Europe. Filter by country, city, price, property type, ROI potential, and more. Returns a list of matching properties with key details including auction prices, market values, and investment metrics.

Parameters

ParameterTypeRequiredDescription
querystringOptionalText search for property title, city, or region
countrystringOptionalCountry code: es (Spain), pt (Portugal), it (Italy), fr (France), de (Germany), hr (Croatia)
regionstringOptionalRegion name within the country
citystringOptionalCity name
propertyTypestringOptionalType of property: APARTMENT, HOUSE, VILLA, LAND, or COMMERCIAL
minPricenumberOptionalMinimum auction price in EUR
maxPricenumberOptionalMaximum auction price in EUR
minRoinumberOptionalMinimum ROI percentage (e.g., 20 for 20%)
bedroomsnumberOptionalMinimum number of bedrooms
maxResultsnumberOptionalMaximum number of results to return (default: 10, max: 50)
sortBystringOptionalSort order: newest, price-low, price-high, roi-high, or auction-soonest
localestringOptionalLanguage for titles/descriptions (default: en). Supports 18 languages.

Example Request

{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "search_properties",
    "arguments": {
      "country": "pt",
      "maxPrice": 150000,
      "minRoi": 20,
      "maxResults": 5
    }
  },
  "id": 1
}

Example Response

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [{
      "type": "text",
      "text": {
        "totalCount": 12,
        "results": [
          {
            "id": "b45dc4fc14134da69e9f800f8",
            "title": "2-Bedroom Apartment · Lisbon",
            "country": "pt",
            "city": "Lisboa",
            "propertyType": "APARTMENT",
            "auctionPrice": 120000,
            "marketValue": 165000,
            "potentialRoi": 26.5,
            "bedrooms": 2,
            "squareMeters": 75
          }
        ]
      }
    }]
  }
}

get_property

Get full details of a specific property by its ID. Returns comprehensive information including multilingual descriptions, images, location coordinates, renovation estimates, auction details, and investment metrics.

Parameters

ParameterTypeRequiredDescription
idstringRequiredThe property ID (obtained from search results)
localestringOptionalLanguage for title/description (default: en). Supports 18 languages.
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "get_property",
    "arguments": {
      "id": "b45dc4fc14134da69e9f800f8",
      "locale": "en"
    }
  },
  "id": 2
}

get_filter_options

Get available filter options including list of countries, regions, cities, property types, and price/ROI ranges. Useful for understanding what search parameters are available and building dynamic filter interfaces.

This tool takes no parameters.

{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "get_filter_options",
    "arguments": {}
  },
  "id": 3
}
{
  "countries": [
    { "code": "pt", "name": "Portugal", "propertyCount": 45 },
    { "code": "es", "name": "Spain", "propertyCount": 120 },
    { "code": "it", "name": "Italy", "propertyCount": 89 }
  ],
  "propertyTypes": [
    { "type": "APARTMENT", "count": 156 },
    { "type": "HOUSE", "count": 78 }
  ],
  "priceRange": { "min": 5000, "max": 800000 },
  "roiRange": { "min": -5, "max": 45 }
}

send_property_inquiry

OAuth 2.1

Send an inquiry about a property to express interest. This tool requires OAuth 2.1 authentication with PKCE.

Authentication Required (OAuth 2.1)

This tool uses OAuth 2.1 with PKCE for secure authentication. The flow is:

  • User clicks 'Authorize' and logs in via browser popup
  • Authorization code is exchanged for access token (PKCE-protected)
  • mcp.tools.sendPropertyInquiry.oauthStep3

Parameters

ParameterTypeRequiredDescription
propertyIdstringRequiredThe property ID to inquire about
messagestringRequiredYour inquiry message, minimum 10 characters
// Requires Bearer token authentication
// curl -X POST https://mcp.fixatia.com/api/mcp \
//   -H "Authorization: Bearer YOUR_TOKEN" \
//   -H "Content-Type: application/json" \
//   -d '...'

{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "send_property_inquiry",
    "arguments": {
      "propertyId": "b45dc4fc14134da69e9f800f8",
      "message": "I'm interested in this property. Is it still available?"
    }
  },
  "id": 4
}
{
  "jsonrpc": "2.0",
  "id": 4,
  "result": {
    "content": [{
      "type": "text",
      "text": "Inquiry sent successfully! The property owner will be notified and may contact you."
    }]
  }
}

HTTP API Reference

The MCP server also exposes a direct HTTP API for programmatic access. All requests use JSON-RPC 2.0 protocol.

Endpoints

GET

/api/mcp

Health check and server information. Returns server name, version, protocol version, and available tools.

POST

/api/mcp

JSON-RPC 2.0 requests for tool execution. Supports initialize, tools/list, tools/call, and ping methods.

Supported Methods

  • initialize - Initialize the MCP session and get server capabilities
  • tools/list - List all available tools with their schemas
  • tools/call - Execute a specific tool with arguments
  • ping - Health check ping

cURL Example

curl -X POST https://mcp.fixatia.com/api/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "tools/call",
    "params": {
      "name": "search_properties",
      "arguments": {
        "country": "pt",
        "maxPrice": 150000
      }
    },
    "id": 1
  }'

Try It Out

Test the MCP server directly from your browser. Select a tool and configure the parameters below.

Select a tool

search_propertiesget_propertyget_filter_optionssend_property_inquiry

Send Request

Error Handling

The server returns standard JSON-RPC 2.0 error responses. Here are the common error codes:

CodeMessageDescription
-32600Invalid RequestThe JSON sent is not a valid Request object
-32601Method not foundThe requested method does not exist or is not available
-32602Invalid paramsInvalid method parameter(s) - check required fields and types
-32603Internal errorInternal JSON-RPC error or server-side issue

Example Error Response

{
  "jsonrpc": "2.0",
  "id": 1,
  "error": {
    "code": -32602,
    "message": "Invalid params: Property ID is required"
  }
}

Supported Languages

Property titles and descriptions are available in 18 languages. Use the locale parameter to get content in your preferred language:

English (en), German (de), French (fr), Spanish (es), Italian (it), Portuguese (pt), Dutch (nl), Polish (pl), Greek (el), Romanian (ro), Czech (cs), Hungarian (hu), Chinese (zh), Arabic (ar), Russian (ru), Japanese (ja), Korean (ko), Croatian (hr)

Machine-Readable Documentation

For AI assistants and automated tools, we provide plain-text documentation files following the llms.txt standard:

llms.txt

Concise documentation with server URL, configuration, and tool summaries

llms-full.txt

Complete documentation including all parameters, example requests/responses, and error codes

Learn more about the llms.txt standard at llmstxt.org

Need Help?

If you have questions about integrating with the Fixatia MCP server or encounter any issues, our developer support team is here to help.

Contact Developer SupportReport an Issue on GitHub

Related Servers