Skip to content

io.github.MCFLAMINGO/local-intel

by MCFLAMINGO · remote · no sign-in to list tools · v1.2.0 · published by GitHub user MCFLAMINGO

Hyperlocal business intelligence for AI agents. 20 MCP tools. Florida-first, Sunbelt expansion.

Changes · 23

27 tools: 23 change things and 4 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http local-intel https://gsb-swarm-production.up.railway.app/api/local-intel/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

27 tools

Changes things 23Claude Code: ask
  • local_intel_askComposite NL query layer.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Composite NL query layer. Ask any plain-English question about a ZIP — demographics, market opportunity, restaurant gaps, retail saturation, construction activity, investment signals, healthcare, corridor analysis, recent changes, nearby businesses. Routes internally to the right tools and returns a synthesized, sourced answer with confidence score. Best single entry point for humans and LLMs.

    Annotations the server declares

    • readOnly: true
  • local_intel_bedrockInfrastructure momentum score and active leading indicators for a ZIP from Layer 0.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Infrastructure momentum score and active leading indicators for a ZIP from Layer 0. Permits, road projects, flood zones, utility extensions. Predicts conditions 12-36 months ahead. 'Let Google pay for the satellites — we sell the weather forecast.'

    Annotations the server declares

    • readOnly: true
  • local_intel_bookBook a specific response to an RFQ — confirms the job with that business.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Book a specific response to an RFQ — confirms the job with that business. Use after reviewing local_intel_rfq_status responses.
  • local_intel_changesRecently added or owner-verified business listings.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Recently added or owner-verified business listings. Use to detect new openings or data updates.

    Annotations the server declares

    • readOnly: true
  • local_intel_completeMark a booked job as complete and settle payment to the local merchant wallet (Tempo pathUSD when SETTLEMENT_ENABLED=true; otherwise records settled_intent and feeds the forecast l…No findings

    Why it is in this group

    • The description's first verb is "mark": a word for a change.
    Description, as the server wrote it
    Mark a booked job as complete and settle payment to the local merchant wallet (Tempo pathUSD when SETTLEMENT_ENABLED=true; otherwise records settled_intent and feeds the forecast loop).
  • local_intel_constructionConstruction and home services market intelligence for a ZIP.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Construction and home services market intelligence for a ZIP. Ask about contractor density, active permits, housing starts, population growth driving demand. Returns structured data with confidence score. Trained on 100 construction business prompts.

    Annotations the server declares

    • readOnly: true
  • local_intel_contextFull spatial context block for any FL zip or lat/lon.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Full spatial context block for any FL zip or lat/lon. Returns anchor business, nearby businesses in distance rings, zone intelligence, and category breakdown. Best first call for any location query. Covers all 1,473 FL ZIPs via fl_zip_geo.

    Annotations the server declares

    • readOnly: true
  • local_intel_corridorBusinesses along a named street corridor.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Businesses along a named street corridor. Use for queries like "what is on A1A" or "businesses on Palm Valley Road".

    Annotations the server declares

    • readOnly: true
  • local_intel_decline_responseDecline a specific response to an RFQ and get the next in queue.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Decline a specific response to an RFQ and get the next in queue. Use when a client rejects the first responder — returns the next pending response automatically. First come first served queue.
  • local_intel_for_agentPREMIUM composite entry point ($0.05).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    PREMIUM composite entry point ($0.05). Declare your agent_type and intent, receive pre-ranked top-10 signals assembled from all 4 data layers, personalized for your use case. Includes delta since your last query if agent_id provided. Best first call for any new agent.

    Annotations the server declares

    • readOnly: true
  • local_intel_healthcareHealthcare market intelligence for a ZIP.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Healthcare market intelligence for a ZIP. Ask about provider density, patient demographics, demand gaps, senior population. Returns structured data with confidence score. Trained on 100 healthcare business prompts.

    Annotations the server declares

    • readOnly: true
  • local_intel_oraclePre-baked economic oracle for a ZIP.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Pre-baked economic oracle for a ZIP. Returns: restaurant saturation (is there room for another?), price-tier gap analysis (what menu price is missing?), growth trajectory (growing/empty-nest/stable), and 3 pre-formed questions with answers baked in. No LLM needed — answers derived from population, income, business density, school count, and infrastructure signals.

    Annotations the server declares

    • readOnly: true
  • local_intel_projectProject-type intelligence: pass a project_type (restaurant, clinic, banking, construction, real_estate, residential_development, fitness, legal, retail, auto, etc.) and get L1 ZIPs…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Project-type intelligence: pass a project_type (restaurant, clinic, banking, construction, real_estate, residential_development, fitness, legal, retail, auto, etc.) and get L1 ZIPs ranked by market or residential opportunity score plus L2 matching verified businesses already operating in that sector. Returns sector gap counts, HHI, population, growth state, and new-build %. Best tool for site selection and franchise expansion when you know the business type but not the ZIP.

    Annotations the server declares

    • readOnly: true
  • local_intel_querySTART HERE.No findings

    Why it is in this group

    • The name "local_intel_query" says "query": a word for reading.
    • The description's first verb is "start": a word for a change.
    Description, as the server wrote it
    START HERE. Natural language entry point for both market intelligence AND business routing. Ask about a market, find a business, or route a customer request. Auto-detects ZIP, industry vertical, and intent. For customer agents: "Find a restaurant in 32082 that serves lunch" or "Who can do landscaping in Ponte Vedra?" — returns the matching business so your agent can route the order to them. For market intel: "Is 32082 oversaturated with dentists?" ZIP is always required for routing — pass it explicitly or include it in the query.

    Annotations the server declares

    • readOnly: true
  • local_intel_realtorReal estate intelligence for a ZIP.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Real estate intelligence for a ZIP. Ask natural-language questions: demographics, commercial gaps, flood risk, school proximity, infrastructure signals, market saturation. Returns structured data with confidence score. Trained on 100 realtor use-case prompts.

    Annotations the server declares

    • readOnly: true
  • local_intel_restaurantRestaurant and food service market intelligence for a ZIP.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Restaurant and food service market intelligence for a ZIP. Ask about saturation scores, price-tier gaps, capture rates, corridor analysis, tidal momentum. Returns structured data with confidence score. Trained on 100 restaurant business prompts.

    Annotations the server declares

    • readOnly: true
  • local_intel_retailRetail market intelligence for a ZIP.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Retail market intelligence for a ZIP. Ask about store categories, spending capture rates, consumer profile, undersupplied niches. Returns structured data with confidence score. Trained on 100 retail business prompts.

    Annotations the server declares

    • readOnly: true
  • local_intel_rfqRoute a customer request to local businesses — food orders, delivery, services, or any job.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Route a customer request to local businesses — food orders, delivery, services, or any job. ALWAYS include the full order or ask in description (or items[]), plus business_id/business_name when ordering from a specific place. Never send a vague description like "Buy me." Use this when KDS/POS is off or for quote collection. Supports delivery (first-to-accept) and proposal (collect quotes) modes.
  • local_intel_sector_gapRanked sector gap analysis for a ZIP.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Ranked sector gap analysis for a ZIP. Identifies NAICS sectors present at county level (CBP/CES employment) but underrepresented at ZIP (OSM business counts) — the structural whitespace in a local economy. Returns ranked opportunities with: NAICS code, sector label, county employment share, demand estimate, confidence tier, and LLM-ready signal narrative. Reads live from Postgres zip_signals — always current. Example: "NAICS 62 Health Care: Jacksonville MSA 136k healthcare employees, ZIP 32082 has no OSM healthcare listings. 28,697 residents, $121k median HHI, retiree index 1.5x. Demand: 7–10 providers." Chain into vertical agents via oracle_vertical. Cost: $0.03 pathUSD.

    Annotations the server declares

    • readOnly: true
  • local_intel_signalInvestment and activity signal for a ZIP.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Investment and activity signal for a ZIP. Composite score 0-100 with band (strong_buy/accumulate/hold/reduce/avoid), top reasons, and avoid flags. Best for real estate and financial agents.

    Annotations the server declares

    • readOnly: true
  • local_intel_statsDataset coverage stats: total businesses, confidence scores, query volume, revenue earned.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Dataset coverage stats: total businesses, confidence scores, query volume, revenue earned.

    Annotations the server declares

    • readOnly: true
  • local_intel_tideTidal reading for a ZIP — temperature (0-100), direction (surging/heating/stable/cooling/receding), seasonal context.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Tidal reading for a ZIP — temperature (0-100), direction (surging/heating/stable/cooling/receding), seasonal context. Synthesizes all 4 data layers. Best for agents deciding WHERE to act next.

    Annotations the server declares

    • readOnly: true
  • local_intel_zoneSpending zone and demographic data for a ZIP code: population, income, home value, rent, ownership rate, zone score.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Spending zone and demographic data for a ZIP code: population, income, home value, rent, ownership rate, zone score. Pass zip or lat/lon.

    Annotations the server declares

    • readOnly: true
Only reads 4Claude Code: allow
  • local_intel_compareCompare up to 10 ZIP codes side-by-side and get a ranked opportunity table.No findings

    Why it is in this group

    • The name "local_intel_compare" says "compare": a word for reading.
    Description, as the server wrote it
    Compare up to 10 ZIP codes side-by-side and get a ranked opportunity table. Returns per-ZIP signals (HHI, capture rate, infra momentum, consumer profile, top gap) plus a top_pick recommendation with reasoning. Best tool for site selection, franchise expansion, investment screening, and market prioritization.

    Annotations the server declares

    • readOnly: true
  • local_intel_nearbyFind businesses within a radius of any lat/lon point, sorted by distance with compass bearing.No findings

    Why it is in this group

    • The description's first verb is "find": a word for reading.
    Description, as the server wrote it
    Find businesses within a radius of any lat/lon point, sorted by distance with compass bearing.

    Annotations the server declares

    • readOnly: true
  • local_intel_rfq_statusPoll the status of an RFQ.No findings

    Why it is in this group

    • The name "local_intel_rfq_status" says "status": a word for reading.
    Description, as the server wrote it
    Poll the status of an RFQ. Returns the original request, all responses received so far, and booking details if booked.

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.2.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http local-intel https://gsb-swarm-production.up.railway.app/api/local-intel/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__local-intel__local_intel_search",
      "mcp__local-intel__local_intel_nearby",
      "mcp__local-intel__local_intel_compare",
      "mcp__local-intel__local_intel_rfq_status"
    ],
    "ask": [
      "mcp__local-intel__local_intel_query",
      "mcp__local-intel__local_intel_context",
      "mcp__local-intel__local_intel_zone",
      "mcp__local-intel__local_intel_corridor",
      "mcp__local-intel__local_intel_changes",
      "mcp__local-intel__local_intel_stats",
      "mcp__local-intel__local_intel_tide",
      "mcp__local-intel__local_intel_signal",
      "mcp__local-intel__local_intel_bedrock",
      "mcp__local-intel__local_intel_for_agent",
      "mcp__local-intel__local_intel_oracle",
      "mcp__local-intel__local_intel_sector_gap",
      "mcp__local-intel__local_intel_realtor",
      "mcp__local-intel__local_intel_healthcare",
      "mcp__local-intel__local_intel_retail",
      "mcp__local-intel__local_intel_construction",
      "mcp__local-intel__local_intel_restaurant",
      "mcp__local-intel__local_intel_ask",
      "mcp__local-intel__local_intel_project",
      "mcp__local-intel__local_intel_rfq",
      "mcp__local-intel__local_intel_book",
      "mcp__local-intel__local_intel_decline_response",
      "mcp__local-intel__local_intel_complete"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as local-intel. Review it before you use it.