Skip to main content
AI/MLjeremylongshore

anth-install-auth

'Install and configure Anthropic Claude SDK authentication for Python

Stars
2,267
Source
jeremylongshore/claude-code-plugins-plus-skills
Updated
2026-05-31
Slug
jeremylongshore--claude-code-plugins-plus-skills--anth-install-auth
View on GitHubRaw SKILL.md

// install — copy + paste into any project

mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/jeremylongshore/claude-code-plugins-plus-skills/HEAD/plugins/saas-packs/anthropic-pack/skills/anth-install-auth/SKILL.md -o .claude/skills/anth-install-auth.md

Drops the SKILL.md into .claude/skills/anth-install-auth.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.

Anthropic Install & Auth

Overview

Set up the official Anthropic SDK for Python or TypeScript and configure API key authentication. The SDK wraps the Claude Messages API at https://api.anthropic.com/v1/messages.

Prerequisites

  • Node.js 18+ or Python 3.8+
  • Package manager (npm, pnpm, yarn, or pip)
  • Anthropic account with API access at console.anthropic.com
  • API key from Console > API Keys

Instructions

Step 1: Install SDK

# Python
pip install anthropic

# TypeScript / Node.js
npm install @anthropic-ai/sdk

# With pnpm
pnpm add @anthropic-ai/sdk

Step 2: Configure API Key

# Set environment variable (recommended)
export ANTHROPIC_API_KEY="sk-ant-api03-..."

# Or add to .env file
echo 'ANTHROPIC_API_KEY=sk-ant-api03-your-key-here' >> .env

# Verify it's set
echo $ANTHROPIC_API_KEY | head -c 15
# Expected: sk-ant-api03-...

Step 3: Verify Connection (Python)

import anthropic

client = anthropic.Anthropic()  # reads ANTHROPIC_API_KEY from env

message = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=64,
    messages=[{"role": "user", "content": "Say hello in exactly 5 words."}]
)
print(message.content[0].text)
print(f"Model: {message.model}, Tokens: {message.usage.input_tokens}+{message.usage.output_tokens}")

Step 4: Verify Connection (TypeScript)

import Anthropic from '@anthropic-ai/sdk';

const client = new Anthropic();  // reads ANTHROPIC_API_KEY from env

const message = await client.messages.create({
  model: 'claude-sonnet-4-20250514',
  max_tokens: 64,
  messages: [{ role: 'user', content: 'Say hello in exactly 5 words.' }],
});

if (message.content[0].type === 'text') {
  console.log(message.content[0].text);
}
console.log(`Stop reason: ${message.stop_reason}`);

Output

  • Installed SDK package (anthropic for Python, @anthropic-ai/sdk for TS)
  • Environment variable ANTHROPIC_API_KEY configured
  • Successful API response confirming authentication works

Error Handling

Error HTTP Code Cause Solution
authentication_error 401 Invalid or missing API key Verify key starts with sk-ant-api03-
permission_error 403 Key lacks required scope Generate new key in Console
not_found_error 404 Invalid API endpoint Ensure SDK is latest version
ModuleNotFoundError N/A SDK not installed Run pip install anthropic or npm install @anthropic-ai/sdk
connection_error N/A Network/firewall blocking Ensure HTTPS to api.anthropic.com is allowed

Enterprise Configuration

# Custom base URL (for proxied environments)
client = anthropic.Anthropic(
    api_key="sk-ant-...",
    base_url="https://your-proxy.internal.com/v1",
    timeout=60.0,
    max_retries=3
)

# With explicit headers
client = anthropic.Anthropic(
    default_headers={"anthropic-beta": "messages-2024-12-19"}
)

Security Considerations

  • Never commit API keys to source control
  • Use .env files with .gitignore exclusion
  • Rotate keys periodically via Console > API Keys
  • Use separate keys per environment (dev/staging/prod)
  • Consider Anthropic's Workspace feature for team key isolation

Resources

Next Steps

After successful auth, proceed to anth-hello-world for your first Messages API call.