MCP server

Stella can expose a Model Context Protocol server, so an AI assistant can create decks and cards for you, tag and group them, and edit or move existing cards.

mcp:
  enabled: true

The endpoint is <your Stella URL>/mcp (StreamableHTTP transport), on the same port as the web UI.

Authentication

In single-user mode /mcp has no auth at all: keep it on a trusted network.

In multi-user mode it accepts two kinds of credential:

  • A bearer token from /settings/tokens. Put it in the MCP client’s config as Authorization: Bearer <token>.
  • OAuth. Stella acts as its own OAuth Authorization Server for MCP clients (dynamic client registration, PKCE, a consent screen), on top of the OIDC login. Point an OAuth-capable client (Claude Desktop, Claude Code, Claude.ai custom connectors, …) at <publicURL>/mcp and it discovers the flow by itself. Connected apps can be revoked from /settings/tokens. Refresh tokens stay valid for mcp.refreshTokenDays days (30 by default), after which the client goes through the consent screen again.

For example, with Claude Code:

claude mcp add --transport http stella https://stella.example.com/mcp

Tools

AreaTools
Deckscreate_deck, list_decks, rename_deck, delete_deck, set_deck_group, set_deck_reverse
Groupscreate_group, list_groups, rename_group, delete_group
Tagscreate_tag, list_tags, rename_tag, delete_tag, tag_deck, untag_deck
Cardscreate_card, create_cards, edit_card, move_card, delete_card, list_recent_cards, get_card_image

Media fields on create_card and edit_card take http(s) URLs only; Stella downloads the files into its own media store.

Agent skill

The repo ships an agent skill at docs/skills/stella-cards/SKILL.md that documents the card format and every tool in detail, so an agent can write well-formatted cards without trial and error. Install it into your agent (for Claude Code, copy the stella-cards folder into ~/.claude/skills/).