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:
+10
-10
@@ -1046,9 +1046,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",
|
||||
@@ -1070,13 +1070,13 @@
|
||||
"files": [
|
||||
{
|
||||
"path": "connector.json",
|
||||
"sha256": "0f50383fa3d664e6f487983645c56a57a076353a8fea337d121826210ebd3a8a",
|
||||
"size": 1191
|
||||
"sha256": "3b14d898ecec79a75239903db07b0fb78781858583f11056fe70223885a8bab7",
|
||||
"size": 1363
|
||||
},
|
||||
{
|
||||
"path": "google_trends_mcp.py",
|
||||
"sha256": "5404eb7c81e82180a3b9e3052a4793e80a361ae60156d598d8e62e36b21dea8a",
|
||||
"size": 13552
|
||||
"sha256": "987d3d63f5b4b560e5571f0bbb53f7a9a7d4051945152281d92792a5b64d22d4",
|
||||
"size": 15718
|
||||
},
|
||||
{
|
||||
"path": "icon_lg.png",
|
||||
@@ -1090,13 +1090,13 @@
|
||||
},
|
||||
{
|
||||
"path": "requirements.txt",
|
||||
"sha256": "8b13038b5c79cff2680a9b482491b969ac83ce4efa396f408bfca97385d00621",
|
||||
"sha256": "7bb5d1d66068a94a518c4bf13e05a074558233b902522b9c1fc983dfd3f20168",
|
||||
"size": 17
|
||||
},
|
||||
{
|
||||
"path": "verify.py",
|
||||
"sha256": "adbae57fc109c06c5d61ff50b67faaf62e1fa493a18cbfdacbc73f24d51ba9b8",
|
||||
"size": 831
|
||||
"sha256": "a9ed69ddaefe285bf6c418bdcf8ec788531bfab02b0a44effe281431648e50b4",
|
||||
"size": 1585
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user