Skip to main content
Glama
620,587 tools. Updated 2026-09-29 01:50

"How to interact with Google Maps using Python" matching MCP tools:

  • Create a complete Google Ads Demand Gen campaign (YouTube, Discover, Gmail, Maps and the Google Display Network) in ONE atomic request: budget, campaign (ALWAYS created PAUSED — activate later with adsap_google_set_entity_status), a typeless ad group with channel controls, ad-group-level location/language targeting, and ONE ad. Use dry_run: true first — Google validates the whole chain without creating anything; show the plan, get confirmation, then execute. Two ad types (ad.ad_type): 'multi_asset' = image ad (1-5 headlines <=30 chars, 1-5 descriptions <=90, business name <=25, 1-5 logos, at least one landscape 1.91:1 or square 1:1 image from adsap_google_upload_asset, optional portrait 4:5 and tall-portrait 9:16, combined images <=20); 'video_responsive' = YouTube video ad (1-5 YouTube video ids, 1-5 headlines <=40, 1-5 long headlines <=90 REQUIRED, 1-5 descriptions <=90, 1-5 logos). Daily budget minimum is 5 (Google enforces a 5 USD local-currency-equivalent floor for Demand Gen). Channels: default ALL_CHANNELS; or channels.selected booleans (youtube_in_stream/youtube_in_feed/youtube_shorts/discover/gmail/display/maps — display: true is how you reach the Google Display Network). bidding_strategy 'auto' picks maximize_conversions when the account has conversion tracking, else maximize clicks; target_roas needs conversion history (Google rejects otherwise). ad_account_id is the bare 10-digit customer ID. For Search use adsap_google_create_search_campaign, for Performance Max adsap_google_create_pmax_campaign; for Meta use adsap_create_campaign.
    ConnectorAPI key
  • Retrieve a Lemma schema by its ID via GET /v1/schemas/{id}. A schema declares how documents of a given type are interpreted and normalized. Returns SchemaMeta { id, description? } with additionalProperties open — implementations commonly include a `normalize` artifact (WASM that maps raw documents to canonical form) and its content hash. Use this when you need to interpret attribute keys returned by lemma_query_verified_attributes.
    ConnectorNo auth
  • List the Google Business Profile listings SHARED WITH THIS BRAND — id, title, address, website and Maps link. These are the only listings anything here can post to or read: one Google login often manages several businesses (an agency manages its clients’), and the user ticks which of them belong to this brand. Call this before posting whenever more than one is shared and let the USER pick: a Post on the wrong storefront is a public mistake Hermoso will not make for them. If nothing is shared, ask the user to choose — list_connector_accounts("google_business") then set_connector_accounts — and never name or guess a listing. Read-only, 0 credits. Needs Google Business Profile connected (Settings > Connectors > Google Business Profile).
    ConnectorOAuth
  • Read the text of a Google Doc Hermoso can reach — one it created, or one the user handed over with the Google file picker in the app (that is how an EXISTING doc becomes readable; find its id with list_drive_files). Pass documentId (from create_doc) OR paste a Google Docs URL as docUrl. Under the drive.file scope it reaches nothing else in the user’s Drive; if Google answers that the file was not found, the user has not picked it yet — ask them to pick it in the app rather than retrying. Returns the plain text. Read-only, free.
    ConnectorOAuth
  • Validates a Python automation script that runs OUTSIDE the game, on three axes: Python syntax (using the real interpreter), Minecraft commands embedded in the script (against the official command index), and the shape of the /connect WebSocket message envelope. For behavior pack scripts use validate_script instead — Python does not run inside a pack. The embedded command check is the most valuable one: a command written from memory can look syntactically fine and still do nothing in the game. Only strings starting with / are treated as commands. If syntax could not be checked, syntaxChecked is false in the result; ok:true alone does not mean the syntax is valid.
    ConnectorNo auth
  • Use this when the user asks which companies use a particular technology (for example Intercom, Zendesk, HubSpot, Shopify, Stripe), or which technologies are most used. With a slug: companies detected using that technology, 20 per page. company_count is every company detected using it; listed_count is how many the list can page through, so stop at page ceil(listed_count / 20). Without a slug: the technology index, most-used first, with company counts (default 100, up to 1,000). Slugs are lower-case with hyphens, e.g. intercom, hubspot, google-analytics, shopify. Works without an API key; no contact reveals.
    ConnectorNo auth

