Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Trending topics, trajectories, audience insights and recommendations from TrendsAGI. Read-only.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
适用于网页版、桌面版和手机版 Claude:
https://api.trendsagi.com/mcp在终端中运行这条命令
claude mcp add --transport http trendsagi https://api.trendsagi.com/mcp粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"trendsagi": {
"url": "https://api.trendsagi.com/mcp"
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"trendsagi": {
"type": "http",
"url": "https://api.trendsagi.com/mcp"
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
ChatGPT 只能连接互联网上的服务器:
https://api.trendsagi.com/mcp菜单名称可能因套餐和版本不同而略有差异。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
服务器要求先登录,才会列出它的工具。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日
注册名称已通过 GitHub 账户 TrendsAGI 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
在 474 毫秒内响应(HTTP 401)
声明支持 OAuth 登录,你的 AI 应用可以带你去登录
尚未检查;我们会在检查端点时读取工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 3 项适用的基础检查中通过了 3 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在作者的云端运行。通过互联网连接,无需安装,但你发送的内容会经过作者的服务器。
GitHub 仓库最后更新于–,最新版本(1.1.1)于3天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,所以接受远程 MCP 服务器的应用也可以使用,例如开启开发者模式的 ChatGPT。
同一分类中有:Spec Driven Development, Remote Desktop Commander, Intervals MCP
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Remote MCP server for intervals.icu run data and analysis
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Real-time trend intelligence for your code and your AI agents: what is trending on social platforms right now, with measured volume, velocity and growth, AI insights on why each topic is moving, evidence-backed recommendations, crisis alerts and watchlists. Paid media and growth teams use it to target what is rising, time spend to the trend curve and brief creative on measured demand.
| Python client | TrendsAGIClient, a typed REST client |
| Command line | trendsagi, one command per API action, tables in a terminal and JSON in a pipe |
| Agent tools | TrendsAGITools for OpenAI, Claude, LangChain and WebMCP |
| Hosted MCP server | https://api.trendsagi.com/mcp for Claude, ChatGPT, Grok, Cursor and Gemini CLI |
| Cursor Agent SDK | A ready agent project in agent-sdk/: one connection file gives an Agent SDK agent every hosted tool |
| Browser agents (WebMCP) | Signed in to app.trendsagi.com, your browser's agent gets the same tools (webmcp/) |
| Local MCP server | trendsagi mcp, the same tools over stdio |
| Plugins | Claude, Grok, Cursor and Snowflake Cortex Code plugin in plugins/trendsagi, Gemini CLI extension at the repo root |
| Ad execution | Executors that preview, then apply, Google, Meta, TikTok and LinkedIn ad changes from your own infrastructure |
pip install trendsagi # client, agent tools and the trendsagi command
pip install "trendsagi[mcp]" # adds the local MCP server (Python 3.10+) pipx install trendsagi # just the command line, in its own environment npx trendsagi --help # or the same command line from npm (Node.js 18+)
Create an API key under Profile > API Keys at app.trendsagi.com and export it:
export TRENDSAGI_API_KEY="your_api_key"
import os
from trendsagi import TrendsAGIClient
client = TrendsAGIClient(api_key=os.environ["TRENDSAGI_API_KEY"])
trends = client.get_trends(category="Technology", sort_by="velocity", limit=5) for trend in trends.trends: print(trend.id, trend.name, trend.volume)
insight = client.get_ai_insights(trends.trends[0].id) if insight: print(insight.sentiment_summary, insight.key_themes)
trendsagi login # paste an API key; saved to ~/.config/trendsagi/config.json
trendsagi trends list --category Technology --sort velocity --limit 10 trendsagi insights get 123 # audience, sentiment and marketing angles trendsagi sql "SELECT category, count(*) FROM trends GROUP BY 1 ORDER BY 2 DESC" trendsagi recommendations list --priority high trendsagi watchlist add "oat milk" --threshold 50000 --email trendsagi api /api/integrations/delivery/health -q lookback_hours=24 # any endpoint
| Commands | What they do |
|---|---|
login, logout, whoami | Save, forget and check the API key |
trends list get analytics categories autocomplete | Trending topics with measured volume, velocity and growth |
insights get generate [--wait] status search | AI insights per trend |
recommendations list action feedback | Evidence-backed recommendations and their workflow status |
crisis list action | Crisis events: acknowledge, archive, reopen |
watchlist list add remove | Tracked keywords and categories, with alerts |
sql, schema | One read-only PostgreSQL SELECT over your data, and the tables it can read |
tools list call, find | The agent tools, and whether TrendsAGI can do a task |
webhooks, exports | Create, change, test and run webhooks and data exports |
ads providers resources preview apply report report-export | Connected ad platforms: trend-based changes and reports |
integrations availability status health value | Integration status and delivery health |
stream | Live trend updates as JSON lines |
usage, status, api | API usage, service status, and any endpoint without its own command |
Every command has --help. In a terminal, lists print as tables; piped or with --json they print JSON, so trendsagi trends list | jq works. The key comes from --api-key, then TRENDSAGI_API_KEY, then the saved login. Commands that delete something or change live ads ask first; pass --yes in scripts. Exit codes: 0 success, 1 API error, 2 invalid usage, 4 missing or rejected key.
The commands are declared once in src/trendsagi/cli_spec.json; a dependency-free Node.js build of the same CLI lives in npm/ and is published as trendsagi on npm. Guide: trendsagi.com/api-docs/integrations/cli.
The client calls any endpoint too: client.request("GET", "/api/integrations/delivery/health", params={"lookback_hours": 24}).
Add the hosted MCP server, sign in to TrendsAGI and approve the connection:
| Assistant | Setup |
|---|---|
| Claude | Open TrendsAGI in the Claude directory, or Settings > Connectors > Add custom connector with the URL below |
| Claude Code | claude mcp add --transport http trendsagi https://api.trendsagi.com/mcp, or /plugin marketplace add TrendsAGI/TrendsAGI then /plugin install trendsagi@trendsagi |
| ChatGPT | Add a custom connector with the URL below |
| Grok | Install the TrendsAGI plugin, or add the URL as a remote MCP server |
| Cursor | { "mcpServers": { "trendsagi": { "url": "https://api.trendsagi.com/mcp" } } } |
| Snowflake Cortex Code | cortex mcp add trendsagi https://api.trendsagi.com/mcp --type http, or cortex plugin install github:TrendsAGI/TrendsAGI/plugins/trendsagi |
| Gemini CLI | gemini extensions install https://github.com/TrendsAGI/TrendsAGI |
https://api.trendsagi.com/mcp
Then ask *"What is accelerating fastest in Technology this week, and who should I target with it?"* The hosted tools are read-only, and each call counts as one API request. Each connection gets its own key, listed as "AI connector: " under Profile > API Keys; delete it to disconnect. Clients without OAuth can send an API key as Authorization: Bearer . Guide: trendsagi.com/mcp.
Agent SDK defines agents as a folder of Markdown and TypeScript. Add TrendsAGI with one file and the agent gets the hosted MCP server's read-only tools by name:
// bot/mcp-connections/trendsagi.ts
import { defineConnection } from "@grok/agent-sdk/connections";
export default defineConnection({ url: "https://api.trendsagi.com/mcp", headers: { authorization: "Bearer ${TRENDSAGI_API_KEY}" }, // filled by Agent SDK, not JavaScript advertiseTools: true, effects: "read", });
agent-sdk run --dir . --message "What is rising fastest in Technology this week?"
agent-sdk/ is a complete project to copy: instructions, a trend-brief skill, hosting settings (egress to api.trendsagi.com, a TRENDSAGI_API_KEY secret) and smoke evals. Guide: trendsagi.com/api-docs/integrations/agent-sdk.
WebMCP lets a web page hand tools to the AI agent built into the browser (Chrome and Edge in origin trials, ChatGPT desktop, Brave Leo). While you are signed in to app.trendsagi.com, the app registers TrendsAGI's read-only tools with document.modelContext, so the agent uses them with your session: no connector or API key, and calls count as app use rather than API usage. trendsagi.com offers public tools (docs search, trend reports, plans and the free calculators) to every visitor.
To put TrendsAGI tools on your own site, register them in your page and run them on your server, which keeps the API key:
tools = TrendsAGITools(TrendsAGIClient(api_key=os.environ["TRENDSAGI_API_KEY"]))
tools.webmcp() # serve to your page: name, title, description, inputSchema, annotations tools.call("list_trends", args) # run the call your page forwards
webmcp/ has the browser module and a FastAPI server. Guide: trendsagi.com/webmcp.
One registry, every format. The tools are read-only by default; add_to_watchlist and update_recommendation appear only with allow_writes=True (or trendsagi mcp --allow-writes).
| Tool | What the agent gets |
|---|---|
list_trends | Trending topics by category or phrase, sorted by velocity, growth or volume |
list_trend_categories | Valid category names |
search_trend_insights | Trends and insights matching a theme |
get_trend / get_trend_analytics | One trend and its volume time series |
get_trend_ai_insights | Summary, key themes, sentiment, audience, marketing angles |
list_recommendations | Evidence-backed actions with a decision brief |
list_crisis_events | Reputation and crisis events for monitored topics |
list_watchlist / get_api_usage | Watched topics and remaining daily quota |
read_data_schema / execute_sql | Read-only SQL for questions that need filters, joins or aggregation |
find_capability | Whether TrendsAGI can do a task, and which tool or app page does it |
import json, os
from openai import OpenAI from trendsagi import TrendsAGIClient, TrendsAGITools
tools = TrendsAGITools(TrendsAGIClient(api_key=os.environ["TRENDSAGI_API_KEY"])) openai = OpenAI() messages = [{"role": "user", "content": "Find a fast-rising Technology trend and suggest a campaign angle."}]
while True: reply = openai.chat.completions.create(model="gpt-5-mini", messages=messages, tools=tools.openai()) message = reply.choices[0].message messages.append(message) if not message.tool_calls: print(message.content) break for call in message.tool_calls: result = tools.call(call.function.name, call.function.arguments) messages.append({"role": "tool", "tool_call_id": call.id, "content": json.dumps(result)})
tools.anthropic() # Anthropic Messages API tools=
tools.openai_responses() # OpenAI Responses API tools= tools.langchain() # LangChain StructuredTools (pip install "trendsagi[langchain]") tools.webmcp() # WebMCP descriptors for document.modelContext.registerTool
With Claude, pass tools=tools.anthropic() and answer each tool_use block with {"type": "tool_result", "tool_use_id": block.id, "content": json.dumps(tools.call(block.name, block.input))}. tools.call never raises: errors come back as {"error": ...} so the model can read a rate limit or a bad argument and recover.
pip install "trendsagi[mcp]"
claude mcp add trendsagi --env TRENDSAGI_API_KEY=your_api_key -- trendsagi mcp
Or in any MCP client's JSON config (Claude Desktop, Cursor, VS Code):
{ "mcpServers": { "trendsagi": { "command": "trendsagi-mcp", "env": { "TRENDSAGI_API_KEY": "your_api_key" } } } }
For answers no single e
只显示了开头部分;其余内容请在仓库中阅读