Serveur MCP

UniAffitti Room Finder

com.uniaffitti.www/room-finder
Éducation Immobilier Public et accessible MCP 2026-07-28

Ce que fait ce MCP

Searches, ranks, compares, and manages student-room listings, favorites, rental requests, messages, and landlord contacts.

add_favorite
Save a room
Save an approved room to the authenticated user’s favorites.
Schéma d’entrée
{'type': 'object', 'required': ['room_id'], 'properties': {'room_id': {'type': 'integer', 'minimum': 1}}, 'additionalProperties': False}
compare_rooms
Compare rooms
Compare selected rooms side by side for price, distance, type, availability, features, and trust signals.
Lecture seule
Schéma d’entrée
{'type': 'object', 'required': ['room_ids'], 'properties': {'room_ids': {'type': 'array', 'items': {'type': 'integer', 'minimum': 1}, 'maxItems': 8, 'minItems': 2}, 'campus_id': {'type': 'integer', 'minimum': 1}}, 'additionalProperties': False}
create_listing
Create a listing
Create a UniAffitti listing draft for moderation. Listings intentionally keep university_id and campus_id NULL; location is stored independently from the university catalog.
Schéma d’entrée
{'type': 'object', 'required': ['title', 'description', 'address_full', 'city', 'country_code', 'latitude', 'longitude', 'property_floor', 'price_monthly', 'room_type'], 'properties': {'city': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'title': {'type': 'string', 'maxLength': 190, 'minLength': 1}, 'features': {'type': 'object', 'additionalProperties': True}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'room_type': {'enum': ['single', 'double', 'bed'], 'type': 'string'}, 'description': {'type': 'string', 'minLength': 1}, 'address_full': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'country_code': {'type': 'string', 'description': 'ISO 3166-1 alpha-2 country code.'}, 'price_monthly': {'type': 'number', 'minimum': 0}, 'property_type': {'enum': ['apartment', 'house', 'other'], 'type': 'string', 'default': 'apartment'}, 'available_from': {'type': 'string', 'description': 'YYYY-MM-DD.'}, 'deposit_amount': {'type': 'number', 'minimum': 0}, 'location_label': {'type': 'string', 'maxLength': 190}, 'price_currency': {'type': 'string', 'default': 'EUR'}, 'property_floor': {'type': 'integer', 'maximum': 20, 'minimum': -2}, 'min_stay_months': {'type': 'integer', 'minimum': 0}, 'occupancy_status': {'enum': ['available', 'reserved', 'rented', 'unavailable'], 'type': 'string', 'default': 'available'}}, 'additionalProperties': False}
create_rental_request
Send a rental request
Send a rental request for an approved available room using the authenticated UniAffitti account.
Schéma d’entrée
{'type': 'object', 'required': ['room_id'], 'properties': {'message': {'type': 'string', 'maxLength': 4000}, 'room_id': {'type': 'integer', 'minimum': 1}, 'start_date': {'type': 'string', 'description': 'YYYY-MM-DD.'}, 'duration_months': {'type': 'integer', 'maximum': 120, 'minimum': 1}}, 'additionalProperties': False}
get_account_links
Open UniAffitti account areas
Return deep links for account, listing creation, messages, requests, and favorites in the full UniAffitti web app.
Lecture seule
Schéma d’entrée
{'type': 'object', 'properties': {}, 'additionalProperties': False}
get_my_conversation_messages
Read one UniAffitti conversation
Load the recent messages for one authenticated UniAffitti conversation. This is a data-only tool intended to be called by the messages UI after the user selects a conversation.
Lecture seule
Schéma d’entrée
{'type': 'object', 'required': ['conversation_id'], 'properties': {'messages_limit': {'type': 'integer', 'default': 50, 'maximum': 100, 'minimum': 1}, 'conversation_id': {'type': 'string', 'description': 'Firebase conversation/thread id.'}}, 'additionalProperties': False}
get_my_profile
Get my profile
When the user asks to access or connect UniAffitti, call this tool. It starts the secure OAuth account connection when the user is not authenticated, then returns the profile without credentials or secrets.
Lecture seule
Schéma d’entrée
{'type': 'object', 'properties': {}, 'additionalProperties': False}
get_room_details
Get room details
Return public details for one approved room, including media, features, and limited landlord trust information.
Lecture seule
Schéma d’entrée
{'type': 'object', 'required': ['room_id'], 'properties': {'room_id': {'type': 'integer', 'minimum': 1}}, 'additionalProperties': False}
list_my_favorites
List my favorites
List the authenticated user’s saved available rooms.
Lecture seule
Schéma d’entrée
{'type': 'object', 'properties': {}, 'additionalProperties': False}
list_my_listings
List my listings
List the authenticated user’s own listings and moderation status.
Lecture seule
Schéma d’entrée
{'type': 'object', 'properties': {}, 'additionalProperties': False}
list_my_messages
Read my messages
Read the authenticated user’s UniAffitti conversations from the same chat used by the web app. Without a conversation_id return fast conversation summaries and last-message previews; with one load the complete recent messages for that conversation.
Lecture seule
Schéma d’entrée
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 12, 'maximum': 50, 'minimum': 1}, 'unread_only': {'type': 'boolean', 'default': False}, 'messages_limit': {'type': 'integer', 'default': 30, 'maximum': 100, 'minimum': 1}, 'conversation_id': {'type': 'string', 'description': 'Optional Firebase conversation/thread id.'}}, 'additionalProperties': False}
list_my_requests
List my rental requests
List rental requests sent or received by the authenticated user.
Lecture seule
Schéma d’entrée
{'type': 'object', 'properties': {'direction': {'enum': ['sent', 'received', 'all'], 'type': 'string', 'default': 'all'}}, 'additionalProperties': False}
list_search_metadata
List search metadata
List a paginated slice of the global university catalog, optional campuses, and feature filters for room search. The catalog is not limited to 500 records.
Lecture seule
Schéma d’entrée
{'type': 'object', 'properties': {'university_limit': {'type': 'integer', 'default': 50, 'maximum': 100, 'minimum': 1}, 'university_query': {'type': 'string', 'description': 'Filter universities by name, city, country, or alias.'}, 'university_offset': {'type': 'integer', 'default': 0, 'minimum': 0}, 'university_country_code': {'type': 'string', 'description': 'ISO 3166-1 alpha-2 country code.'}}, 'additionalProperties': False}
list_university_campuses
List university campuses
List active campuses for a selected university so the user can refine the room search.
Lecture seule
Schéma d’entrée
{'type': 'object', 'required': ['university_id'], 'properties': {'university_id': {'type': 'integer', 'minimum': 1}}, 'additionalProperties': False}
rank_room_matches
Rank room matches
Find rooms and score them against student preferences such as budget, campus distance, room type, and trust signals.
Lecture seule
Schéma d’entrée
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 8, 'maximum': 20, 'minimum': 1}, 'query': {'type': 'string'}, 'features': {'type': 'object', 'additionalProperties': True}, 'campus_id': {'type': 'integer', 'minimum': 1}, 'max_budget': {'type': 'number', 'minimum': 0}, 'available_from': {'type': 'string', 'description': 'YYYY-MM-DD.'}, 'max_distance_km': {'type': 'number', 'minimum': 0}, 'preferred_room_type': {'enum': ['single', 'double', 'bed'], 'type': 'string'}}, 'additionalProperties': False}
remove_favorite
Remove a saved room
Remove a room from the authenticated user’s favorites.
Destructif
Schéma d’entrée
{'type': 'object', 'required': ['room_id'], 'properties': {'room_id': {'type': 'integer', 'minimum': 1}}, 'additionalProperties': False}
search_cities
Search cities
Search cities in the complete active worldwide university catalog, with country and university counts for assisted room search.
Lecture seule
Schéma d’entrée
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 12, 'maximum': 50, 'minimum': 1}, 'query': {'type': 'string'}, 'offset': {'type': 'integer', 'default': 0, 'minimum': 0}, 'country_code': {'type': 'string'}}, 'additionalProperties': False}
search_rooms
Search rooms
Search approved and available student rooms by budget, type, university, optional campus, distance, and features.
Lecture seule
Schéma d’entrée
{'type': 'object', 'properties': {'city': {'type': 'string', 'description': 'Optional city filter selected from the assisted location search.'}, 'limit': {'type': 'integer', 'default': 8, 'maximum': 20, 'minimum': 1}, 'query': {'type': 'string', 'description': 'Free text search over title, description, university, location, and campus.'}, 'offset': {'type': 'integer', 'default': 0, 'minimum': 0}, 'features': {'type': 'object', 'additionalProperties': True}, 'order_by': {'enum': ['newest', 'price_asc', 'price_desc', 'distance_asc', 'distance_desc'], 'type': 'string', 'default': 'newest'}, 'campus_id': {'type': 'integer', 'minimum': 1}, 'max_price': {'type': 'number', 'minimum': 0}, 'min_price': {'type': 'number', 'minimum': 0}, 'room_type': {'enum': ['single', 'double', 'bed'], 'type': 'string'}, 'country_code': {'type': 'string', 'description': 'Optional ISO 3166-1 alpha-2 country filter.'}, 'university_id': {'type': 'integer', 'minimum': 1}, 'available_from': {'type': 'string', 'description': 'YYYY-MM-DD.'}, 'max_distance_km': {'type': 'number', 'minimum': 0}}, 'additionalProperties': False}
search_universities
Search universities
Search the complete active UniAffitti university catalog worldwide with pagination and total count.
Lecture seule
Schéma d’entrée
{'type': 'object', 'properties': {'city': {'type': 'string'}, 'limit': {'type': 'integer', 'default': 30, 'maximum': 100, 'minimum': 1}, 'query': {'type': 'string'}, 'offset': {'type': 'integer', 'default': 0, 'minimum': 0}, 'country_code': {'type': 'string'}}, 'additionalProperties': False}
send_room_message
Contact landlord
Send a first message to the landlord of an approved available room from the authenticated UniAffitti account. The conversation is stored in the same UniAffitti chat used by the web app.
Schéma d’entrée
{'type': 'object', 'required': ['room_id', 'message'], 'properties': {'message': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'room_id': {'type': 'integer', 'minimum': 1}}, 'additionalProperties': False}
update_rental_request_status
Update rental request status
Accept, review, reject, or cancel a UniAffitti rental request according to the authenticated user’s role.
Schéma d’entrée
{'type': 'object', 'required': ['request_id', 'status'], 'properties': {'status': {'enum': ['in_review', 'accepted', 'rejected', 'cancelled'], 'type': 'string'}, 'request_id': {'type': 'integer', 'minimum': 1}, 'available_from': {'type': 'string', 'description': 'YYYY-MM-DD; required when accepting.'}}, 'additionalProperties': False}
Ajouté
get_account_links
17 September 2026 12:38
Ajouté
create_listing
17 September 2026 12:38
Ajouté
list_my_listings
17 September 2026 12:38
Ajouté
update_rental_request_status
17 September 2026 12:38
Ajouté
create_rental_request
17 September 2026 12:38
Ajouté
list_my_requests
17 September 2026 12:38
Ajouté
remove_favorite
17 September 2026 12:38
Ajouté
add_favorite
17 September 2026 12:38
Ajouté
list_my_favorites
17 September 2026 12:38
Ajouté
get_my_conversation_messages
17 September 2026 12:38
Ajouté
send_room_message
17 September 2026 12:38
Ajouté
list_my_messages
17 September 2026 12:38
Ajouté
get_my_profile
17 September 2026 12:38
Ajouté
list_university_campuses
17 September 2026 12:38
Ajouté
search_cities
17 September 2026 12:38
Ajouté
search_universities
17 September 2026 12:38
Ajouté
list_search_metadata
17 September 2026 12:38
Ajouté
compare_rooms
17 September 2026 12:38
Ajouté
get_room_details
17 September 2026 12:38
Ajouté
rank_room_matches
17 September 2026 12:38
Ajouté
search_rooms
17 September 2026 12:38

