@pulsemcp/air-adapter-claude
v0.0.18
Published
AIR adapter for Claude Code — translates AIR config to Claude Code format
Readme
@pulsemcp/air-adapter-claude
AIR adapter extension for Claude Code. Translates AIR artifacts into Claude Code's native format and prepares working directories for agent sessions.
Installation
npm install @pulsemcp/air-adapter-claudeUsage
With the AIR CLI
# Install the adapter globally alongside the CLI
npm install -g @pulsemcp/air-cli @pulsemcp/air-adapter-claude
# Start a Claude Code session
air start claude --root web-appProgrammatic
import { resolveArtifacts } from "@pulsemcp/air-core";
import { ClaudeAdapter } from "@pulsemcp/air-adapter-claude";
const artifacts = await resolveArtifacts("./air.json");
const adapter = new ClaudeAdapter();
// Prepare a working directory for a Claude Code session
const session = await adapter.prepareSession(artifacts, "./my-project", {
root: artifacts.roots["web-app"],
});
// session.configFiles — paths written (.mcp.json, etc.)
// session.skillPaths — skill dirs created in .claude/skills/
// session.startCommand — { command: "claude", args: [...], cwd: "..." }What prepareSession() does
- Writes
.mcp.json— translates AIR MCP server configs to Claude Code format (secret resolution is handled by transform extensions, not the adapter) - Injects skills — copies SKILL.md files and associated content into
.claude/skills/{name}/ - Copies references — attaches referenced documents into
.claude/skills/{name}/references/ - Respects local priority — if a skill directory already exists in the target, it is not overwritten
Translation Details
| AIR Format | Claude Code Format |
|------------|-------------------|
| mcp.json (flat map with type, title, description) | .mcp.json (mcpServers wrapper, strips metadata) |
| stdio servers | { command, args, env } |
| sse/streamable-http servers | { url, headers, oauth } |
| OAuth redirectUri | Extracted as callbackPort |
| Plugin id | name |
| Plugin skills/mcp_servers/hooks | Stripped (used by CLI for deduplication) |
