Skip to main content
An agent needs to do things: read a calendar, create an account, post a message, open a ticket. Those actions come from two kinds of building block. A skill is the higher-level unit. Most skills are backed by an MCP server, but not all — a skill that needs no external tool executes through the model directly.

The catalog

Your workspace has a catalog of available skills and MCP servers. Browse and search it:
jstm skills check <name> answers the practical question: can this skill actually run here? It reports whether the skill needs an MCP server, which one it resolved to, and the resolver’s verdict.

Where catalog entries come from

Three sources feed the catalog, in increasing specificity. Repositories. Point JoyStream at a GitHub repository of skills or MCP servers and sync it. Private repositories work using your own connected GitHub credential.
Endpoints. Register a specific MCP server you host or subscribe to, then attach its API key so its tools authenticate.
Registering an endpoint succeeds even before a key is attached — the server registers with an empty tool list, and introspection fills it in once it can authenticate.

Scope and resolution

Every repository and endpoint is added at a scope: personal, workspace, or org-wide. When the same name exists at more than one scope, the most specific one wins. jstm registry resolve <kind> <name> shows the winning entry and why it won — which tier it came from and what it beat. jstm registry list --kind mcp --workspace <id> shows the whole resolved view for a workspace. This matters because a team can override a shared server with their own version without affecting anyone else, and you can always find out which one an agent will actually get.

Credentials

Skills declare the services they require. When an agent runs, JoyStream resolves a credential for each required service from your vault hierarchy and hands it to the MCP server in the environment variable that server expects. If a required credential is missing, the run doesn’t guess — it stops and tells you which provider to connect. See Credentials and vaults.

Next

Add your own MCP server

Register an endpoint and connect its key.

Add repositories

Sync skills and servers from GitHub.