@pidgeon-ai/mcp

MCPattestatoattivo
v0.5.1UnknownMITAggiornato 1 g fanpmGitHub

Model Context Protocol server for Pidgeon. A protocol adapter over the API, and nothing more.

Stato dell’endpointattivo
verificato 18 h fa · 378 ms · autenticazione richiesta
100 % degli ultimi 1 controllo ha raggiunto questo endpoint
Funziona in
ClaudeCursorCopilotChatGPTGemini

Dedotto dai trasporti dichiarati da questo annuncio (stdio, streamable-http). Un client che non compare qui non è escluso — semplicemente Forge non è in grado di confermarlo.

Build attestato
Un’attestation di provenienza verificata lega questo artefatto al repository indicato. Nessuno ha ancora rivendicato l’annuncio — questo dimostra dove è stato costruito il codice, non chi lo sostiene.
15Download/sett.
1 g faUltimo aggiornamento
Richiede 1 credenziale prima di poter funzionare
  • PIDGEON_API_KEYChiave APIobbligatoria

    Your Pidgeon API key (pgn_live_…). Make one under Developers → API keys, or let an agent sign itself up: https://pidgeon.ai/skill.md

Dichiarato dall’autore nel registro MCP ufficiale. Forge does not store, broker, or ever see these values — the config below is scaffolded with placeholders you fill in locally.

Pacchetto
AutoreUnknown
LicenzaMIT
Versione0.5.1
Fontenpm+mcp-registry
Stato di fiducia
B
65/100Buono
✓Presente nell’indice di Forge+10/10
✓Identità verificata · build attestato+20/20
—Firma di pubblicazione Ed25519+0/5
→ Inclusa automaticamente quando il publisher esegue `forge publish`
—Verifica del dominio+0/5
→ Publisher: ospita /.well-known/forge.json sulla homepage del pacchetto con { "publisher": "<github-login>" }
✓npm Trusted Publishing (Sigstore)+5/5
—Corrispondenza del maintainer npm+0/5
→ Publisher: aggiungi il login GitHub verificato ai maintainer del pacchetto npm (npm owner add <login>)
✓Analisi CVE · pulita+30/30
—Analisi statica · pulita+0/20
→ Rilevati script di installazione sospetti o codice offuscato
Incollalo in Claude Code, Cursor o qualsiasi assistente di IA per colmare tutte le lacune
StatoIdentità verificata
PublisherNon verificato
FirmaNon firmato
Dominio—
Provenienza✓ Verificato con Sigstore · 8aafd88
Dipendenze✓ 60 risolte+ · nessuna vulnerabile
Superficie di strumenti26 strumenti · 1 privilegiati
Analisi di sicurezza⚠ Avvisi (1)v0.8.0 · oggiQuanto è efficace questa analisi?
PROMPTtool:send_messageExfiltration-shaped instruction
ValutazioniNessuna
Indicizzato17 ott 2026

La verifica conferma l’identità del publisher (la proprietà del repo), non la sicurezza del codice. L’analisi di sicurezza copre i CVE noti e gli script di installazione sospetti.

Strumenti

26 strumenti · 1 privilegiati · 1 segnalati per injection
Estratto staticamente dal pacchetto pubblicatov0.8.0 · 11h ago

Letto dal codice che npm distribuisce davvero, al momento dell’analisi. Il pacchetto non è mai stato eseguito. Gli strumenti registrati dinamicamente a runtime, o nascosti in codice impacchettato o minificato, possono sfuggire — quindi questo è un limite inferiore della superficie di strumenti, non un censimento completo.

list_addressesThe addresses this credential can reach. Use `pod_id` to list one pod’s — one of your own customers — or `tenant_id` for your own opaque grouping.

The addresses this credential can reach. Use `pod_id` to list one pod’s — one of your own customers — or `tenant_id` for your own opaque grouping.

Per questo strumento non è stato pubblicato alcuno schema di input.

create_addressNessuna descrizione pubblicata

Questo strumento non ha pubblicato alcuna descrizione. Forge non se la inventa.

get_addressOne address, by id. Answers its type, its capabilities, its send policy and its end date, which is how to check what an address is allowed to do before using it.

One address, by id. Answers its type, its capabilities, its send policy and its end date, which is how to check what an address is allowed to do before using it.

Per questo strumento non è stato pubblicato alcuno schema di input.

list_threadsConversations in one address, newest first. Filter by `status` for the queue an agent should be working, by `owner_type` for what kind of thing is answering, or by `assignee_id` for what one person has taken — `unassigned` is the queue nobody has.

Conversations in one address, newest first. Filter by `status` for the queue an agent should be working, by `owner_type` for what kind of thing is answering, or by `assignee_id` for what one person has taken — `unassigned` is the queue nobody has.

Per questo strumento non è stato pubblicato alcuno schema di input.

