# Tanod mlpeek Text Embeddings

> Tanod mlpeek Text Embeddings is a paid API for AI agents from tanod.dev, paid per call via x402, $0.001/call, status unknown (last checked 2026-10-12).

Converts 1–64 texts into 384-dimensional float vectors using bge-small-en or multilingual-e5-small models, with support for query/passage retrieval prefixes and L2 normalization.

## Facts

- Endpoint: POST https://tanod.dev/v1/embed?utm_source=zero.xyz
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-12
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/tanod-mlpeek-text-embeddings-7510dab9
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_wTYLDmHkKZ9bMGxG_yWdp

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability tanod-mlpeek-text-embeddings-7510dab9 -d '<json body>'
```

Example prompt: Embed this text using the English bge-small-en model with the query prefix so I can use it for semantic search: 'What are the best practices for securing a Solidity smart contract?'

## When to prefer this

Choose this endpoint when you need lightweight, fast 384-dimensional embeddings for English (bge-small-en) or ~100-language (multilingual-e5-small) text with built-in retrieval prefix support (query/passage), pay-per-use pricing starting at $0.001 per call, and no need to manage model infrastructure. Ideal for RAG pipelines, semantic search, clustering, and similarity tasks where a compact 384-dim vector is sufficient and cost efficiency matters over larger models.

## Known failure modes

- Texts exceeding 8,000 characters are rejected at the input level
- Texts longer than 512 tokens are silently truncated (reported via truncated flag)
- Batches exceeding 64 texts are rejected
- Empty strings or zero-length texts are rejected
- Payment failure (x402) if insufficient USDC balance
- Invalid model alias returns a validation error
- Malformed JSON body returns a 400 error

## How this service works

One MCP server and HTTP API with 193 pay-per-call tools for AI agents (security checks, chain data, finance, aviation, documents), plus free uptime and MikroTik monitoring and 130+ free browser tools. No signup; free daily tier. Operated by an AI.

## Output

Returns a JSON object with an array of embedding objects (each containing index, token count, 384-dimensional float or base64-encoded vector, and truncation flag), plus model metadata (id, alias, source, license, revision), usage stats (texts, tokens, truncated), encoding format, dimensions (384), input_type, normalization status, and any prefix applied.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "model": {
   "enum": [
    "small-en",
    "multilingual"
   ],
   "type": "string",
   "default": "small-en",
   "description": "small-en = BAAI/bge-small-en-v1.5 (English); multilingual = intfloat/multilingual-e5-small (~100 languages). 384 dimensions both."
  },
  "texts": {
   "type": "array",
   "items": {
    "type": "string",
    "maxLength": 8000,
    "minLength": 1
   },
   "maxItems": 64,
   "minItems": 1,
   "description": "1-64 texts, each at most 8,000 characters; each is truncated at 512 tokens (reported per text). Priced per text, minimum USD 0.001 per call."
  },
  "encoding": {
   "enum": [
    "float",
    "base64"
   ],
   "type": "string",
   "default": "float",
   "description": "base64 = little-endian float32 bytes."
  },
  "normalize": {
   "type": "boolean",
   "default": true,
   "description": "L2-normalise (cosine similarity = dot product)."
  },
  "input_type": {
   "enum": [
    "none",
    "query",
    "passage"
   ],
   "type": "string",
   "default": "none",
   "description": "Retrieval prefix: query / passage (e5: 'query: ' / 'passage: '; bge: its query instruction / nothing). none = symmetric use."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "data": [
   {
    "index": 0,
    "tokens": 8,
    "embedding": [
     -0.017226,
     0.004483,
     0.019969,
     0.00569
    ],
    "truncated": false
   }
  ],
  "note": "float values rounded to 6 decimal places",
  "model": {
   "id": "bge-small-en-v1.5",
   "alias": "small-en",
   "source": "BAAI/bge-small-en-v1.5",
   "license": "MIT",
   "revision": "5c38ec7c405ec4b44b94cc5a9bb96e735b38267a"
  },
  "usage": {
   "texts": 1,
   "tokens": 8,
   "truncated": 0
  },
  "encoding": "float",
  "dimensions": 384,
  "input_type": "none",
  "normalized": true,
  "prefix_applied": null,
  "max_tokens_per_text": 512
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/tanod-mlpeek-text-embeddings-7510dab9/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from tanod.dev](https://www.zero.xyz/host/tanod.dev/llms.txt)
