Skip to main content

Search Library

Search across available libraries. Returns an array of matching libraries with metadata useful for selection.

Arguments

query
string
required
The user’s question or task (used for relevance ranking)
libraryName
string
required
The library name to search for

Response

Returns Library[] - an array of library objects.
Library
object

Examples

import { Context7 } from "@upstash/context7-sdk";

const client = new Context7();

const libraries = await client.searchLibrary(
  "I need to build a UI",
  "react"
);

console.log(`Found ${libraries.length} libraries`);
libraries.forEach((library) => {
  console.log(`${library.name}: ${library.description}`);
});

Use Cases

Finding Libraries by Score

const libraries = await client.searchLibrary("state management", "redux");

const trusted = libraries.sort((a, b) => b.trustScore - a.trustScore);
console.log("Most trusted:", trusted[0].name);

Checking Available Versions

const libraries = await client.searchLibrary("I want to use lodash", "lodash");

const library = libraries[0];
if (library.versions) {
  console.log(`Available versions: ${library.versions.join(", ")}`);
}

Full Workflow

import { Context7 } from "@upstash/context7-sdk";

const client = new Context7();

const libraries = await client.searchLibrary(
  "I want to build a React app",
  "react"
);

const library = libraries[0];
console.log(`Using: ${library.name} (${library.id})`);

const context = await client.getContext(
  "How do I create a component?",
  library.id
);

console.log(context);