get_threadOne conversation, by id. Every webhook payload carries a `thread_id`, so this is how a handler turns an event into the conversation it is about.

One conversation, by id. Every webhook payload carries a `thread_id`, so this is how a handler turns an event into the conversation it is about.

Per questo strumento non è stato pubblicato alcuno schema di input.

list_messagesThe messages of one conversation, oldest first — the text to read before replying. Bodies are here; attachments are metadata only.

The messages of one conversation, oldest first — the text to read before replying. Bodies are here; attachments are metadata only.

Per questo strumento non è stato pubblicato alcuno schema di input.

search_messagesFull-text search across every address this credential can reach, ranked by relevance. Name an `identity_id` to search exactly one. Every result carries the `identity_id` it was found in, because a hit you cannot attribute to an address is a hit you cannot open.

Full-text search across every address this credential can reach, ranked by relevance. Name an `identity_id` to search exactly one. Every result carries the `identity_id` it was found in, because a hit you cannot attribute to an address is a hit you cannot open.

Per questo strumento non è stato pubblicato alcuno schema di input.

send_messagerischio di injectionSend from an address this credential may send as. Refused if the address’s send policy does not permit the recipient, or if the recipient previously bounced or reported mail as spam.

Send from an address this credential may send as. Refused if the address’s send policy does not permit the recipient, or if the recipient previously bounced or reported mail as spam.

INIEZIONEExfiltration-shaped instructionSend from an address this credential may send as. Refused if the address’s send policy does not …

Per questo strumento non è stato pubblicato alcuno schema di input.

get_messageNessuna descrizione pubblicata

Questo strumento non ha pubblicato alcuna descrizione. Forge non se la inventa.

await_messageNessuna descrizione pubblicata

Questo strumento non ha pubblicato alcuna descrizione. Forge non se la inventa.

reply_to_messageThe recipients, the subject and the thread are read off the message being answered, so you bring the words and nothing else. Use `to` only to change who it goes to.

The recipients, the subject and the thread are read off the message being answered, so you bring the words and nothing else. Use `to` only to change who it goes to.

Per questo strumento non è stato pubblicato alcuno schema di input.

update_threadWho owns a conversation and where it has got to. `owner_type: "human"` hands it to a person — it appears in the web inbox and `thread.updated` tells whatever was driving it that it no longer is; `"agent"` takes it back. `status` is the queue it sits in, and `assignee_id` names which person has it.

Who owns a conversation and where it has got to. `owner_type: "human"` hands it to a person — it appears in the web inbox and `thread.updated` tells whatever was driving it that it no longer is; `"agent"` takes it back. `status` is the queue it sits in, and `assignee_id` names which person has it.

Per questo strumento non è stato pubblicato alcuno schema di input.

update_messageNessuna descrizione pubblicata

Questo strumento non ha pubblicato alcuna descrizione. Forge non se la inventa.

list_send_rulesThe allow and block list of one address, and the send policy it hangs off. Read this when a send was refused.

The allow and block list of one address, and the send policy it hangs off. Read this when a send was refused.

Per questo strumento non è stato pubblicato alcuno schema di input.

list_receive_rulesThe rules that decide what reaches one address — reject, spam, trash, archive or inbox, per sender or per domain. Read this when mail you expected did not arrive.

The rules that decide what reaches one address — reject, spam, trash, archive or inbox, per sender or per domain. Read this when mail you expected did not arrive.

Per questo strumento non è stato pubblicato alcuno schema di input.

list_foldersEvery folder of one address with its counts. `total` and `unread` are null where we do not count that folder — null is "we do not say", not zero.

Every folder of one address with its counts. `total` and `unread` are null where we do not count that folder — null is "we do not say", not zero.

Per questo strumento non è stato pubblicato alcuno schema di input.

list_folderOne folder of one address, newest first, a conversation per row — where `list_threads` says which conversations exist, this says where they are filed and what they look like in a list. The response carries a `sync_cursor`: hand it to `list_changes` to be told what moved instead of reading the folde…

One folder of one address, newest first, a conversation per row — where `list_threads` says which conversations exist, this says where they are filed and what they look like in a list. The response carries a `sync_cursor`: hand it to `list_changes` to be told what moved instead of reading the folde…

Per questo strumento non è stato pubblicato alcuno schema di input.

list_changesEverything that moved in one mailbox since a `sync_cursor`, arrivals included, so a long-running agent does not re-read a folder to find one new message. `since` is the `sync_cursor` from `list_folder`, never a page cursor. A cursor older than thirty days is refused with `resync`: list the folders…

Everything that moved in one mailbox since a `sync_cursor`, arrivals included, so a long-running agent does not re-read a folder to find one new message. `since` is the `sync_cursor` from `list_folder`, never a page cursor. A cursor older than thirty days is refused with `resync`: list the folders…

Per questo strumento non è stato pubblicato alcuno schema di input.

