google-trends: fix broken MCP handshake and RSS articles (v2 / 1.1.0)

The server never implemented `initialize`, so every MCP client got
-32601 to its opening request and aborted before listing a tool. Also
missing: `notifications/initialized` and `ping`; `tools/list` returned a
bare array instead of {"tools": [...]}; notifications (no `id`) got a
full response written to stdout.

Rewritten to the shape the other local connectors already use (TOOLS
manifest + TOOL_DISPATCH, `_text_result` with isError, handle_request
returning None for notifications).

Also fixed:
- include_articles always returned nothing: trendspyg emits
  `news_articles`, the mapper read `articles`. explore_link kept too.
- fn(**arguments) turned a bad argument into -32603; handlers now take
  an args dict and coerce/clamp.
- errors were returned as successful results; now isError: true, with
  trendspyg's typed exceptions translated into actionable messages.
- browser calls could run ~100s (10 retries x 8s); capped at ~25s.
- verify.py shipped but connector.json declared no `verify` block; wired
  it and upgraded the script to a real RSS fetch.
- explore mutated trendspyg's ExploreEnvelope; dropped the no-op
  output_format param; trendspyg pinned >=1.6.0 and imported defensively.
This commit is contained in:
Daniele
2026-08-24 17:29:36 +01:00
parent 0c04ba2e4c
commit 5e4c41183c
7 changed files with 401 additions and 311 deletions
+5 -5
View File
@@ -5,7 +5,7 @@
"scope": "global",
"icon_small": "google-trends/icon_sm.png",
"icon_large": "google-trends/icon_lg.png",
"user_description": "Current trending topics by country, keyword search interest history, related queries, and regional interest maps. Powered by trendspyg \u2014 no API key required.",
"user_description": "Current trending topics by country, keyword search interest history, related queries, and regional interest maps. Powered by trendspyg no API key required.",
"requires": [
"PYTHON"
],
@@ -21,9 +21,9 @@
"type": "none"
},
"folder": "google-trends",
"version": 1,
"version_string": "1.0.0",
"version_release_date": "2026-07-22",
"version": 2,
"version_string": "1.1.0",
"version_release_date": "2026-08-24",
"tools": [
{
"name": "status",
@@ -42,4 +42,4 @@
"display_name": "Explore Keyword"
}
]
}
}