Matching MCP Servers

Matching MCP Connectors

  • Turn Maps queries into lead lists: businesses, phones, websites, and reviews with async job control.

  • Google Maps place photos: image URLs, thumbnails, positions, and Street View panoramas.

  • Render a mingrammer/diagrams Python snippet to PNG and return the image. The code must be a complete Python script using `from diagrams import ...` imports and a `with Diagram(...)` context manager block. Use search_nodes to verify node names and get correct import paths before writing code. Read the diagrams://reference/diagram, diagrams://reference/edge, and diagrams://reference/cluster resources for constructor options and usage examples. Args: code: Full Python code using the diagrams library. filename: Output filename without extension. format: Output format — ``"png"`` (default), ``"svg"``, or ``"pdf"``. download_link: If True, return a temporary download URL path (/images/{token}) that expires after 15 minutes; if False, return inline image bytes. Defaults to True (URL) — set ``DIAGRAMS_INLINE_DEFAULT=true`` on the server to flip the default. SVG/PDF and PNGs larger than the inline limit always use a download link.
    ConnectorNo auth
  • Search the RoxyAPI knowledge base and get back ranked documentation snippets, each with a source URL. It covers API endpoints with their request and response fields, SDK usage for TypeScript, Python, PHP, C#, and Go, the WordPress plugin, authentication and API keys, UI components, and step by step integration guides. Call this first whenever you need to integrate RoxyAPI into an app: to find which endpoint or SDK method to use, what parameters a call takes, how to authenticate, or how to wire a feature end to end. Pass the user question verbatim as `query`. If the first results miss, rephrase once and retry.
    ConnectorNo auth
  • Research keyword demand: search volume, difficulty, CPC, and intent, plus keyword ideas, Google Trends interest and related queries, and Google Ads keyword performance. Volume and difficulty come from a live keyword vendor: a workspace without vendor credits gets an explanatory error with the path forward, never fabricated numbers. Use for what to target and how much demand exists; for who ranks today use serp_competitors. Already scoped to the connected workspace and its site; call directly, no domain or site parameter is needed. Cost: metrics and suggestions bill AI credits (live vendor data at actual cost); trends, related_queries, compare and performance are FREE (Google Trends / your connected Google Ads).
    ConnectorOAuth
  • Preview and start web/crawl, web/batch-scrape, web/agent or tripadvisor attraction/restaurant reviews. Omit confirm for a free estimate; confirm=true requires an idempotency key and max_credits. No automatic polling. Follow the returned status_url or job id using call_endpoint web/jobs/get; retrieval is free. Read terminal status, per-item results and refund_status: an accepted job is not completed data. A browser agent may interact with pages; review its URL and task before confirming.
    Connector
    Destructive
    No auth
  • List supported Google Maps place type values for search filters. Returns place_types as a string array. Use a value with place_type on google-maps.search or google-maps.nearby_search. Cost = 1 token.
    ConnectorNo auth
  • List all countries and subregions you can pass to other Google Trends tools in the country and region fields. Returns geo.countries: each country name maps to country (label) and regions (array of subregion names). Also returns msg. Use this before interest-over-time or interest-by-region calls when filtering by geography. Pair with google-trends.categories when filtering by category. Cost = 5 tokens.
    ConnectorNo auth
  • Compare a local business's Google rating and review count against the top same-category rivals nearby, with the gap math done: who leads, the rating delta, the review-volume ratio, and a verdict (leading / rated_equal_or_better_but_outreviewed / trailing). Live Google Maps lookup at call time. Call this when a user wants to know how a business's reviews stack up against local competitors. Takes a few seconds. Price: $0.39 per delivered comparison.
    ConnectorNo auth
  • Returns Mastra (Bun) and LangGraph (Python) patterns for AI agent workflows. Call this BEFORE create_workflow / update_draft when building chatbots, tool-using agents, or multi-step LLM flows. Do not hand-roll custom agent loops — use the preinstalled frameworks.
    ConnectorNo auth
  • WHAT: Locales on maps — only de (MAPS-E8: no /en). Call with {}. RETURNS items[{locale,url}]. USE before resolve_locale_url. DOES NOT list www's seven locales — use @ikeytz/mcp list_locales for those.
    ConnectorNo auth
  • Publish a Post to the brand’s Google Business Profile — the panel that appears on Google Search and Maps for the business. Text, optionally ONE PHOTO, and a call-to-action button. Google’s Posts API accepts NO VIDEO, so pass a still image. This PUBLISHES immediately and publicly on the business listing — show the user the exact text, photo and button and get an explicit yes BEFORE calling. If the account manages several listings, call list_business_locations first and pass locationId. EVENT and OFFER posts both REQUIRE a title and a start date (Google’s rule). On an OFFER, Google IGNORES the button’s link — pass redeemOnlineUrl instead. A CALL button dials the number on the listing and takes no link. Needs Google Business Profile connected (Settings > Connectors > Google Business Profile).
    ConnectorOAuth
  • Read cells from a Google Sheet Hermoso can reach — one it created, or one the user handed over with the Google file picker in the app (that is how an EXISTING spreadsheet becomes readable; find its id with list_drive_files). Pass the spreadsheetId (from create_sheet) OR paste a Google Sheets URL as sheetUrl. If Google answers that the file was not found, the user has not picked it yet — ask them to pick it in the app rather than retrying. Returns a 2-D array of values.
    ConnectorOAuth
  • Generate a wallet pass Generates a wallet pass from a published template. For Apple passes (default), returns a signed `.pkpass` binary file directly. For Google passes (`wallet_type: "google"`), returns a JSON object containing a `save_url` that the user can open to add the pass to Google Wallet. When `wallet_type: "both"`, generates both Apple and Google passes in a single call. The response is always JSON with `apple` and `google` keys. Partial success is allowed — if one wallet fails, the other is still returned with a warning. Returns 201 if at least one succeeds. The pass ID is returned in the `X-Pass-Id` response header (for single-wallet). If the app has a validation webhook configured, the webhook is called once before generation (not per wallet type). A webhook rejection returns 403; a webhook error returns 502 (fail-closed). **Scope:** `passes:create` Maps to OpenAPI operationId `generatePass` — POST /generate-pass. Same PassFast HTTP API, billing, and rate limits. Do not invent other paths.
    ConnectorNo auth
  • Render exactly what a broadcast would send, using real contacts from the segment, BEFORE you send it. Call this before send_broadcast and show the user the result so they can confirm the personalisation is right (this is how you catch a template that says "Hi Alex" instead of the contact's real name). Returns { template, segment, contact_count, variables (each placeholder → the contact field it maps to, or null if unmapped), unmapped_placeholders, previews (per-contact rendered message), warnings }. If unmapped_placeholders is non-empty or a preview shows a blank/wrong value, fix the mapping with set_template_variables and preview again before sending.
    ConnectorOAuth
  • Retrieves all interaction partners for one or more proteins from STRING. This tool returns all known interactions between your query protein(s) and **any other proteins in the STRING database**. - Use this when asking **“What does TP53 interact with?”** - It differs from the `network` tool, which only shows interactions **within the input set** or a limited extension of it. - If the user refers to "physical interactions", "complexes", or "binding", set the network type to "physical". You can filter for strong interactions using `required_score`. - Evidence scores: `nscore` (neighborhood), `fscore` (fusion), `pscore` (phylogenetic profile), `ascore` (coexpression), `escore` (experimental), `dscore` (database), `tscore` (text mining)
    ConnectorNo auth
  • STEP 1 of contact upload. Given the column headers from the user's spreadsheet/CSV, returns how each column maps to an Xmagnet field (standard fields + the tenant's saved custom fields). ALWAYS call this before upload_contacts and show the mapping to the user for confirmation. Unrecognized columns are auto-assigned to free custom_field slots.
    ConnectorNo auth