list_eventsEvery event across every mailbox this credential reaches — mail received, sent, delivered, bounced, filed. Workspace-wide unless you name an `identity_id`. Pass `after` with a timestamp to read forward from a moment; with neither `after` nor `cursor` it returns the newest first.

Every event across every mailbox this credential reaches — mail received, sent, delivered, bounced, filed. Workspace-wide unless you name an `identity_id`. Pass `after` with a timestamp to read forward from a moment; with neither `after` nor `cursor` it returns the newest first.

Per questo strumento non è stato pubblicato alcuno schema di input.

list_labelsLabels belong to an address, not to the workspace, so the same name on three addresses is three labels with three ids. Read this before applying one.

Labels belong to an address, not to the workspace, so the same name on three addresses is three labels with three ids. Read this before applying one.

Per questo strumento non è stato pubblicato alcuno schema di input.

create_labelA label on one address. `colour` is one of eight names — slate, red, amber, green, teal, blue, violet, pink — and defaults to slate; it is not a hex value.

A label on one address. `colour` is one of eight names — slate, red, amber, green, teal, blue, violet, pink — and defaults to slate; it is not a hex value.

Per questo strumento non è stato pubblicato alcuno schema di input.

apply_labelThe label has to belong to the same address the conversation is in — `list_labels` for that address gives you the right id. Applying is how an automation records what it decided, since it cannot mark anything read.

The label has to belong to the same address the conversation is in — `list_labels` for that address gives you the right id. Applying is how an automation records what it decided, since it cannot mark anything read.

Per questo strumento non è stato pubblicato alcuno schema di input.

remove_labelprivilegiatoRemoves one label from one conversation. The label itself is untouched.

Removes one label from one conversation. The label itself is untouched.

Per questo strumento non è stato pubblicato alcuno schema di input.

list_podsA pod is a container for one of your own customers: it holds addresses and domains, and **mail sent from it lands on its own sending reputation**, so one customer cannot damage another’s delivery. Every account has one to start with, marked `is_default` — that is where an address goes when you name…

A pod is a container for one of your own customers: it holds addresses and domains, and **mail sent from it lands on its own sending reputation**, so one customer cannot damage another’s delivery. Every account has one to start with, marked `is_default` — that is where an address goes when you name…

Per questo strumento non è stato pubblicato alcuno schema di input.

create_podA container for one of your customers, with its own sending reputation. Give it a `name` a person would recognise and, if your own system has an id for this customer, `client_id` — carried and returned, never parsed. Then pass the new pod’s id as `pod_id` to `create_address`. There is no delete: a…

A container for one of your customers, with its own sending reputation. Give it a `name` a person would recognise and, if your own system has an id for this customer, `client_id` — carried and returned, never parsed. Then pass the new pod’s id as `pod_id` to `create_address`. There is no delete: a…

Per questo strumento non è stato pubblicato alcuno schema di input.

get_metricsNessuna descrizione pubblicata

Questo strumento non ha pubblicato alcuna descrizione. Forge non se la inventa.

21 strumenti su 26 hanno pubblicato una descrizione.

I nomi e le descrizioni degli strumenti sono scritti dal publisher e mostrati alla lettera come testo inerte. Sono le stringhe che un client MCP passa a un modello, quindi Forge vi cerca schemi di prompt injection — ogni rilievo compare insieme all’analisi di sicurezza qui sopra. «Privilegiato» è una corrispondenza di parola chiave sul nome dello strumento, non una verifica di ciò che fa: un nome innocuo può comunque fare qualsiasi cosa.

Descrizione

Model Context Protocol server for Pidgeon. A protocol adapter over the API, and nothing more.

Parole chiave
pidgeonemailmcpmodel-context-protocol
Alternative
Confronto delle superfici di strumenti…

Albero delle dipendenze

Ciò che una scansione di Forge ha risolto dai metadati npm il 2026-10-17: risoluzione osservata, non una dichiarazione dell'editore.

60 pacchetti risolti · 3 diretti · nessuno con avvisi di sicurezza La risoluzione si ferma alla profondità 4 e a 60 pacchetti.

La scansione si è fermata al limite di profondità 4. Tutto ciò che sta sotto quel livello non è mai stato risolto.

La scansione si è fermata al limite di 60 pacchetti. Il resto dell'albero non è mai stato risolto.

Altri 36 pacchetti risolti non vengono disegnati qui (limite di visualizzazione: 24). Ogni dipendenza con un avviso di sicurezza viene disegnata comunque. Inventario completo (SBOM CycloneDX)

Dichiarate ma non risolte

55 dipendenze dichiarate non sono mai arrivate nell'albero. Mancano dalla risoluzione di Forge, non dal pacchetto.

+43 altre non elencate. I conteggi per motivo qui sopra le comprendono tutte.

Non seguite: peerDependencies. Questo albero copre solo le dipendenze di runtime, quindi ciò che queste comportano non è mai stato risolto.

Argomenti

Correlati in email