Taco Street Locating MCP
An MCP server that enables AI agents to search for apartments in Austin, Dallas, Houston, and San Antonio, retrieve detailed building information, create shareable shortlists, and connect renters with human locators for tour bookings and specialized research assistance.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://ai.tacostreetlocating.com/mcpWhat its tools do
9 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Passed Official MCP Registry namespace is tied to ai.tacostreetlocating.com ·
- Passed Endpoint is on the registry namespace domain ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Search for apartments by budget, location, and amenities
- Retrieve detailed pricing and floorplan information for specific buildings
- Create and share a shortlist of finalist apartments with renters
- Request assistance from a human locator for real-time availability and specials
Source and maintenance
Protocol and capabilities
- Server
- taco-street-locating 1.5.0
- MCP protocol negotiated in check
- 2025-06-18
- Tools
- 9 advertised
- Resources
- 0 advertised
- Resource templates
- 0 advertised
- Prompts
- 0 advertised
{
"tools": {
"listChanged": false
},
"prompts": {
"listChanged": false
},
"resources": {
"listChanged": false
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
9 advertised
search_apartments — Search apartments
Search Taco Street's curated apartment inventory in Austin, Dallas, Houston or San Antonio, TX. Returns scored matches with starting prices and a short 'why' per building. Use for long-term rentals only.
{
"type": "object",
"required": [
"city"
],
"properties": {
"city": {
"enum": [
"Austin",
"Dallas",
"Houston",
"San Antonio"
],
"type": "string",
"description": "Metro to search."
},
"limit": {
"type": "integer",
"default": 5,
"maximum": 10,
"minimum": 1,
"description": "How many scored matches to return (1-10)."
},
"query": {
"type": "string",
"description": "What the renter wants, in plain language (e.g. 'walkable, dog-friendly, near downtown')."
},
"bedrooms": {
"enum": [
"studio",
"1BR",
"2BR",
"3BR",
"4BR"
],
"type": "string",
"description": "Bedroom count the renter needs."
},
"budget_max": {
"type": "integer",
"description": "Max monthly rent in USD."
},
"neighborhoods": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 8,
"description": "Preferred neighborhoods, if the renter named any."
}
}
}{
"type": "object",
"required": [
"city",
"count",
"apartments"
],
"properties": {
"city": {
"type": "string"
},
"note": {
"type": "string"
},
"count": {
"type": "integer"
},
"apartments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"city": {
"type": "string"
},
"name": {
"type": "string"
},
"website": {
"type": "string"
},
"whyChosen": {
"type": "string"
},
"matchScore": {
"type": "number"
},
"neighborhood": {
"type": "string"
},
"pricing_as_of": {
"type": "string"
},
"estimated_price": {
"type": [
"string",
"number"
]
},
"is_pet_friendly": {
"type": "boolean"
},
"starting_prices": {
"type": "object",
"additionalProperties": {
"type": "number"
}
},
"specials_last_known": {
"type": "string"
}
},
"additionalProperties": true
}
}
},
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}request_locator_help — Request a free human locator
Hand the renter to Alexander, Taco Street's human locator, who confirms live pricing/availability and books tours — free to renters (properties pay locators). Follow-up arrives by TEXT or EMAIL, never a cold call. Requires the renter's real phone or email, shared with their consent. One request per renter — duplicates within 24h return the existing lead.
{
"type": "object",
"required": [
"contact"
],
"properties": {
"city": {
"type": "string",
"description": "Metro the renter is searching (Austin, Dallas, Houston or San Antonio)."
},
"name": {
"type": "string",
"description": "The renter's name, if shared."
},
"note": {
"type": "string",
"description": "Anything the locator should know."
},
"agent": {
"type": "string",
"description": "Name of the referring assistant/product."
},
"contact": {
"type": "string",
"description": "The renter's phone number or email (with their consent)."
},
"move_in": {
"type": "string",
"description": "Move-in timeline, e.g. 'November'."
},
"bedrooms": {
"type": "string",
"description": "Bedroom count the renter needs, e.g. 1BR."
},
"budget_max": {
"type": "integer",
"description": "The renter's max monthly rent in USD."
},
"neighborhoods": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 10,
"description": "Neighborhoods the renter prefers."
}
}
}{
"type": "object",
"required": [
"success",
"lead_id",
"message"
],
"properties": {
"lead_id": {
"type": "string"
},
"message": {
"type": "string"
},
"success": {
"type": "boolean"
},
"duplicate": {
"type": "boolean"
}
},
"additionalProperties": true
}{
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_apartment_details — Get apartment details
Full fact sheet for one building: floorplan-level pricing with as-of dates, move-in costs (admin/application/parking/pet fees), last-known specials (dated — treat as last-known, not current), amenities, walkability, virtual tour. Use the EXACT name from search_apartments. Compute totals yourself from components; a free human locator confirms live numbers.
{
"type": "object",
"required": [
"name"
],
"properties": {
"city": {
"enum": [
"Austin",
"Dallas",
"Houston",
"San Antonio"
],
"type": "string",
"description": "Metro, to disambiguate same-named buildings."
},
"name": {
"type": "string",
"description": "Exact building name from search_apartments."
}
}
}{
"type": "object",
"required": [
"name",
"city",
"pricing",
"guidance"
],
"properties": {
"city": {
"type": "string"
},
"name": {
"type": "string"
},
"pets": {
"type": "string"
},
"address": {
"type": "string"
},
"pricing": {
"type": "object",
"additionalProperties": true
},
"building": {
"type": "object",
"additionalProperties": true
},
"guidance": {
"type": "string"
},
"specials": {
"type": "object",
"additionalProperties": true
},
"neighborhood": {
"type": "string"
},
"move_in_costs": {
"type": "object",
"additionalProperties": true
},
"lifestyle_tags": {
"type": "array",
"items": {
"type": "string"
}
},
"taco_street_take": {
"type": "string"
}
},
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}create_shortlist — Create a shareable shortlist
Turn finalist apartments into a Taco Street link (/my-list?s=...) that opens the renter's saved list with those buildings added — compare, AI Read, and free tour requests live there. Use the EXACT names returned by search_apartments.
{
"type": "object",
"required": [
"apartment_names"
],
"properties": {
"city": {
"enum": [
"Austin",
"Dallas",
"Houston",
"San Antonio"
],
"type": "string",
"description": "Metro, to disambiguate same-named buildings."
},
"agent": {
"type": "string",
"description": "Name of the referring assistant/product."
},
"apartment_names": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 10,
"minItems": 1,
"description": "Exact building names from search_apartments to save to the renter's list."
}
}
}{
"type": "object",
"required": [
"url",
"apartments"
],
"properties": {
"url": {
"type": "string"
},
"note": {
"type": "string"
},
"unmatched": {
"type": "array",
"items": {
"type": "string"
}
},
"apartments": {
"type": "array",
"items": {
"type": "string"
}
}
},
"additionalProperties": true
}{
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}ask_a_locator — Ask a human locator
Ask a question only a human can answer — current specials, real availability, lease flexibility, 'is the pool actually open'. A human locator replies during Central Time business hours, usually within a few hours. STRONGLY include the renter's contact with consent so the locator can follow up directly (agent sessions end; polling alone can strand an answer). Returns a question_id for check_answer as a bonus channel. Rate limited; batch related questions into one. Answers are point-in-time facts.
{
"type": "object",
"required": [
"question"
],
"properties": {
"city": {
"type": "string",
"description": "Metro the question concerns."
},
"agent": {
"type": "string",
"description": "Name of the referring assistant/product."
},
"contact": {
"type": "string",
"description": "The renter's phone/email, supplied with their consent. Strongly recommended; otherwise immediately share contact_capture_url returned by this tool."
},
"question": {
"type": "string",
"maxLength": 1000,
"minLength": 10,
"description": "The question for the human locator — specifics beat generalities."
},
"apartments": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 5,
"description": "Buildings the question is about."
}
}
}{
"type": "object",
"required": [
"question_id",
"status"
],
"properties": {
"status": {
"type": "string"
},
"guidance": {
"type": "string"
},
"next_step": {
"type": "string"
},
"question_id": {
"type": "string"
},
"contact_status": {
"enum": [
"contactable",
"anonymous"
],
"type": "string"
},
"contact_capture_url": {
"type": "string"
}
},
"additionalProperties": true
}{
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}check_answer — Check for a locator's answer
Poll the answer to an ask_a_locator question by question_id.
{
"type": "object",
"required": [
"question_id"
],
"properties": {
"question_id": {
"type": "string",
"description": "The id returned by ask_a_locator."
}
}
}{
"type": "object",
"required": [
"question_id",
"status"
],
"properties": {
"note": {
"type": "string"
},
"answer": {
"type": [
"string",
"null"
]
},
"status": {
"enum": [
"open",
"answered"
],
"type": "string"
},
"guidance": {
"type": "string"
},
"question": {
"type": "string"
},
"answered_at": {
"type": [
"string",
"null"
]
},
"question_id": {
"type": "string"
},
"contact_note": {
"type": "string"
},
"contact_capture_url": {
"type": "string"
}
},
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}request_apartment_research — Request an apartment research report
Submit a saved shortlist and renter brief to Taco Street with consent. Staff accepts the request before paid research starts; VAs verify gaps, then Alexander adds his judgment. Returns a private continuation link. No immediate report, guaranteed completion time, or tour booking. No email is sent by this tool.
{
"type": "object",
"title": "ResearchRequest",
"required": [
"request_key",
"shortlist_token",
"city",
"client_name",
"contact",
"consent",
"bedrooms",
"budget_max",
"move_in"
],
"properties": {
"city": {
"type": "string",
"title": "City",
"maxLength": 40,
"minLength": 1,
"description": "Supported search market for this shortlist."
},
"agent": {
"type": "string",
"title": "Agent",
"default": "",
"maxLength": 120,
"description": "Self-reported referring assistant or product; not a verified partner identity."
},
"notes": {
"type": "string",
"title": "Notes",
"default": "",
"maxLength": 2000,
"description": "Renter requirements and questions, not assistant-generated promises."
},
"consent": {
"type": "boolean",
"title": "Consent",
"description": "True only after the renter agrees to share this brief and contact for research and follow-up."
},
"contact": {
"type": "string",
"title": "Contact",
"maxLength": 254,
"minLength": 5,
"description": "Renter's email or phone shared with consent for research follow-up."
},
"move_in": {
"type": "string",
"title": "Move In",
"pattern": "^\\d{4}-\\d{2}(?:-\\d{2})?$",
"description": "Move-in month YYYY-MM or exact date YYYY-MM-DD. Never invent a day; confirm the year."
},
"bedrooms": {
"type": "integer",
"title": "Bedrooms",
"maximum": 4,
"minimum": 0,
"description": "Bedroom count, 0 for a studio, 1–4 otherwise."
},
"budget_max": {
"type": "number",
"title": "Budget Max",
"maximum": 100000,
"description": "Monthly USD budget; specify its basis and flexibility separately.",
"exclusiveMinimum": 0
},
"client_name": {
"type": "string",
"title": "Client Name",
"maxLength": 100,
"minLength": 1,
"description": "Renter's name shared with consent."
},
"request_key": {
"type": "string",
"title": "Request Key",
"pattern": "^[A-Za-z0-9_-]+$",
"maxLength": 128,
"minLength": 43,
"description": "Generate a fresh cryptographically random URL-safe key (at least 32 random bytes, 43 encoded characters). Keep it private. Reuse it only to retry this identical request and retrieve its status; a different brief needs a new key."
},
"budget_basis": {
"enum": [
"base_rent",
"total_monthly",
"unknown"
],
"type": "string",
"title": "Budget Basis",
"default": "unknown",
"description": "base_rent, total_monthly, or unknown when the renter has not specified."
},
"shortlist_token": {
"type": "string",
"title": "Shortlist Token",
"maxLength": 128,
"minLength": 8,
"description": "The s parameter from the create_shortlist URL."
},
"lease_term_months": {
"anyOf": [
{
"type": "integer",
"maximum": 36,
"minimum": 6
},
{
"type": "null"
}
],
"title": "Lease Term Months",
"default": null,
"description": "Requested lease length if known; omit when unknown."
},
"budget_flexibility": {
"enum": [
"hard_max",
"target"
],
"type": "string",
"title": "Budget Flexibility",
"default": "target",
"description": "Defaults to target. Use hard_max only for an explicitly strict ceiling."
},
"move_in_flexibility": {
"enum": [
"fixed",
"flexible"
],
"type": "string",
"title": "Move In Flexibility",
"default": "flexible",
"description": "Whether the move-in date is fixed or flexible."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"request_id",
"status",
"guidance"
],
"properties": {
"report": {
"type": "object"
},
"status": {
"type": "string"
},
"criteria": {
"type": "object"
},
"guidance": {
"type": "string"
},
"duplicate": {
"type": "boolean"
},
"apartments": {
"type": "array",
"items": {
"type": "string"
}
},
"request_id": {
"type": "string"
},
"continuation_url": {
"type": "string"
}
},
"additionalProperties": true
}{
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_research_request — Continue apartment research
Use the private request key to retrieve progress and, after Alexander approves, the reviewed report snapshot. No draft, contact details or internal notes are returned. Do not share the key or continuation link publicly.
{
"type": "object",
"required": [
"request_id",
"request_key"
],
"properties": {
"request_id": {
"type": "string",
"description": "ID returned by request_apartment_research."
},
"request_key": {
"type": "string",
"maxLength": 128,
"minLength": 43,
"description": "The original private request key."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"request_id",
"status",
"guidance"
],
"properties": {
"report": {
"type": "object"
},
"status": {
"type": "string"
},
"criteria": {
"type": "object"
},
"guidance": {
"type": "string"
},
"duplicate": {
"type": "boolean"
},
"apartments": {
"type": "array",
"items": {
"type": "string"
}
},
"request_id": {
"type": "string"
},
"continuation_url": {
"type": "string"
}
},
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}request_research_tours — Request tours from your reviewed research
After report approval and explicit renter consent, request human tour coordination for selected apartments. Include preferred dates, times and timezone in preferred_times. Uses the existing private research key and contact. One handoff per research report; identical retries return the existing request, changed preferences require staff follow-up. No appointment is booked or message sent.
{
"type": "object",
"title": "ResearchTourRequest",
"required": [
"request_id",
"request_key",
"apartment_names",
"preferred_times",
"consent"
],
"properties": {
"consent": {
"type": "boolean",
"title": "Consent",
"description": "True only after the renter explicitly agrees to tour coordination using their saved contact."
},
"request_id": {
"type": "string",
"title": "Request Id",
"maxLength": 100,
"minLength": 1,
"description": "ID of the approved research request."
},
"request_key": {
"type": "string",
"title": "Request Key",
"pattern": "^[A-Za-z0-9_-]+$",
"maxLength": 128,
"minLength": 43,
"description": "Original private research access key. Never share publicly."
},
"apartment_names": {
"type": "array",
"items": {
"type": "string"
},
"title": "Apartment Names",
"maxItems": 10,
"minItems": 1,
"description": "Exact apartment names from this report to discuss touring."
},
"preferred_times": {
"type": "string",
"title": "Preferred Times",
"maxLength": 1000,
"minLength": 1,
"description": "Renter-provided preferred dates, times and timezone; preferences are not confirmed appointments."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"request_id",
"status",
"guidance"
],
"properties": {
"report": {
"type": "object"
},
"status": {
"type": "string"
},
"criteria": {
"type": "object"
},
"guidance": {
"type": "string"
},
"duplicate": {
"type": "boolean"
},
"apartments": {
"type": "array",
"items": {
"type": "string"
}
},
"request_id": {
"type": "string"
},
"continuation_url": {
"type": "string"
}
},
"additionalProperties": true
}{
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Prompts
0 advertised
Resources
0 advertised
90-day uptime
A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.
- 2026-11-06: 1 of 1 checks answered
- 2026-11-07: 2 of 2 checks answered
- 2026-11-09: 1 of 1 checks answered
- 2026-11-10: 1 of 1 checks answered
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 800 ms
- 95th percentile latency
- 800 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 800 ms · metadata changed · 9 tool(s), 0 resource(s), 0 resource template(s), 0 prompt(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http taco-street-locating-mcp https://ai.tacostreetlocating.com/mcpCodex
codex mcp add taco-street-locating-mcp --url https://ai.tacostreetlocating.com/mcpCursor
{
"mcpServers": {
"taco-street-locating-mcp": {
"url": "https://ai.tacostreetlocating.com/mcp"
}
}
}Cline
{
"mcpServers": {
"taco-street-locating-mcp": {
"type": "streamableHttp",
"url": "https://ai.tacostreetlocating.com/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"taco-street-locating-mcp": {
"type": "http",
"url": "https://ai.tacostreetlocating.com/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http taco-street-locating-mcp https://ai.tacostreetlocating.com/mcpClaude Desktop
https://ai.tacostreetlocating.com/mcpWindsurf
{
"mcpServers": {
"taco-street-locating-mcp": {
"serverUrl": "https://ai.tacostreetlocating.com/mcp"
}
}
}Let your agent find its tools
Find servers like Taco Street Locating MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other crm, sales, and marketing servers
Do you run Taco Street Locating MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.