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.
46 lines
1009 B
JSON
46 lines
1009 B
JSON
{
|
|
"id": "google-trends",
|
|
"name": "Google Trends",
|
|
"type": "mcp_local",
|
|
"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 — no API key required.",
|
|
"requires": [
|
|
"PYTHON"
|
|
],
|
|
"tags": [
|
|
"trends",
|
|
"mcp",
|
|
"local",
|
|
"google",
|
|
"search",
|
|
"analytics"
|
|
],
|
|
"auth": {
|
|
"type": "none"
|
|
},
|
|
"folder": "google-trends",
|
|
"version": 2,
|
|
"version_string": "1.1.0",
|
|
"version_release_date": "2026-08-24",
|
|
"tools": [
|
|
{
|
|
"name": "status",
|
|
"display_name": "Status Check"
|
|
},
|
|
{
|
|
"name": "get_trending",
|
|
"display_name": "Get Trending Topics"
|
|
},
|
|
{
|
|
"name": "get_interest_over_time",
|
|
"display_name": "Interest Over Time"
|
|
},
|
|
{
|
|
"name": "explore",
|
|
"display_name": "Explore Keyword"
|
|
}
|
|
]
|
|
}
|