TechSnif
Agent-first tech news: ranked story clusters, coverage and discussion links, trends, and events.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"@techsnif/mcp-server"
]
}
}
}Paquetes ejecutables
3.3.1stdioPuntos de conexión remotos
https://mcp.techsnif.comstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (13)
🟢get_top_stories(limit, offset, sort, tier, publisher, ...)
Get tech story clusters from across the web. Each story aggregates coverage from multiple outlets (TechCrunch, The Verge, NYT, TechSnif, etc.) and includes links to social discussion (tweets, Reddit threads, LinkedIn posts). Sort by rank (prominence) or newest (most recently seen). Optionally filter by headline tier (1=standard, 2=major, 3=top story), publisher name, discussion platform, topic, or a "since" timestamp, and paginate with offset. Use get_story when you need full details or article body text.
Esquema de entrada
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"description": "Number of stories to return (default 20, max 80)",
"default": 20,
"minimum": 1,
"maximum": 80
},
"offset": {
"type": "number",
"description": "Number of stories to skip (pagination)",
"minimum": 0
},
"sort": {
"type": "string",
"description": "Sort order: \"rank\" (prominence, default) or \"newest\" (most recently seen)",
"enum": [
"rank",
"newest"
],
"default": "rank"
},
"tier": {
"type": "number",
"description": "Filter by headline tier: 1=standard, 2=major, 3=top story",
"minimum": 1,
"maximum": 3
},
"publisher": {
"type": "string",
"description": "Filter by lead publisher name (e.g. \"TechCrunch\", \"The Verge\", \"TechSnif\")"
},
"platform": {
"type": "string",
"description": "Filter to stories discussed on this platform (e.g. \"x\", \"bluesky\", \"threads\", \"linkedin\", \"forums\", \"mastodon\")"
},
"has_discussion": {
"type": "boolean",
"description": "Only return stories that have social discussion links"
},
"since": {
"type": "string",
"description": "ISO 8601 date, only stories seen since this time (e.g. \"2026-07-01\")"
},
"topic": {
"type": "string",
"description": "Filter by topic slug (e.g. \"ai\", \"security\")"
},
"entity": {
"type": "string",
"description": "Filter by entity slug: only stories mentioning this company, person, or product (e.g. \"openai\"). Use list_entities to discover slugs."
}
}
}🟢get_story(slug, platform, publisher, brief)
Get full details of a story cluster by slug, including all coverage links from every outlet (TechCrunch, NYT, TechSnif, etc.), direct URLs to social discussion posts (exact tweets, Reddit threads, LinkedIn posts, Bluesky posts), and the full TechSnif article text if available. Use this to answer "show me the tweets about this story" or "what outlets covered this". Filter discussion by platform, coverage by publisher, or use brief mode to skip the article body.
Esquema de entrada
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "The story cluster slug"
},
"platform": {
"type": "string",
"description": "Filter discussion links to this platform only (e.g. \"x\", \"bluesky\", \"threads\")"
},
"publisher": {
"type": "string",
"description": "Filter coverage links by publisher name (e.g. \"TechCrunch\"). Does not affect the lead article or discussion links."
},
"brief": {
"type": "boolean",
"description": "Show metadata and links only, skip the full TechSnif article body"
}
},
"required": [
"slug"
]
}🟢search_stories(query, limit, offset, publisher, platform)
Full-text search over story cluster headlines and excerpts, ranked by relevance. Returns matching story clusters with coverage links, discussion link counts, and TechSnif article references when available. Use get_story for full detail and article body text. Optionally filter by publisher and paginate with offset.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Search query, matches story headlines and excerpts (min 2 characters)",
"minLength": 2
},
"limit": {
"type": "number",
"description": "Max results to return (default 10, max 50)",
"default": 10,
"minimum": 1,
"maximum": 50
},
"offset": {
"type": "number",
"description": "Number of results to skip (pagination)",
"minimum": 0
},
"publisher": {
"type": "string",
"description": "Filter by lead publisher name (e.g. \"TechCrunch\", \"TechSnif\")"
},
"platform": {
"type": "string",
"description": "Narrow displayed discussion links to this platform (e.g. \"x\", \"bluesky\")"
}
},
"required": [
"query"
]
}🟢get_tech_events(limit)
Get upcoming tech industry events (conferences, summits, expos) with dates, locations, and URLs.
Esquema de entrada
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"description": "Number of events to return (default 10, max 50)",
"default": 10,
"minimum": 1,
"maximum": 50
}
}
}🟢get_articles(limit, offset, category, tag)
List TechSnif editorial articles (original coverage written by TechSnif). Filter by category (AI, Startups, Venture, Robotics) or tag, and paginate with offset. Use get_article for the full body text.
Esquema de entrada
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"description": "Number of articles to return (default 10, max 50)",
"default": 10,
"minimum": 1,
"maximum": 50
},
"offset": {
"type": "number",
"description": "Number of articles to skip (pagination)",
"minimum": 0
},
"category": {
"type": "string",
"description": "Filter by category (e.g. \"AI\", \"Startups\", \"Venture\", \"Robotics\")"
},
"tag": {
"type": "string",
"description": "Filter by tag (e.g. \"Security\", \"Fintech\", \"Open Source\")"
}
}
}🟢get_article(slug, brief)
Get a full TechSnif editorial article by slug, including the complete body text.
Esquema de entrada
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "The article slug"
},
"brief": {
"type": "boolean",
"description": "Show metadata and excerpt only, skip the full body"
}
},
"required": [
"slug"
]
}🟡search_articles(query, limit, offset)
Full-text search over TechSnif editorial article titles and excerpts, ranked by relevance. Returns article summaries with category, tags, and publish dates. Use get_article for the full body text, and paginate with offset.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Search query, matches article titles and excerpts (min 2 characters)",
"minLength": 2
},
"limit": {
"type": "number",
"description": "Max results to return (default 20, max 50)",
"default": 20,
"minimum": 1,
"maximum": 50
},
"offset": {
"type": "number",
"description": "Number of results to skip (pagination)",
"minimum": 0
}
},
"required": [
"query"
]
}🟢get_trending_articles(limit)
Get trending TechSnif editorial articles from the last 48 hours, ranked by coverage heat and recency. Use get_article for the full body text.
Esquema de entrada
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"description": "Number of articles to return (default 5, max 20)",
"default": 5,
"minimum": 1,
"maximum": 20
}
}
}🟢get_story_timeline(slug)
Get the ranking history of a story cluster by slug: a time series of snapshots with rank, headline tier, commentary count, and coverage count at each point. Use this to see how a story rose, peaked, or faded across the news cycle.
Esquema de entrada
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "The story cluster slug"
}
},
"required": [
"slug"
]
}🟡get_changes(since, limit)
Get story cluster changes since a timestamp: newly appeared clusters and updates to existing ones, each with a change type, a change time, and a story summary. Poll this to stay in sync with the TechSnif feed without refetching everything; pass the returned nextCursor as the next "since" value.
Esquema de entrada
{
"type": "object",
"properties": {
"since": {
"type": "string",
"description": "ISO 8601 timestamp to read changes from (defaults to 24 hours ago)"
},
"limit": {
"type": "number",
"description": "Max changes to return (default 50, max 100)",
"default": 50,
"minimum": 1,
"maximum": 100
}
}
}🟢get_trending_stories(hours, limit)
Get story clusters gaining momentum right now, ranked by velocity: how quickly coverage and discussion grew within a recent window. Each story includes its velocity score plus commentary and coverage deltas. Use get_story for full detail.
Esquema de entrada
{
"type": "object",
"properties": {
"hours": {
"type": "number",
"description": "Look-back window in hours (default 24, max 48)",
"default": 24,
"minimum": 1,
"maximum": 48
},
"limit": {
"type": "number",
"description": "Number of stories to return (default 20, max 50)",
"default": 20,
"minimum": 1,
"maximum": 50
}
}
}🟢get_leaderboard(tab, window, topic, limit)
Get TechSnif source or author leaderboards: which publications and journalists drive the most tech story coverage. Rank by story count over a 7-day, 30-day, or all-time window, optionally filtered by topic.
Esquema de entrada
{
"type": "object",
"properties": {
"tab": {
"type": "string",
"description": "Rank \"sources\" (publications) or \"authors\" (journalists)",
"enum": [
"sources",
"authors"
],
"default": "sources"
},
"window": {
"type": "string",
"description": "Time window for rankings (default 30d)",
"enum": [
"7d",
"30d",
"all"
],
"default": "30d"
},
"topic": {
"type": "string",
"description": "Filter by topic slug (e.g. \"ai\", \"security\")"
},
"limit": {
"type": "number",
"description": "Number of entries to return (default 50, max 100)",
"default": 50,
"minimum": 1,
"maximum": 100
}
}
}🟢list_entities(type, limit)
List the companies, people, and products TechSnif tracks across story clusters, with story counts. Only entities linked to at least one story are returned, most-covered first. Pass a returned slug as the entity param of get_top_stories to pull every story about that entity.
Esquema de entrada
{
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "Filter by entity type: company, person, or product",
"enum": [
"company",
"person",
"product"
]
},
"limit": {
"type": "number",
"description": "Number of entities to return (default 100, max 500)",
"default": 100,
"minimum": 1,
"maximum": 500
}
}
}Comunidad
Evidencia