From anthropic-pack
Install and configure Anthropic Claude SDK authentication for Python and TypeScript. Use when setting up a new Claude API integration, configuring API keys, or initializing the Anthropic SDK in your project. Trigger with phrases like "install anthropic", "setup claude api", "anthropic auth", "configure anthropic API key", "claude sdk setup".
npx claudepluginhub flight505/skill-forge --plugin anthropic-packThis skill is limited to using the following tools:
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`.
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Share bugs, ideas, or general feedback.
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.
# Python
pip install anthropic
# TypeScript / Node.js
npm install @anthropic-ai/sdk
# With pnpm
pnpm add @anthropic-ai/sdk
# 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-...
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}")
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}`);
anthropic for Python, @anthropic-ai/sdk for TS)ANTHROPIC_API_KEY configured| 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 |
# 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"}
)
.env files with .gitignore exclusionAfter successful auth, proceed to anth-hello-world for your first Messages API call.