Every PostgreSQL mailing list since 1991, linked to the commits, code, commitfest and docs.
Connect Remote server
claude mcp add --transport http archive https://pg.ddx.io/mcp
{
"mcpServers": {
"archive": {
"url": "https://pg.ddx.io/mcp"
}
}
}
{
"servers": {
"archive": {
"type": "http",
"url": "https://pg.ddx.io/mcp"
}
}
}
Settings > Connectors > Add custom connector
URL: https://pg.ddx.io/mcp
Tools 80 found in our last check
retrieve_contextSTART HERE for a question about PostgreSQL. Searches every mailing list (inbox narrows it) with hybrid keyword + semantic ranking and returns cited passages that fit token_budget (default 4000, max 32000): one passage per thread, each the author's own words (quotes, signature an…
animal_historyRun timeline for one animal. Filterable by branch and start cutoff; ordered newest first.
animal_owner_contributionsAnimals run by one owner: list, branches each tracks, last status, first_seen_at and elapsed days since first observation.
blame_symbolShow the commit history that modified a symbol's file, filtered to the symbol's line range.
browse_by_dateBrowse threads within a specific date range. Useful for exploring what was discussed during a particular time period.
build_status_freshnessMost recent :entry/last-build-at observation across all entries. Use to detect a stalled cfbot scraper.
buildfarm_overviewHigh-level buildfarm health: animal count, recent run counts, currently-failing animals, top owners, OS / branch breakdown, and freshness.
check_upstream_statusCheck whether a pull request has been merged upstream. Returns the latest patch series head commit and any merge information.
code_index_statusGet code indexing statistics: files indexed, symbol counts by kind and language, edge count, community count.
codebase_mapGet a directory-level overview of the codebase showing file counts and symbol counts per directory.
commit_buildfarm_statusBuildfarm results for one PostgreSQL commit: every animal that built it, with branch, status (passed/failed/flapping), the failing stage and the log url, plus a {passed, failed, flapping, unknown} rollup. commit_sha is a SHA (>= 7 hex) or a branch, tag or major version (17, 9.6)…
commit_historyEverything linked to one commit: subject, author and date with its sha, the mail thread its Discussion: link names (participants resolved to people and organizations), the commitfest entry if tracked, and Discord mentions. For postgres also first_releases (per branch the change…
commitfest_statsOverview of all indexed commitfests: count by status, top contributors (entries authored), distinct people / commitfests / entries totals.
contribution_summarySummary of contribution counts per release: unique people, distinct commits, role breakdown (count(DISTINCT commit_sha) per role, canonical authoritative repos only), and revert-commit count. Powers the /community hero strip.
detect_changesDetect which symbols changed between two commits by comparing file content hashes.
discussion_linksDiscussion / Closes / Fixes / Backpatch-through trailers attached to one commit. Returns the raw trailer text and any URL extracted. For the messages those links resolve to, plus the committers announcement and messages citing the SHA, use git_search (mail_refs on each result).
embedding_statusGet embedding coverage statistics: how many messages have embeddings, which model was used, and when embeddings were last generated.
entry_branchesRepository branches tracked for a commitfest entry. Joins commitfest.entry_repos with ag_repositories so callers see repo name + branch_name + is_authoritative.
entry_historyStatus changes for a commitfest entry across commitfests. The relational table doesn't carry an audit log, so we approximate the patch's lifeline by joining on shared :entry/thread-message-id (precise) and falling back to title-prefix substring (weak).
find_breaksAnimals that failed on a branch within the time window bounded by two commit SHAs. The window is defined by the earliest started_at observed for either SHA on that branch — not by git topological order, since the buildfarm tables don't carry commit ordering.
find_contributionsFind raw contribution rows for one person: git commit SHAs / buildfarm animals tagged with a role + release. Useful for drill-down on a contributor's recent work.
find_dead_codeFind functions/methods with zero incoming call graph edges (potentially unused code).
find_entries_for_authorFind commitfest entries where the given person is an author. Looks up by email (exact) or by name (substring, case-sensitive).
find_entries_for_threadFind commitfest entries linked to a pgsql-hackers thread by Message-ID. Resolves any Message-ID in the thread to the entries whose commitfest page links it.
find_entries_with_failures_onCross-domain feed: recent failed buildfarm runs for a named animal, plus commitfest entries with cfbot :failing rollups whose tracked branches overlap the animal's. Note: buildfarm runs commit SHAs and cfbot runs cf/<id> branches, so this verb correlates by branch overlap and ti…
find_failing_patchesCommitfest entries whose latest cfbot build fails on at least one platform: cf_id, title, entry_status and commitfest_number. entry_status filters (default the active reviewable statuses, e.g. needs-review, ready-for-committer); platform narrows to one CI platform; limit caps th…
find_failing_runsMost recent failing buildfarm runs across the entire fleet. Filterable by branch and start cutoff. Use to answer 'what is broken right now?'
find_passing_long_pendingGreen patches stuck in review: entries whose builds pass on every platform yet whose :entry/last-updated is older than N days. Useful for the 'why isn't this committed yet?' question.
find_patches_by_platform_statusPatches that pass on some platforms but not others. Example: passing on linux but failing on macos -> portability bug.
find_patternSearch for a regex pattern in code symbol bodies. Uses trigram indexes for acceleration.
find_rebase_needed_patchesEntries cfbot reports as no longer applying to master tip (:entry/applies-cleanly is false). These need an author rebase.
find_related_discussionsFind mailing list messages related to a commit, topic, or PR. A postgres commit SHA (7-40 hex) returns the mail that refers to that commit (match_mode commit): its Discussion: threads first, then the committers announcement, then messages citing the hash, each with how_it_refers…
find_similar_messagesFind messages similar to a given message using its embedding vector. Useful for finding related discussions or duplicate threads.
get_animalProfile of one buildfarm animal: hardware/OS/compiler/owner, branches tracked, last build status, plus the last 20 runs (any branch).
get_attachmentThe content of one attachment of a mail message (a patch, a log, a test case), chosen by 1-based index or a filename substring, as listed in get_message/get_thread attachments. Text attachments come back as decoded text (a .patch is ready to read or `git apply`), binary ones as…
get_author_messagesFind messages by a specific author, optionally filtered by date range. Uses the f: (from) search prefix.
get_calleesFind all symbols that the given symbol calls/references (forward call graph).
get_callersReverse call graph: the symbols that call or reference qualified_name (from search_symbols), each with its file and lines, like `git grep -w <name>` restricted to call sites. HEAD only; macro expansion and function pointers are not followed. limit caps the list. Read a caller wi…
get_commitfestGet a single commitfest with entries grouped by status and the top contributors (authors with the most entries).
get_communitiesList Louvain community clusters detected in the call graph. Communities group related symbols by functional area.
get_communityGet details and member symbols for a specific community.
get_contributorA contributor's profile by email (exact) or name (substring): canonical name, page hash, totals and per-release counts by role (authored, reviewed, committed, reported, ...), the 5 latest credited commits (commit_sha = the git SHA, roles = every role they had in it), and buildfa…
get_contributor_historyShow all past mailing list submissions by a contributor (matched by email address or name).
get_dependentsGet transitive dependents: all symbols in the blast radius if this symbol changes.
get_doc_pageOne PostgreSQL documentation page as text: path (e.g. "brin.html" or "sql-createtable.html") and optional version ("17", "current"; default the latest). Returns its url, path and stored text (body) with fetched_at. Use search_docs to find the path. Cite the returned url.
get_entryOne commitfest entry by cf_id (the number in commitfest.postgresql.org/patch/<cf_id>/): title, status, commitfest, authors, reviewers, committer, its mail threads and branches. Read the thread with get_thread; cfbot state with find_failing_patches. Cite https://commitfest.postgr…
get_execution_flowsTrace execution flow paths through the call graph from entry points.
get_impactAnalyze the impact of modifying a symbol: risk level, blast radius, affected communities and execution flows.
get_inbox_infoGet metadata for an inbox (name, addresses, message count, last activity)
get_inbox_statsReturn aggregate statistics about an inbox: message counts by time period, top authors, and activity trends.
get_inbox_summaryPer-inbox summary: total messages, top 10 posters, thread count, date range, and lifetime average messages/day (total messages divided by the days spanned by the archive).
get_messageOne mail message by Message-ID: headers, in_reply_to/references, decoded body text (by default the author's own words: quoted replies and their attributions, forwarded or Outlook-quoted mail, inline patches, diffstats and the signature removed; full_text=true for everything, quo…
get_message_headersGet email headers as structured key/value pairs. Returns all headers or a specific header by name.
get_message_referencesDiscover cross-references in a message. Returns explicit References/In-Reply-To headers plus any Message-IDs found in the body text, with archive lookup for each.
get_new_messagesReturn messages newer than a given article number cursor, enabling agents to poll for new messages without re-scanning. Use after=0 for the first call, then use the returned last_article_num as the cursor for subsequent calls.
get_patch_branchesGet the git branches created from a patch series. Shows what branches were applied from email patches for code intelligence analysis.
get_patch_build_historyBuild matrix for one entry: per-platform/config status, log URL, observation time, applies-cleanly flag, rollup.
get_patch_seriesGet patch submission history for a forge pull request URL. Returns all iterations submitted to the mailing list.
get_raw_messageGet the complete raw RFC 822 email bytes for a message. Useful for agents that need to parse headers/structure themselves or forward messages.
get_repo_sync_statsGet commit frequency analysis and sync statistics for a repository. Returns median commit interval, recommended poll frequency, and recent fetch log.
get_repository_summaryPer-repository summary: total commits, top 10 contributors, branches, language breakdown (from indexed symbols), and a sampled most-touched-paths list.
get_signatureGet the function/method signature and doc comment for a symbol.
get_source_infoDetail for a single source by name, the same row list_sources returns. Returns kind, item_count, last_update, next_sync, freshness_status, and description; for a postgresql.org list also poll: the list poller's p_new (probability of mail we lack since its last poll), due, next_p…
get_symbolGet full details for a code symbol by its qualified name, including source code, signature, documentation, and file location.
get_tests_forFind test symbols that reference the given symbol.
get_threadA mail thread, found by any Message-ID in it, oldest first. Each message: from, to, cc, date, message_id, decoded body text (by default the author's own words: quoted replies, signature and inline patch removed; full_text=true for the whole decoded text; never raw MIME), attachm…
get_thread_referencesCross-reference graph for an entire thread. Collects all Message-IDs referenced in body text across all messages in the thread and resolves which other threads they point to.
get_wiki_historyGet revision history for a wiki page.
get_wiki_pageOne wiki.postgresql.org page by title: its latest revision content with author and date. Titles are as on the wiki ("Don't Do This", "Todo"). Use search_wiki to find a title, get_wiki_history for older revisions. Cite https://wiki.postgresql.org/wiki/<title>.
git_analyze_activityShow commit activity over time, bucketed by period. Useful for understanding development pace and trends.
git_analyze_authorsGet commit statistics per author: total commits, first and last commit dates. Ranked by commit count.
git_analyze_bus_factorIdentify files with the fewest distinct authors (bus factor risk). Files modified by only one person are knowledge silos.
git_analyze_churnIdentify the most frequently modified files in the repository. High-churn files may indicate hotspots or unstable code.
git_analyze_couplingFind files that are frequently changed together. Logical coupling can reveal hidden dependencies between components.
git_analyze_hotspotsAggregate file churn by directory to find the most actively changed areas of the codebase.
git_blameFile version history, not a per-line blame: the commits that changed a file on the history of a commit (like `git log <rev> -- <path>`), newest first, each with sha, commit_id, author, date, summary and status (added/modified/deleted). Renames are not followed. Up to `limit` com…
git_diffTwo modes: (1) commit-range mode — pass base_branch and head_branch to get the list of commits unique to head_branch (set difference base..head), optionally filtered by author/message/path; (2) content-diff mode — pass from_commit and to_commit to compute file-level unified diff…
git_logCommit history like `git log`, newest first, filtered by path (commits touching a file), author (substring), since/until (YYYY-MM-DD or RFC 3339) and branch (any branch, tag or major version such as 17 or 9.6; default the indexed default branch). Each commit: sha (40-hex, cite i…
git_searchSearch postgres commit messages (or file paths with search_in=paths) by keywords, newest first (all words must appear, case-insensitive; like `git log -i --grep` with every word). Each commit: sha (40-hex, cite it), commit_id, message, author, date, people credited, and mail_ref…
git_show_fileRead a file at any commit, branch, tag or major version (like `git show <rev>:<path>`), from the git clone. commit takes a SHA (>= 7 hex), branch, tag, 17 or 9.6, <ref>~N or a commit_id; default HEAD; an unknown name or path is an error, never a silent HEAD. Returns at most 2000…
Details
| Endpoint | https://pg.ddx.io/mcp (Streamable HTTP) |
| Endpoint | https://pg.ddx.io/mcp/sse (SSE) |
| First published | 23 Oct 2026 |
| Last updated | 23 Oct 2026 |
| Registry name | io.ddx.pg/archive |
More developer tools servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
