In breve
Lascia che la tua AI legga il tuo Gitea: trova repository, gestisci issue e pull request con i relativi commenti, file, diff e revisioni, controlla release e organizzazioni, e leggi branch, commit e file. gitea.com o il tuo server Gitea, con un token di accesso. Sola lettura.
Configurazione guidata
Collega Gitea a ChatGPT in 2 minuti
Avvia la prova gratuita su AnythingMCP Cloud, collega Gitea con la configurazione guidata e aggiungi il tuo URL MCP a ChatGPT. Senza codice e senza server da gestire.
Nessuna carta di credito · 7 giorni di prova · Alternativa self-host disponibile
Il plugin AnythingMCP nella directory di ChatGPT risponde, su AnythingMCP Cloud, a domande sui database aziendali (PostgreSQL, MySQL, SQL Server, Oracle, SAP HANA, SQLite, MongoDB, in sola lettura): apri la scheda (si apre in una nuova scheda) e clicca Install plugin. Tutti gli altri connettori si aggiungono a ChatGPT come server MCP personalizzato con l'URL MCP del tuo AnythingMCP.
Prova a chiedere
Prompt di esempio per Gitea
Clicca su un prompt per copiarlo. Incollalo in Claude, ChatGPT, Cursor, Gemini, Copilot o OpenClaw per eseguirlo contro questo connettore.
Claude è un'AI e può sbagliare. Verifica sempre le risposte.
💡 Nessuna installazione? Usa direttamente cloud.anythingmcp.com. Accedi, clicca Connectors → Gitea, incolla le tue credenziali, genera una chiave API MCP — fatto. Niente Docker, niente
git clone, nessun server locale.
Gitea + ChatGPT
Lascia che la tua AI legga il tuo Gitea: trova repository, gestisci issue e pull request con i relativi commenti, file, diff e revisioni, controlla release e organizzazioni, e leggi branch, commit e file. gitea.com o il tuo server Gitea, con un token di accesso. Sola lettura.
Prerequisiti
Consulta le istruzioni complete di configurazione incluse nel connettore (visibili nello store dell'app quando selezioni il connettore). Le variabili d'ambiente richieste per questo connettore sono:
GITEA_URL, GITEA_TOKEN
Passaggio 1 — Ottieni le credenziali
La configurazione richiede circa 2 minuti. Ti serve un account su gitea.com o sul tuo server Gitea, e un token di accesso con permesso di lettura per Repository, Issue, Organization e User.
- In Gitea, clicca il tuo avatar, poi Settings, poi Applications. Sotto Manage Access Tokens, digita un nome (ad esempio "AnythingMCP") e imposta Repository, Issue, Organization e User su Read (gli scope
read:repository,read:issue,read:organizationeread:user). Su una versione di Gitea senza scope per i token, il token ottiene l'accesso completo del suo utente. - Clicca Generate Token e copia subito il token: Gitea lo mostra una sola volta. Incolla solo il token in
GITEA_TOKEN, senza la parolatokenoBearerdavanti. Il connettore aggiungetokenda solo. - Imposta
GITEA_URLsull'indirizzo con cui apri Gitea, ad esempiohttps://gitea.comohttps://git.example.com, senza/api/v1e senza slash finale. Se Gitea gira sotto un sotto-percorso, mantienilo (https://example.com/gitea). - Installa il connettore ed esegui
gitea_get_current_user: mostra l'utente a cui appartiene il token e conferma che indirizzo e token funzionano.
Sola lettura: tutti i 30 strumenti si limitano a leggere. Il connettore non può creare, modificare o eliminare nulla in Gitea, e l'AI vede esattamente ciò che può vedere l'utente del token.
Cosa legge: repository (cercati nell'intera istanza, oppure elencati per il tuo utente, per un'organizzazione o per un altro utente), issue con commenti, etichette e milestone, pull request con i file modificati, diff, commit e revisioni, release con note e file allegati, organizzazioni con membri e team, branch, commit, l'albero dei file e il contenuto dei file. gitea_search_issues trova issue e pull request in tutti i repository che sono assegnate a te, create da te o in attesa della tua revisione.
Repository e numeri: ogni repository richiede owner (un utente o un'organizzazione) e repo, le due parti di https://host/owner/repo. Issue e pull request condividono un'unica sequenza di numeri per repository. Gitea tratta anche una pull request come un'issue, quindi gitea_get_issue e gitea_list_issue_comments funzionano anche con il numero di una pull request per ottenerne titolo, etichette e conversazione, mentre gitea_get_pull_request, gitea_get_pull_request_files e gitea_get_pull_request_diff forniscono il lato del codice.
Il tuo server: un Gitea su un host interno (un IP privato o un nome interno) richiede un AnythingMCP self-hosted sulla stessa rete, con il nome host in SSRF_ALLOWED_HOSTS, altrimenti la protezione in uscita blocca la chiamata. Forgejo, e Codeberg che lo usa, offrono le stesse route API v1, quindi dovrebbe funzionare anche un indirizzo come https://codeberg.org. Il connettore è scritto per l'API di Gitea.
Limiti: un server Gitea restituisce 30 elementi per pagina per impostazione predefinita e al massimo 50 (la sua impostazione MAX_RESPONSE_ITEMS), quindi l'AI richiede la pagina successiva invece di un limite più grande. I diff delle pull request e i contenuti dei file oltre 200 KB vengono troncati: apri l'html_url della pull request per il resto.
Errori comuni: 401 significa che il token è errato, scaduto o eliminato, oppure che GITEA_URL punta a un altro server. 403 significa che al token manca uno scope necessario alla chiamata (Gitea lo indica nel messaggio), ad esempio read:issue per le issue o read:organization per le organizzazioni. 404 significa che il repository, l'issue o il file non esiste oppure l'utente non può vederlo: Gitea risponde 404 per le risorse private che nasconde. 422 indica un campo mancante o non valido.
Il connettore non crea né modifica issue, commenti, pull request, release, branch o file, non esegue merge né approvazioni, e non copre esecuzioni e workflow di Actions, pacchetti, wiki, notifiche, webhook, deploy key o amministrazione.
Passaggio 2 — Installa l'adapter
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
Passaggio 3 — Aggiungi il connettore in ChatGPT
L'URL del tuo server: in AnythingMCP, apri MCP Servers → il server su cui si trova questo connettore, e copia il suo URL (
https://cloud.anythingmcp.com/mcp/…). Usalo ovunque questa guida mostriYOUR_SERVER_ID.
ChatGPT aggiunge i server MCP come plugin nella sua pagina Plugins, sul web e con i piani a pagamento. La modalità sviluppatore non è più necessaria. In un workspace Business solo amministratori e proprietari possono aggiungerne uno; in Enterprise ed Edu un amministratore può concedere il permesso Create plugins with MCPs.
- Vai su chatgpt.com/plugins, clicca Add, poi Add custom MCP server.
- Inserisci un nome, ad es. Name:
Gitea. - Sotto Connection, inserisci il Server URL
https://cloud.anythingmcp.com/mcp/YOUR_SERVER_IDe lascia Authentication su OAuth. - Seleziona I understand and want to continue, poi Create as a plugin. Quando ChatGPT lo chiede, accedi ad AnythingMCP e consenti l'accesso.
- Installa il nuovo plugin dai tuoi plugin personali, poi digita @ in una chat e selezionalo.
Strumenti disponibili
| Tool | Cosa fa |
|---|---|
gitea_get_current_user | Ottiene l'utente Gitea a cui appartiene il token: id, login, full_name, email, is_admin e html_url |
gitea_search_repositories | Cerca nell'intera istanza i repository che il token può vedere per parola chiave, topic, tipo o stato di archiviazione: full_name, description… |
gitea_list_my_repositories | Elenca i repository di proprietà dell'utente del token, con full_name, description, default_branch, private, archived, stars_count… |
gitea_list_organization_repositories | Elenca i repository di un'organizzazione che l'utente del token può vedere: full_name, description, default_branch, private, archived… |
gitea_list_user_repositories | Elenca i repository di proprietà di un determinato utente che l'utente del token può vedere: full_name, description, default_branch, private, archived… |
gitea_get_repository | Ottiene un repository: description, default_branch, private, archived, fork, empty, size, stars_count, forks_count, open_issues_count… |
gitea_list_issues | Elenca le issue di un repository con filtri: number, title, state, labels, assignees, milestone, comments count, created_at, updated_at e… |
gitea_search_issues | Cerca issue e pull request in ogni repository che l'utente del token può vedere, oppure restringi a quelle assegnate a, create da, che menzionano… |
gitea_get_issue | Ottiene un'issue tramite il suo numero: title, body (Markdown), state, labels, assignees, milestone, due_date, comments count, created_at, closed_at… |
gitea_list_issue_comments | Elenca i commenti di un'issue, dal più vecchio: id, body (Markdown), user, created_at, updated_at e html_url |
gitea_list_labels | Elenca le etichette di un repository: id, name, color e description |
gitea_list_milestones | Elenca le milestone di un repository: id, title, state, description, due_on, open_issues e closed_issues |
gitea_list_pull_requests | Elenca le pull request di un repository: number, title, state, merged, mergeable, branch head e base, user, labels, created_at, updated_at… |
gitea_get_pull_request | Ottiene una pull request tramite il suo numero: title, body (Markdown), state, merged, mergeable, head e base (branch, sha, repository), additions… |
gitea_get_pull_request_files | Elenca i file modificati da una pull request: filename, previous_filename, status (added, modified, deleted, renamed), additions, deletions e… |
gitea_get_pull_request_diff | Legge il diff unificato di una pull request come testo semplice, per rivedere le modifiche effettive |
gitea_list_pull_request_commits | Elenca i commit di una pull request: sha, message, author, date e html_url |
gitea_list_pull_request_reviews | Elenca le revisioni di una pull request: id, reviewer, state (APPROVED, REQUEST_CHANGES, COMMENT, PENDING), body, comments_count e submitted_at |
gitea_list_releases | Elenca le release di un repository, dalla più recente: tag_name, name, body (note di rilascio in Markdown), draft, prerelease, published_at, gli allegati… |
gitea_get_latest_release | Ottiene la release più recente che non sia né una bozza né una pre-release: tag_name, name, body (note di rilascio), published_at, assets e… |
gitea_get_release_by_tag | Ottiene una release tramite il nome del suo tag: name, body (note di rilascio), draft, prerelease, published_at, assets e html_url |
gitea_list_my_organizations | Elenca le organizzazioni a cui appartiene l'utente del token: name, full_name, description, visibility e website |
gitea_get_organization | Ottiene un'organizzazione: name, full_name, description, website, location, visibility e avatar_url |
gitea_list_organization_members | Elenca i membri di un'organizzazione che l'utente del token può vedere: login, full_name e html_url |
gitea_list_organization_teams | Elenca i team di un'organizzazione: id, name, description, permission, e se il team copre tutti i repository |
gitea_list_branches | Elenca i branch di un repository: name, l'ultimo commit (id, message, timestamp), protected e chi può fare push |
gitea_list_commits | Elenca i commit di un repository, dal più recente: sha, message, author, date e html_url |
gitea_get_commit | Ottiene un commit tramite branch, tag o sha: message, author, committer, date, parents, html_url e, con files, i file modificati e le statistiche |
gitea_get_tree | Elenca i file e le cartelle di un repository a un branch, tag o commit: path, type (blob per un file, tree per una cartella), mode e size |
gitea_get_file_content | Legge un file di un repository come testo, a un branch, tag o commit (il branch predefinito se ref viene omesso) |
FAQ
Il piano gratuito di ChatGPT funziona con i server MCP personalizzati? OpenAI documenta i server MCP personalizzati solo per i piani a pagamento; il piano Free non è nell'elenco.
Prossimi passi
Questa guida ti è stata utile?