← WebMCP Directory

Tool tree

nagara-webmcp.vercel.app

Productivity & BusinessTools verified
Website
A Bengaluru map that a person and a WebMCP agent share. You add a photo and an area name. The app matches the GBA ward, pins the voice, and shows public stormwater, lake, and UGD records next to it.
Explore capabilities
    list_ui_actionsAnswer

    Start here. Lists every meaningful link, button, form control, map action, and its matching WebMCP tool for the current Nagara page.

    View tool JSON
    {
      "name": "list_ui_actions",
      "kind": "answer",
      "impl": "imperative",
      "description": "Start here. Lists every meaningful link, button, form control, map action, and its matching WebMCP tool for the current Nagara page.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "page": "/create"
    }
    navigate_appAction

    Use Nagara navigation and call-to-action links without guessing at the DOM. Opens the home, city overview, filing map, How it works section, agent guide, or latest voice.

    View tool JSON
    {
      "name": "navigate_app",
      "kind": "act",
      "impl": "imperative",
      "description": "Use Nagara navigation and call-to-action links without guessing at the DOM. Opens the home, city overview, filing map, How it works section, agent guide, or latest voice.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "destination": {
            "type": "string",
            "enum": [
              "home",
              "overview",
              "map",
              "how-it-works",
              "agent-guide",
              "latest-voice"
            ],
            "description": "The labeled destination to open."
          }
        },
        "required": [
          "destination"
        ],
        "additionalProperties": false
      },
      "page": "/create"
    }
    get_workspace_stateAnswer

    Read Nagara first. Returns voice counts, the selected pin, and the filing form (photo, area name, title, body, category).

    View tool JSON
    {
      "name": "get_workspace_state",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read Nagara first. Returns voice counts, the selected pin, and the filing form (photo, area name, title, body, category).",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "page": "/create"
    }
    set_draftAction

    Fill the filing form the human can see. Pass areaName (HSR Layout, Bellandur, Whitefield) and optional photoUrl, title, body, category. Then call file_voice.

    View tool JSON
    {
      "name": "set_draft",
      "kind": "act",
      "impl": "imperative",
      "description": "Fill the filing form the human can see. Pass areaName (HSR Layout, Bellandur, Whitefield) and optional photoUrl, title, body, category. Then call file_voice.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "photoUrl": {
            "type": "string",
            "format": "uri",
            "description": "Public evidence image URL."
          },
          "photoName": {
            "type": "string",
            "description": "Human-readable evidence filename."
          },
          "areaName": {
            "type": "string",
            "description": "Bengaluru locality, for example HSR Layout."
          },
          "title": {
            "type": "string",
            "description": "Short, factual civic issue title."
          },
          "body": {
            "type": "string",
            "description": "What failed and what the evidence shows."
          },
          "category": {
            "type": "string",
            "enum": [
              "flooding",
              "water",
              "lakes",
              "works",
              "encroach",
              "footpaths",
              "lights",
              "waste",
              "other"
            ]
          },
          "lng": {
            "type": "number"
          },
          "lat": {
            "type": "number"
          }
        },
        "additionalProperties": false
      },
      "page": "/create"
    }
    select_categoryAction

    Press one of the visible issue-category chips on the filing form. The selected chip updates immediately.

    View tool JSON
    {
      "name": "select_category",
      "kind": "act",
      "impl": "imperative",
      "description": "Press one of the visible issue-category chips on the filing form. The selected chip updates immediately.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "category": {
            "type": "string",
            "enum": [
              "flooding",
              "water",
              "lakes",
              "works",
              "encroach",
              "footpaths",
              "lights",
              "waste",
              "other"
            ]
          }
        },
        "required": [
          "category"
        ],
        "additionalProperties": false
      },
      "page": "/create"
    }
    clear_draftAction

    Clear the visible evidence, area, title, description, category, and coordinates from the filing form.

    View tool JSON
    {
      "name": "clear_draft",
      "kind": "act",
      "impl": "imperative",
      "description": "Clear the visible evidence, area, title, description, category, and coordinates from the filing form.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "page": "/create"
    }
    attach_photoAction

    Host a public image URL through UploadThing and put it on the form. Use this when Codex or ChatGPT has a photo URL. Then set_draft areaName and file_voice.

    View tool JSON
    {
      "name": "attach_photo",
      "kind": "act",
      "impl": "imperative",
      "description": "Host a public image URL through UploadThing and put it on the form. Use this when Codex or ChatGPT has a photo URL. Then set_draft areaName and file_voice.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "photoUrl": {
            "type": "string",
            "format": "uri"
          },
          "name": {
            "type": "string"
          }
        },
        "required": [
          "photoUrl"
        ],
        "additionalProperties": false
      },
      "page": "/create"
    }
    resolve_wardAnswer

    Resolve a Bengaluru area name or lng/lat to a GBA ward and corporation.

    View tool JSON
    {
      "name": "resolve_ward",
      "kind": "answer",
      "impl": "imperative",
      "description": "Resolve a Bengaluru area name or lng/lat to a GBA ward and corporation.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "areaName": {
            "type": "string"
          },
          "lng": {
            "type": "number"
          },
          "lat": {
            "type": "number"
          }
        },
        "additionalProperties": false
      },
      "page": "/create"
    }
    classify_issueAction

    Suggest Flooding, Water, Lakes, or Works from a caption. Pass caption if the form is still empty. Never default to pothole or waste.

    View tool JSON
    {
      "name": "classify_issue",
      "kind": "act",
      "impl": "imperative",
      "description": "Suggest Flooding, Water, Lakes, or Works from a caption. Pass caption if the form is still empty. Never default to pothole or waste.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "caption": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "page": "/create"
    }
    file_voiceAction

    File the voice and drop a pin. Needs a photo (photoUrl or the form) and an area name. Resolves the ward, classifies if needed, then selects the new pin.

    View tool JSON
    {
      "name": "file_voice",
      "kind": "act",
      "impl": "imperative",
      "description": "File the voice and drop a pin. Needs a photo (photoUrl or the form) and an area name. Resolves the ward, classifies if needed, then selects the new pin.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "body": {
            "type": "string"
          },
          "areaName": {
            "type": "string"
          },
          "category": {
            "type": "string",
            "enum": [
              "flooding",
              "water",
              "lakes",
              "works",
              "encroach",
              "footpaths",
              "lights",
              "waste",
              "other"
            ]
          },
          "lng": {
            "type": "number"
          },
          "lat": {
            "type": "number"
          },
          "photoUrl": {
            "type": "string",
            "format": "uri"
          }
        },
        "additionalProperties": false
      },
      "page": "/create"
    }
    use_current_locationAction

    Equivalent to the visible Use my location button. Requests browser geolocation, updates the visible draft coordinates, and resolves the matching GBA ward. The browser may ask the person for permission.

    View tool JSON
    {
      "name": "use_current_location",
      "kind": "act",
      "impl": "imperative",
      "description": "Equivalent to the visible Use my location button. Requests browser geolocation, updates the visible draft coordinates, and resolves the matching GBA ward. The browser may ask the person for permission.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "page": "/create"
    }
    list_voicesAnswer

    List civic voices, optionally filtered by ward, category, or status.

    View tool JSON
    {
      "name": "list_voices",
      "kind": "answer",
      "impl": "imperative",
      "description": "List civic voices, optionally filtered by ward, category, or status.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "wardId": {
            "type": "string"
          },
          "category": {
            "type": "string",
            "enum": [
              "flooding",
              "water",
              "lakes",
              "works",
              "encroach",
              "footpaths",
              "lights",
              "waste",
              "other"
            ]
          },
          "status": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "page": "/create"
    }
    get_voiceAnswer

    Read one voice: photos, ward, supporters, timeline, related public records.

    View tool JSON
    {
      "name": "get_voice",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read one voice: photos, ward, supporters, timeline, related public records.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "voiceId": {
            "type": "string"
          }
        },
        "required": [
          "voiceId"
        ],
        "additionalProperties": false
      },
      "page": "/create"
    }
    focus_voiceAction

    Pan the shared map to a voice so the human and agent look at the same pin.

    View tool JSON
    {
      "name": "focus_voice",
      "kind": "act",
      "impl": "imperative",
      "description": "Pan the shared map to a voice so the human and agent look at the same pin.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "voiceId": {
            "type": "string"
          }
        },
        "required": [
          "voiceId"
        ],
        "additionalProperties": false
      },
      "page": "/create"
    }
    support_voiceAction

    Join this voice instead of filing a duplicate.

    View tool JSON
    {
      "name": "support_voice",
      "kind": "act",
      "impl": "imperative",
      "description": "Join this voice instead of filing a duplicate.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "voiceId": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "page": "/create"
    }
    list_related_tendersAnswer

    Return public stormwater, lake, UGD, and water records for an area or category.

    View tool JSON
    {
      "name": "list_related_tenders",
      "kind": "answer",
      "impl": "imperative",
      "description": "Return public stormwater, lake, UGD, and water records for an area or category.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "areaName": {
            "type": "string"
          },
          "wardId": {
            "type": "string"
          },
          "category": {
            "type": "string",
            "enum": [
              "flooding",
              "water",
              "lakes",
              "works",
              "encroach",
              "footpaths",
              "lights",
              "waste",
              "other"
            ]
          },
          "query": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "page": "/create"
    }
    get_link_targetAnswer

    Resolve the URL behind Nagara's visible Source, live app, or selected public-record link so the agent can open it deliberately.

    View tool JSON
    {
      "name": "get_link_target",
      "kind": "answer",
      "impl": "imperative",
      "description": "Resolve the URL behind Nagara's visible Source, live app, or selected public-record link so the agent can open it deliberately.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "link": {
            "type": "string",
            "enum": [
              "source-code",
              "live-app",
              "selected-record"
            ]
          }
        },
        "required": [
          "link"
        ],
        "additionalProperties": false
      },
      "page": "/create"
    }
    enrich_sourceAction

    Firecrawl-scrape an allowlisted civic URL (OpenCity, karnatakatenders.in, The News Minute) into JSON.

    View tool JSON
    {
      "name": "enrich_source",
      "kind": "act",
      "impl": "imperative",
      "description": "Firecrawl-scrape an allowlisted civic URL (OpenCity, karnatakatenders.in, The News Minute) into JSON.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "format": "uri"
          }
        },
        "required": [
          "url"
        ],
        "additionalProperties": false
      },
      "page": "/create"
    }
    refresh_tendersAction

    Pull live OpenCity stormwater and lake records into the map catalog.

    View tool JSON
    {
      "name": "refresh_tenders",
      "kind": "act",
      "impl": "imperative",
      "description": "Pull live OpenCity stormwater and lake records into the map catalog.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "page": "/create"
    }