Add repository traffic/insights tools (views, clones, referrers, paths)

Aperta
#3,164 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
76/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
github, go
Ambito
api, backend

Direzione di ricerca

Inizia leggendo gli strumenti esistenti nel toolset repos e i metodi fissati di go-github ListTrafficViews, ListTrafficClones, ListTrafficReferrers e ListTrafficPaths. Aggiungi i quattro strumenti di sola lettura con i parametri indicati e il requisito di ambito del repository, quindi verifica che views e clones accettino suddivisioni per giorno o settimana, mentre referrers e paths no.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

request ai review
Describe the feature or problem you'd like to solve

The server has no way to read a repository's traffic/insights data. There are no tools wrapping the four traffic endpoints:

Proposed tool GitHub endpoint Returns
get_traffic_views GET /repos/{owner}/{repo}/traffic/views Page views + unique visitors (14-day, daily or weekly)
get_traffic_clones GET /repos/{owner}/{repo}/traffic/clones Git clones + unique cloners (14-day, daily or weekly)
get_traffic_referrers GET /repos/{owner}/{repo}/traffic/popular/referrers Top 10 referring sites
get_traffic_paths GET /repos/{owner}/{repo}/traffic/popular/paths Top 10 most-visited paths

Today an agent can read stars and forks but has no view into whether a repo is actually being visited or cloned, which is the primary signal for measuring adoption and reach of a project. This is a read-only capability.

Proposed solution

Add the four tools above under the existing repos toolset, each ReadOnlyHint: true.

The implementation is thin because the pinned go-github client already exposes all four methods (RepositoriesService.ListTrafficViews, ListTrafficClones, ListTrafficReferrers, ListTrafficPaths), so no new HTTP plumbing is needed. The views/clones tools take an optional per parameter (day | week) mapping to TrafficBreakdownOptions; referrers/paths take just owner/repo.

One note on access: GitHub gates these endpoints behind push access to the repo (for GitHub Apps, the repository Administration: Read permission), so the tools should be annotated to require the repo scope rather than treated as public-read, even though the endpoints exist on public repos.

I'm happy to open a PR for this if the capability is something you'd accept.

Example prompts or workflows (for tools/toolsets only)
  1. "How many unique visitors and clones did owner/repo get in the last two weeks?"
  2. "Where is traffic to my repo coming from? Show me the top referrers."
  3. "Which pages/paths in owner/repo are people actually viewing?"
  4. "Compare views vs. clones week over week for owner/repo and tell me if adoption is trending up."
  5. "Build me a weekly adoption report for my repo: stars, forks, views, unique visitors, and clones." (traffic is the missing piece today; stars/forks are already covered)
Additional context

Traffic data has a 14-day rolling retention window on GitHub's side, so these tools are especially useful to agents that snapshot the data on a schedule for longer-term trend tracking.

Lingua principale
Go
Stelle
33.1k
Fork
5k
Merge medio
2g 15h
PR unite (30g)
27

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di github/github-mcp-server

Tutte le issue di github/github-mcp-server

Issue simili

Altre issue su Go

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.