.vscode/mcp.json and.cursor/mcp.json to your .gitignore. Claude Code's .claude/settings.local.json is gitignored by default.Connect Elixium to Claude and your AI coding assistants. Access your backlog, update stories, and get AI guidance โ from the Claude app in one click, or from your IDE.
Elixium uses the Model Context Protocol (MCP) โ the universal standard adopted by GitHub Copilot, Claude, Cursor, Gemini, and more. Configure once, use everywhere.
For the Claude desktop app and claude.ai, connect Elixium as a remote MCP connector: paste one URL and sign in. No API key, no config files, nothing to install.
Why the connector beats a pasted key: you sign in with OAuth 2.1 instead of copying an API key. The connection is scoped to the one workspace you pick, carries your own permission level, can be revoked anytime, and refreshes automatically so you stay connected โ no long-lived secret living on your machine.
Claude Desktop tip: if clicking Add shows "server URL already exists", fully restart the Claude desktop app โ the connector will be in your list when it reopens. This is a known Claude Desktop quirk, not an Elixium error.
Claude Code can use the same hosted connector by adding it as a remote MCP server pointing at https://connect.elixium.ai/mcp. Prefer a local, key-based setup? Use the IDE extension and manual configs below.
Install our VS Code extension and sign inโ the default flow is sign in โ pick board โ done. No API key, no JSON editing, no local server process.
.vsix for air-gapped environments)What you get: an OAuth 2.1 session (PKCE, auto-refreshing, revocable) scoped to the workspace you picked, a credential-free {"type": "http"} entry in .vscode/mcp.json, correct config format per agent (servers vs mcpServers), and safe merge with your existing configs.
Self-hosted / air-gapped? Open Self-hosted deploymentin the Connect panel and enter your deployment's connect URL โ sign-in routes to youridentity provider via the endpoint's discovery metadata, with the same steps as SaaS and no traffic leaving your network. Sideload the .vsix from your deployment package for fully offline installs.
Coming from the API-key setup? The legacy key-based flow (and the Elixium: Advanced Setup wizard) still works during the coexistence window. On activation the extension detects legacy configs and offersa one-click migration to the remote entry โ it strips the API key from the file and preserves your board; declining leaves everything working as-is.
Elixium is available in the VS Code MCP Server Gallery โ the same place you find GitHub, Notion, Playwright, and other MCP servers. The gallery installs the legacy key-based local server; if you can use the extension's sign-in flow above (or the remote entry below), prefer that โ no API key required.
Ctrl+Shift+P / Cmd+Shift+P)ELIXIUM_API_KEY โ Your API key from Profile > your workspace card > Generate KeyELIXIUM_API_URL โ Your workspace URL, e.g. https://your-team.elixium.ai/apiELIXIUM_BOARD_SLUG โ (optional) The board to connect to, defaults to auto-detectELIXIUM_USER_EMAIL โ (optional) Your email for story attributionWhy use the gallery? No npx, no JSON editing, no stdout issues. VS Code handles installation and lifecycle management for you. Updates are picked up automatically when new versions are published.
Once connected, the Elixium AI Companion adds these capabilities to your IDE:
A dedicated sidebar showing Current and Backlog stories with points, state, and objectives. Warm-starts from cache so your board is visible instantly. Click any story to open in the board or create a git branch.
Create stories, move between lanes, set states, start story flows, and copy implementation briefs โ all from the Command Palette. Guardrails prevent accidental story advancement.
Background polling detects story changes every 60 seconds. Get notified when stories move lanes or change state without checking the board.
One setup wizard configures Copilot, Cursor, Claude Code, Codex, and Windsurf simultaneously. Each gets the correct config format with your credentials stored securely.
If you prefer editing JSON directly: the remote entry (next section) needs no credential at all โ just the URL. The steps below are for the legacy key-based local server, which remains supported during the coexistence window:
ELIXIUM_API_KEY. To rotate, clickGenerate Key again on the same workspace card โ the old key is invalidated as soon as the new one is created.my-project from elixium.ai/tenant/myteam/board/my-project).Remote connection (extension sign-in or the remote entry): nothing to install. The legacy local MCP server runs via npx (included with Node.js) โ no separate installation required; it downloads automatically on first use.
# Check if Node.js is installed
node --version
# If not installed, get it from nodejs.org or use:
brew install node # macOS
While npx auto-downloads on first run, you can pre-install globally for faster startup:
npm install -g @elixium.ai/mcp-server
If globally installed, change "command": "npx" to "command": "elixium-mcp" in your config.
๐ก Tip: The configs below use npx -y @elixium.ai/mcp-server@latest which always fetches the latest version. This is the recommended approach.
Using the Elixium AI Companion extension? The sign-in flow configures your agents automatically. The manual configs below are for reference or for environments without the extension.
Agents with remote MCP support (Copilot on VS Code 1.102+, Claude Code, Cursor) connect with a single credential-free entry โ the agent signs in via OAuth on first use:
{
"servers": {
"elixium": {
"type": "http",
"url": "https://connect.elixium.ai/mcp"
}
}
}Copilot uses the servers root key; Claude Code / Cursor use mcpServers with the same entry. Self-hosted deployments substitute their own connect URL. The legacy stdio configs below (API key + local npx server) remain fully supported during the coexistence window.
MCP support is GA as of VS Code 1.102 (July 2025). Copilot can now use Elixium tools natively.
Easiest: Use the VS Code MCP Galleryabove โ search "elixium" and one-click install. The manual config below is for advanced setups.
Manual setup โ create .vscode/mcp.json in your project:
{
"servers": {
"elixium": {
"command": "npx",
"args": ["-y", "@elixium.ai/mcp-server@latest"],
"env": {
"ELIXIUM_API_KEY": "<YOUR_API_KEY>",
"ELIXIUM_API_URL": "https://<YOUR_TENANT>.elixium.ai/api",
"ELIXIUM_BOARD_SLUG": "main",
"ELIXIUM_USER_EMAIL": "<YOUR_EMAIL>"
}
}
}
}Note: Copilot uses servers (not mcpServers).
Configure in your global or workspace MCP settings.
{
"mcpServers": {
"elixium": {
"command": "npx",
"args": ["-y", "@elixium.ai/mcp-server@latest"],
"env": {
"ELIXIUM_API_KEY": "<YOUR_API_KEY>",
"ELIXIUM_API_URL": "https://<YOUR_TENANT>.elixium.ai/api",
"ELIXIUM_BOARD_SLUG": "main",
"ELIXIUM_USER_EMAIL": "<YOUR_EMAIL>"
}
}
}
}Create .cursor/mcp.json in your project:
{
"mcpServers": {
"elixium": {
"command": "npx",
"args": ["-y", "@elixium.ai/mcp-server@latest"],
"env": {
"ELIXIUM_API_KEY": "<YOUR_API_KEY>",
"ELIXIUM_API_URL": "https://<YOUR_TENANT>.elixium.ai/api",
"ELIXIUM_BOARD_SLUG": "main",
"ELIXIUM_USER_EMAIL": "<YOUR_EMAIL>"
}
}
}
}Recommended: use the hosted connector at the top of this page (https://connect.elixium.ai/mcp) โ OAuth sign-in, no API key. The local stdio config below is for offline / air-gapped setups or if you specifically want a key-based local server.
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"elixium": {
"command": "npx",
"args": ["-y", "@elixium.ai/mcp-server@latest"],
"env": {
"ELIXIUM_API_KEY": "<YOUR_API_KEY>",
"ELIXIUM_API_URL": "https://<YOUR_TENANT>.elixium.ai/api",
"ELIXIUM_BOARD_SLUG": "main",
"ELIXIUM_USER_EMAIL": "<YOUR_EMAIL>"
}
}
}
}Claude Code runs as a VS Code extension with full MCP support. Add the config to your project or user settings.
Option 1: Project-level โ create .claude/settings.local.json in your project:
{
"mcpServers": {
"elixium": {
"command": "npx",
"args": ["-y", "@elixium.ai/mcp-server@latest"],
"env": {
"ELIXIUM_API_KEY": "<YOUR_API_KEY>",
"ELIXIUM_API_URL": "https://<YOUR_TENANT>.elixium.ai/api",
"ELIXIUM_BOARD_SLUG": "main",
"ELIXIUM_USER_EMAIL": "<YOUR_EMAIL>"
}
}
}
}Option 2: User-level โ add to ~/.claude/settings.json to share across all projects:
{
"mcpServers": {
"elixium": {
"command": "npx",
"args": ["-y", "@elixium.ai/mcp-server@latest"],
"env": {
"ELIXIUM_API_KEY": "<YOUR_API_KEY>",
"ELIXIUM_API_URL": "https://<YOUR_TENANT>.elixium.ai/api",
"ELIXIUM_BOARD_SLUG": "main",
"ELIXIUM_USER_EMAIL": "<YOUR_EMAIL>"
}
}
}
}๐ก Tip: Use .claude/settings.local.json (not settings.json) for project-level config โ the .local variant is gitignored by default, keeping your API key out of source control.
โ ๏ธ Watch out for duplicate config files: Claude Code can also read MCP config from a .mcp.json file in your project root. If both .mcp.json and .claude/settings.local.json exist, .mcp.json takes precedence. If you regenerate your API key, make sure to update all config files โ a stale key in .mcp.json will silently override your updated key in .claude/settings.local.json, causing "Invalid API Key" errors even though the new key looks correct. We recommend using only one config file to avoid this issue.
Create .codex/mcp.json in your project:
{
"mcpServers": {
"elixium": {
"command": "npx",
"args": ["-y", "@elixium.ai/mcp-server@latest"],
"env": {
"ELIXIUM_API_KEY": "<YOUR_API_KEY>",
"ELIXIUM_API_URL": "https://<YOUR_TENANT>.elixium.ai/api",
"ELIXIUM_BOARD_SLUG": "main",
"ELIXIUM_USER_EMAIL": "<YOUR_EMAIL>"
}
}
}
}The legacy stdio server is configured with these environment variables (the remote entry needs none of them):
| Variable | Required | Description |
|---|---|---|
| ELIXIUM_API_KEY | Yes | Your workspace API key from Settings |
| ELIXIUM_API_URL | Yes | Your tenant API URL (e.g., https://acme.elixium.ai/api) |
| ELIXIUM_BOARD_SLUG | Recommended | Board slug to connect to (defaults to main) |
| ELIXIUM_USER_EMAIL | Optional | Your email address. Used as the "Requested by" field when creating stories via AI. If not set, defaults to the API key owner's email. |
๐ก Tip: Setting ELIXIUM_USER_EMAIL ensures stories you create through your AI assistant are attributed to you, not the workspace API key owner.
Once connected, your AI agent can use these tools:
list_storiesList all stories on the board
get_iteration_contextGet Current + Backlog for planning
create_storyCreate a new story with AC
update_storyUpdate story state, lane, or description
prepare_implementationFetch full context for a story
record_learningLog what you learned from a story
list_epicsList all epics on the roadmap
list_objectivesList workspace objectives (OKRs)
Add a rules file to your repo so the AI knows how to use Elixium effectively. The Setup Wizard can also scaffold Claude slash commands (.claude/commands/) for common workflows like starting stories and checking board status.
.github/copilot-instructions.md.cursor/rules/elixium.md.windsurf/rules/elixium.mdCLAUDE.md at repo rootAGENTS.md at repo root# Elixium Integration At the start of each session: 1. Call `get_iteration_context` to load the board 2. Review Current lane for active work When implementing a story: 1. Call `prepare_implementation` for full context 2. Follow TDD: write tests first 3. Update story state to "started" 4. Commit with story ID in message When complete: 1. Update story state to "finished" 2. Call `record_learning` with outcomes
Initialize ready-to-use workflows in your project:
# Initialize Elixium workflows
npx @elixium.ai/mcp-server init
This creates .agent/workflows/ with:
load-board-context.md โ Load board at session startimplement-story.md โ Full story implementation flowmanage-board.md โ Create/update stories and epicsThe sign-in flow puts no long-lived secret in any file: sessions use short-lived access tokens with rotating refresh tokens (reuse revokes the whole chain), are scoped to the one workspace you pick with your own permission level, and can be revoked anytime. See API & MCP Security for the full surface.
Each API key is hardcoded to your workspace. Even if a key is compromised, it only provides access to your specific projects. Keys can be rotated or revoked at any time from workspace settings.
.vscode/mcp.json and.cursor/mcp.json to your .gitignore. Claude Code's .claude/settings.local.json is gitignored by default..gitignore. Credentials are pre-filled on subsequent runs without being stored in plaintext on disk.Ctrl+C or /exit, then relaunch."servers", all others use "mcpServers". Using the wrong key silently fails."Invalid API Key" or "401 Unauthorized"
ELIXIUM_API_URL includes your tenant subdomain (e.g., https://my-team.elixium.ai/api, not https://elixium.ai/api).mcp.json (project root) and .claude/settings.local.json, the .mcp.json file takes precedence. A stale key in .mcp.json will override your updated key. Run cat /proc/$(pgrep -f elixium-mcp)/environ | tr '\0' '\n' | grep ELIXIUM_API_KEY to verify which key the running server is actually using."Board not found"
ELIXIUM_BOARD_SLUG matches your board URL exactly (case-sensitive)main โ check your board URL to verify"Connection closed" or "Failed to parse message"
# Install once
npm install -g @elixium.ai/mcp-server
cmd /c:which npx (macOS/Linux) or where npx (Windows) to find itnpm install -g @elixium.ai/mcp-server also fixes thisTools not appearing after connection
env block๐ฃ Claude Code
/mcp to see all server connection statuses/doctor to validate config files and diagnose errors.claude/settings.local.json (project) or ~/.claude/settings.json (user).mcp.json file exists in your project root, it takes priority over .claude/settings.local.json. Use only one to avoid stale-key issues when regenerating API keys.๐ GitHub Copilot (VS Code)
.vscode/mcp.json uses "servers" (not "mcpServers")๐ฏ Cursor
.cursor/mcp.json in project rootStill stuck? If none of the above helps, check that the config JSON is valid (no trailing commas, correct brackets). You can validate it by pasting into jsonlint.com or running cat your-config.json | python3 -m json.tool.
Book a quick call with our team to get set up.
๐ Book a 30-min Demo