MCP-Server

UniAffitti Room Finder

com.uniaffitti.www/room-finder
Bildung Immobilien Öffentlich und erreichbar MCP 2026-07-28

Was dieses MCP kann

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.
Eingabeschema
{'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.
Nur Lesen
Eingabeschema
{'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.
Eingabeschema
{'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.
Eingabeschema
{'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.
Nur Lesen
Eingabeschema
{'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.
Nur Lesen
Eingabeschema
{'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.
Nur Lesen
Eingabeschema
{'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.
Nur Lesen
Eingabeschema
{'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.
Nur Lesen
Eingabeschema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
list_my_listings
List my listings
List the authenticated user’s own listings and moderation status.
Nur Lesen
Eingabeschema
{'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.
Nur Lesen
Eingabeschema
{'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.
Nur Lesen
Eingabeschema
{'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.
Nur Lesen
Eingabeschema
{'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.
Nur Lesen
Eingabeschema
{'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.
Nur Lesen
Eingabeschema
{'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.
Destruktiv
Eingabeschema
{'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.
Nur Lesen
Eingabeschema
{'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.
Nur Lesen
Eingabeschema
{'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.
Nur Lesen
Eingabeschema
{'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.
Eingabeschema
{'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.
Eingabeschema
{'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}
Hinzugefügt
get_account_links
17. September 2026 12:38
Hinzugefügt
create_listing
17. September 2026 12:38
Hinzugefügt
list_my_listings
17. September 2026 12:38
Hinzugefügt
update_rental_request_status
17. September 2026 12:38
Hinzugefügt
create_rental_request
17. September 2026 12:38
Hinzugefügt
list_my_requests
17. September 2026 12:38
Hinzugefügt
remove_favorite
17. September 2026 12:38
Hinzugefügt
add_favorite
17. September 2026 12:38
Hinzugefügt
list_my_favorites
17. September 2026 12:38
Hinzugefügt
get_my_conversation_messages
17. September 2026 12:38
Hinzugefügt
send_room_message
17. September 2026 12:38
Hinzugefügt
list_my_messages
17. September 2026 12:38
Hinzugefügt
get_my_profile
17. September 2026 12:38
Hinzugefügt
list_university_campuses
17. September 2026 12:38
Hinzugefügt
search_cities
17. September 2026 12:38
Hinzugefügt
search_universities
17. September 2026 12:38
Hinzugefügt
list_search_metadata
17. September 2026 12:38
Hinzugefügt
compare_rooms
17. September 2026 12:38
Hinzugefügt
get_room_details
17. September 2026 12:38
Hinzugefügt
rank_room_matches
17. September 2026 12:38
Hinzugefügt
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…