Service Public France

io.github.OneNicolas/mcp-service-public

Searches and retrieves French public-service information, legal texts, administrative guidance, property transactions, local data…

MaCalculatriceEnLigne

io.github.tresor4k/macalc-mcp

Provides calculators for French and Belgian taxes, salaries, pensions, VAT, loans, health metrics, education scores, fitness, and…

Microburbs Australian Property Data

au.com.microburbs/property-data

Provides Australian property, suburb, valuation, sales, rental, zoning, school, risk, geospatial, and census statistics.

Superlógica Condomínios

io.github.mcp-dir/superlogica-mcp

Connects to a condominium ERP for billing, collections, agreements, expenses, bank movements, statements, files, communications, …

DFX Real Estate Intelligence

io.github.Capital-W-Holdings/us-property-parcel-real-estate-debt

Provides US commercial real estate, parcel, debt maturity, bank CRE exposure, private capital, investor, ownership, occupancy, an…

HiveLearn

io.github.williamechevarria/hivelearn-mcp

Creates and manages courses, lessons, quizzes, enrollments, learning tracks, events, certificates, resources, progress, and commu…

concordance

com.narrowhighway/concordance

Provides deterministic claim verification and audit receipts, along with Bible references, commentary, geography, indexed knowled…

RateAPI — live US mortgage, auto, HELOC, personal & deposit rates

dev.rateapi/mcp

Supplies live US lending and deposit rates, financing comparisons, affordability and amortization calculations, eligibility check…