@metalift/sdk
Official TypeScript/JavaScript SDK for Metalift — turn any URL into agent-ready markdown, HTML, or structured data.
Requirements
- Node.js 20+
- ESM only — use
import, not require()
Install
npm install @metalift/sdk
Quick start
import Metalift from "@metalift/sdk";
const client = new Metalift({ apiKey: "YOUR_API_KEY" });
const result = await client.scrape({
url: "https://example.com",
formats: ["markdown"],
});
console.log(result.data.markdown);
Get an API key from the Metalift dashboard.
Web search (decoupled from scrape)
Search returns top 10 SERP snippets (2 credits). Scrape URLs separately when you need full content (1+ credits each):
const serp = await client.search({ query: "docker docs" });
for (const hit of serp.results) {
console.log(hit.title, hit.url);
}
const page = await client.scrape({
url: serp.results[0].url,
formats: ["markdown"],
});
console.log(page.data.markdown);
Configuration
import Metalift from "@metalift/sdk";
const client = new Metalift({
apiUrl: "https://api.metalift.ai",
apiKey: process.env.METALIFT_API_KEY,
});
METALIFT_API_URL | API base URL (default: https://api.metalift.ai) |
METALIFT_API_KEY | Bearer token for authenticated requests |
Metalift Cloud requires X-B2B-Attestation: I-confirm-B2B-use on authenticated requests. @metalift/sdk ≥ 1.0.11 sends this header automatically.
CommonJS projects
This package is ESM-only. In CommonJS projects, use dynamic import:
const { default: Metalift } = await import("@metalift/sdk");
Or add "type": "module" to your package.json, or use .mjs entry files.
Links