Skip to main content
A repository lets you bring a whole set of skills or MCP servers into the catalog at once, and re-sync when the repository changes. Skills and MCP servers work the same way, with parallel commands.
1

Add the repository

Adding auto-imports the contents. Pass --no-sync to register without importing, which is useful in a scripted setup where you want to configure scope before the first import.Only GitHub URLs are accepted. A GitLab or Bitbucket link is rejected when you create the source, rather than accepted and failing later.
2

Choose who sees it

To change it later:
3

Re-sync when the repository changes

Syncing is manual. There is no scheduled auto-resync, so a repository’s contents change in your catalog only when you ask.On success you see how many skills or servers were imported.
4

Confirm what resolved

registry resolve matters when the same name exists at more than one tier. It names the winner and the tier it came from.

Private repositories

Private repositories work using your own connected GitHub credential, which needs the repo scope. If you haven’t connected one, a sync returns:
With --json that arrives as a parseable contract on stdout:
See Connect GitHub for private repos.
There is no --token flag by design. The CLI always uses the credential you connected, so a token never ends up in your shell history.

Removing a repository

See also