dev-stack-watcher-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@dev-stack-watcher-mcpwhat's the latest tech summary?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
dev-stack-watcher-mcp
Veille technique automatisée : le projet collecte chaque jour l'actualité GitHub et Dev.to, demande à Claude d'en produire une synthèse JSON structurée, la stocke dans SQLite (un seul résumé par jour) et l'expose via un serveur MCP.
Le code est en anglais (convention professionnelle) ; les résumés produits sont en français, puisque c'est le livrable destiné à être lu.
Projet scolaire — CREA, 2ᵉ année, module IA · Auteur : Matis Wostry
Utilisation MCP
Une instance est déjà déployée et interrogeable publiquement (lecture seule, sans jeton).
URL du serveur : https://mcp-crea-production-3669.up.railway.app/mcp
Prompts
Une fois le connecteur branché :
« Montre-moi tous les résumés disponibles. »
« Y a-t-il un résumé pour aujourd'hui ? »
« Affiche le résumé du 8 septembre 2026. »
« Affiche le dernier résumé en date. »
« Dans la veille d'aujourd'hui, qu'est-ce qui est sorti côté GitHub ? »
« Résume-moi les articles Dev.to du dernier résumé. »
Si Claude répond sans interroger le serveur, nomme explicitement l'outil ou la ressource :
« Utilise l'outil
list_summariesdu connecteur mcp-crea et montre-moi le résultat. »« Appelle l'outil
latest_summaryet affiche le résumé renvoyé. »« Appelle l'outil
get_summaryavecdate = 2026-09-08. »« Lis la ressource
summaries://list. »« Lis la ressource
summary://2026-09-08. »« Réponds uniquement à partir des données du connecteur mcp-crea, sans tes connaissances générales. »
Outils disponibles : list_summaries (limit, 1–200), get_summary (date au format
AAAA-MM-JJ), latest_summary (sans paramètre).
Related MCP server: devto-mcp-server
Architecture
ÉTAPE 1 — Collecte ÉTAPE 2 — Synthèse + stockage ÉTAPE 3 — Exposition
┌────────────────────┐ ┌──────────────────────────┐ ┌──────────────────┐
│ GitHub API │ │ API Claude │ │ Serveur MCP │
│ dépôts en vogue │──┐ │ → JSON structuré │ ┌──▶│ │
│ releases (7 j) │ ├──▶├──────────────────────────┤───┤ │ summaries://list │
├────────────────────┤ │ │ SQLite │ │ │ summary://{date} │
│ Dev.to API │──┘ │ 1 résumé / jour (UNIQUE)│ └──▶│ 3 outils MCP │
│ articles du jour │ │ migrations auto │ └──────────────────┘
└────────────────────┘ └──────────────────────────┘Déduplication — la colonne summary_date porte une contrainte UNIQUE, et la
vérification a lieu avant l'appel à Claude : relancer deux fois dans la même journée ne
consomme aucun token.
Prérequis
Node.js ≥ 20 (testé sur 22.12)
Une clé API Anthropic — console.anthropic.com
Un jeton GitHub (facultatif, mais fait passer la limite de 60 à 5000 requêtes/heure)
Installation
npm install
cp .env.example .env # puis renseigner ANTHROPIC_API_KEY
npm run build # optionnel en développementLa base SQLite et ses tables sont créées automatiquement au premier lancement.
Configuration
Tout passe par le fichier .env (voir .env.example pour la liste complète).
Variable | Défaut | Rôle |
| — | Obligatoire pour générer un résumé |
|
| Modèle de synthèse |
| — | Jeton sans scope ; lève la limite de 60 req/h |
|
| Fenêtre des tendances et releases |
|
| Nombre d'articles collectés |
|
| Emplacement du fichier SQLite |
|
|
|
Tous les logs partent sur
stderr:stdoutest réservé au protocole JSON-RPC du serveur MCP, et la moindre ligne parasite casserait la communication.
Utilisation
Générer le résumé du jour
npm run fetchINFO Collecting data (GitHub + Dev.to)...
INFO Dev.to: 15 article(s) collected.
INFO GitHub: 26 item(s) collected, 0 error(s).
INFO Generating summary with claude-opus-5 (41 item(s), effort high).
OK Summary for 2026-09-08 stored (id 1, 41 item(s)).Options (après -- avec npm) :
npm run fetch -- --skip-summary # collecte seule, aucun appel à Claude
npm run fetch -- --force # régénère et remplace le résumé du jour
npm run fetch -- --date=2026-09-01 # cible une autre dateConsulter les résumés
npm run list # catalogue des résumés stockés
npm run show # affiche le plus récent
npm run show -- 2026-09-08 # affiche une date préciseDémarrer le serveur MCP
npm run mcp # stdio : Claude lance lui-même le processus
npm run mcp:http # HTTP : http://127.0.0.1:3000/mcpEn stdio, le serveur reste en attente sans rien afficher : c'est normal, il est piloté par le client.
Brancher le serveur à un client MCP
Le serveur expose deux ressources et trois outils.
Ressource | Contenu |
| Catalogue JSON : date, titre, modèle, nombre d'éléments |
| Résumé JSON structuré d'une journée ( |
Outil | Paramètres |
|
|
|
|
| — |
Les outils permettent à Claude d'interroger la base en langage naturel : « montre-moi la veille du 8 septembre », « qu'est-ce qui est sorti côté Next.js ? ».
Claude Desktop — dans claude_desktop_config.json :
{
"mcpServers": {
"dev-stack-watcher": {
"command": "node",
"args": ["D:/CREA/2eAnnee/IA/dev-stack-watcher-mcp/dist/cli.js", "mcp"]
}
}
}Claude Code :
claude mcp add dev-stack-watcher -- node <chemin-absolu>/dist/cli.js mcpLancez npm run build au préalable, puis redémarrez le client.
Structure du projet
src/
├── fetcher/
│ ├── github.ts Dépôts en vogue + releases des 7 derniers jours
│ ├── devto.ts Articles populaires du jour
│ └── types.ts FeedItem et utilitaires partagés
├── summarizer/
│ ├── claude.ts Prompt, appel API, réessais réseau
│ └── storage.ts SQLite : migrations, déduplication, lecture/écriture
├── mcp/
│ ├── server.ts Serveur MCP : ressources, outils, transport stdio
│ └── http.ts Transport HTTP (sessions, sonde /health)
├── config.ts Configuration centralisée (.env)
├── logger.ts Journalisation sur stderr
├── cli.ts Interface en ligne de commande
└── index.ts Pipeline runWatch() + API publiqueDockerfile et docker-compose.yml permettent de lancer le projet en conteneur.
This server cannot be deployed
Maintenance
Related MCP Connectors
Access the GitHub API, enabling file operations, repository management, search functionality, and…
Summarize URLs, repurpose content, daily news digests, find competitors. Cost telemetry built in.
Code intelligence for LLMs. Analyze, search, and retrieve code from any public git repository.
Connect AI assistants to your GitHub-hosted Obsidian vault to seamlessly access, search, and analy…
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceSummarizes GitHub discussions, issues, and pull requests by storing data locally for fast, token-efficient responses.16 npm78MIT
- AlicenseAqualityCmaintenanceProvides tools to search and retrieve articles from the dev.to API, including search by query, tag, or technology, and fetching full articles by ID or slug.5MIT
- AlicenseAqualityDmaintenanceEnables fetching daily news summaries from multiple RSS feeds, with tools to add, remove, and list news sources.41 npm1ISC
- AlicenseBqualityCmaintenanceEnables querying GitHub repos and stats, and managing DEV.to articles (list, create, update) through natural language.7MIT