Skip to content

feat(catalog): discover the catalog when adding a domain or site URL - #59

Merged
adamtagscherer merged 3 commits into
mainfrom
feat/catalog-add-discovery
Oct 29, 2026
Merged

adamtagscherer merged 3 commits into
mainfrom
feat/catalog-add-discovery

Conversation

@adamtagscherer

@adamtagscherer adamtagscherer commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

issue: vercel-labs/ai-catalog-sdk#45

ai-catalog catalog add now finds a site's catalog using the discovery methods in the AI Catalog spec, so you can pass a domain or a site URL instead of the exact catalog URL.

export AI_CATALOG_CACHE_DIR=$(mktemp -d)

alias ac=./target/debug/ai-catalog

ac catalog add nimblebrain https://bassethound.ai
Fetching catalog from https://bassethound.ai...
Found the catalog at https://bassethound.ai/.well-known/ai-catalog.json (html-link)
✓ "nimblebrain" added (1 entries)

ac catalog add nb nimblebrain.ai
Fetching catalog from nimblebrain.ai...
Found the catalog at https://nimblebrain.ai/.well-known/ai-catalog.json (html-link)
✓ "nb" added (1 entries)

ac catalog list
NAME         URL                                                 ENTRIES  LAST UPDATED          HASH
----------------------------------------------------------------------------------------------------------
nimblebrain  https://bassethound.ai/.well-known/ai-catalog.json        1  2026-10-27T13:30:06   feb95c98
nb           https://nimblebrain.ai/.well-known/ai-catalog.json        1  2026-10-27T13:30:26   06e69ea4

ac catalog update nimblebrain
Updating "nimblebrain"... (up to date)

ac search basset
IDENTIFIER                              NAME  DESCRIPTION                                                   TYPE                              CATALOG
--------------------------------------------------------------------------------------------------------------------------------------------------------------------
urn:air:bassethound.ai:mcp:bassethound  -     -                                                             application/mcp-server-card+json  https://bassethound.ai/.well-…
urn:air:bassethound.ai:mcp:bassethound  -     -                                                             application/mcp-server-card+json  https://bassethound.ai/.well-…

ac catalog add again bassethound.ai
Fetching catalog from bassethound.ai...
Found the catalog at https://bassethound.ai/.well-known/ai-catalog.json (html-link)
error: URL is already registered as "nimblebrain". Use `ai-catalog catalog update nimblebrain` to refresh it.

ac catalog add nope example.com
Fetching catalog from example.com...
error: no AI Catalog found for "example.com"
  https://example.com/ (direct): an HTML page, not an AI Catalog
  https://example.com/.well-known/ai-catalog.json (well-known): HTTP 404
  (there is no local file "example.com" either)

Signed-off-by: Adam Tagscherer <adam.tagscherer@gmail.com>
@adamtagscherer adamtagscherer self-assigned this Oct 27, 2026
@adamtagscherer
adamtagscherer requested a review from a team as a code owner October 27, 2026 14:50
@adamtagscherer adamtagscherer added the enhancement New feature or request label Oct 27, 2026
arpad-csepi
arpad-csepi previously approved these changes Oct 27, 2026

@arpad-csepi arpad-csepi left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, needs linter cleanup

Signed-off-by: Adam Tagscherer <adam.tagscherer@gmail.com>
arpad-csepi
arpad-csepi previously approved these changes Oct 28, 2026
Signed-off-by: Adam Tagscherer <adam.tagscherer@gmail.com>
@adamtagscherer
adamtagscherer merged commit f334299 into main Oct 29, 2026
6 checks passed
@adamtagscherer
adamtagscherer deleted the feat/catalog-add-discovery branch October 29, 2026 07:46
@github-actions github-actions Bot mentioned this pull request Oct 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants