> ## Documentation Index
> Fetch the complete documentation index at: https://docs.metabind.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Discovery Overview

> Search and retrieve content types, content, and assets

Discovery tools help AI agents discover and understand available content types, existing content, and media assets within a project.

## Available Tools

<CardGroup cols={2}>
  <Card title="search_content_types" icon="magnifying-glass" href="/mcp/discovery/search-content-types">
    Search for content types
  </Card>

  <Card title="get_content_type" icon="file-code" href="/mcp/discovery/get-content-type">
    Get complete content type schema
  </Card>

  <Card title="search_content" icon="file-lines" href="/mcp/discovery/search-content">
    Search for content items
  </Card>

  <Card title="get_content" icon="file" href="/mcp/discovery/get-content">
    Get complete content details
  </Card>

  <Card title="search_assets" icon="image" href="/mcp/discovery/search-assets">
    Search for media assets
  </Card>
</CardGroup>

## Search Modes

All search tools support two modes:

### Semantic Search (with `query`)

When you include a `query` parameter, the tool uses AI-powered vector search:

* Results are ranked by semantic relevance
* Finds items based on meaning, not just keywords
* Returns `excerpt` and `similarity` fields
* Best for natural language queries like "content about product launches"

### Standard Filtering (without `query`)

When you omit the `query` parameter, the tool uses exact matching:

* Results are filtered by the specified criteria
* Returns consistently ordered results
* No `excerpt` or `similarity` fields
* Best for browsing by type, status, or tags

<Tip>
  Combine semantic search with filters for precise results. For example, search for "hero banner" within the `view` component type to find relevant display components.
</Tip>

## Common Workflow

```javascript theme={null}
// 1. Search for content types to understand what structures are available
const types = await mcp.call("search_content_types", {
  query: "blog posts"
});

// 2. Get the full schema for the content type you want to use
const schema = await mcp.call("get_content_type", {
  contentTypeId: types.contentTypes[0].id
});

// 3. Search for existing content as examples
const content = await mcp.call("search_content", {
  typeId: schema.id,
  limit: 5
});

// 4. Find assets to use in new content
const assets = await mcp.call("search_assets", {
  query: "hero image",
  type: "image/*"
});
```
