embedding-search
Server Details
Cloudflare Workers MCP server: embedding-search
- Status
- Healthy
- Uptime
- 100.0% over 40 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2024-11-05
- URL
TDQS
Scored across 3 tools
Each tool addresses a distinct operation: generate_embeddings creates vectors, compute_similarity compares two texts directly, and semantic_search ranks a list of documents against a query. No overlapping purposes.
Two tools follow the verb_noun pattern (generate_embeddings, compute_similarity), but semantic_search uses a noun phrase instead, which is a minor deviation from the otherwise consistent style.
With only three tools, the server is tightly scoped to the embedding-based search domain. Each tool has a clear role, and the count is appropriate for the functionality offered.
The server covers the complete workflow: embedding generation, pairwise similarity, and semantic search. There are no obvious missing operations for the stated purpose.
Available Tools
3 toolscompute_similarityAInspect
Compute cosine similarity between two texts. Returns score in [-1,1]. Useful for dedup and relatedness.
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | ||
| text_a | Yes | ||
| text_b | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It discloses the return range and the algorithm, which is sufficient for a non-mutating compute operation. However, it does not describe the behavior of the 'model' parameter or any potential side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler, and front-loaded with the action. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Without annotations or output schema, the description provides the core function and a use case, but omits details about the model parameter and how it relates to sibling tools. It is adequate for a simple tool but has clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate. It maps 'two texts' to text_a and text_b, but leaves the optional 'model' parameter unexplained. The parameter names are self-evident, but the description adds minimal value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('compute'), resource ('cosine similarity between two texts'), and even specifies the score range. This distinguishes it from siblings like generate_embeddings and semantic_search, which focus on other operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It mentions 'Useful for dedup and relatedness,' providing clear use-case context. However, it does not explicitly state when to prefer this over generate_embeddings or semantic_search, nor any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_embeddingsAInspect
Generate vector embeddings for one or more texts using Cloudflare Workers AI (bge-base-en-v1.5, 768-dim).
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | Text or array of texts to embed | |
| model | No | CF AI model ID override |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosing behavior. It reveals the backend (Cloudflare Workers AI) and output dimensionality (768-dim), which is useful context. However, it does not disclose potential side effects, rate limits, auth requirements, or return format (e.g., array output for array input). Some behavioral gaps remain.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, clear sentence packs the core purpose, scope, backend, and vector dimension without waste. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a relatively simple tool with two well-documented parameters and no output schema, the description is mostly complete: it names the default model, dimension, and input flexibility. It falls short of explicitly stating the return format (e.g., a list of embeddings matching the input array), which would fully round out the context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (both 'text' and 'model' have descriptions), so the baseline is 3. The description adds context about the default model and dimension, and 'one or more texts' clarifies the array/string flexibility, but it does not add significant new semantic detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Generate vector embeddings') and resource ('for one or more texts'), and it distinguishes this tool from siblings (compute_similarity, semantic_search) by focusing solely on embedding generation. The model name and dimension provide concrete scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The purpose strongly implies when to use it (when you need embeddings), and the sibling names hint at alternatives. However, the description does not explicitly state 'use this for generation, use compute_similarity for comparison', so guidance is merely implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
semantic_searchAInspect
Rank a list of documents against a query using cosine similarity of bge embeddings. Returns top-k matches with scores.
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | CF AI model ID override | |
| query | Yes | Search query | |
| top_k | No | Number of results (default 5) | |
| documents | Yes | Candidate documents to rank |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the method (cosine similarity of bge embeddings) and output behavior (returns top-k matches with scores), which is adequate, though it doesn't mention internal embedding handling or potential side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, front-loaded with the verb 'Rank', and no filler or redundant information. Every sentence contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a search tool with complete schema coverage and no output schema, the description sufficiently conveys the tool's purpose and output. It lacks a precise return format but is otherwise complete for the complexity level.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all 4 parameters with descriptions (100% coverage), so the baseline is 3. The description adds no additional parameter semantics beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Rank'), resource ('documents'), and scope ('against a query using cosine similarity of bge embeddings'), and distinguishes it from siblings like generate_embeddings and compute_similarity by focusing on document ranking with scores.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies clear usage context: you have a query and candidate documents and want ranked results. It doesn't explicitly mention alternatives or exclusions, but the context is sufficiently clear for an agent to infer when to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
- Added
compute_similarity - Added
generate_embeddings - Added
semantic_search
Related MCP Connectors
Cloudflare Workers MCP server: ai-eval
Cloudflare Workers MCP server: blog
Cloudflare Workers MCP server: agent-memory
Cloudflare Workers MCP server: ai-gateway
Related MCP Servers
- -licenseNot gradedqualityNot gradedmaintenanceA CloudFlare Workers-based MCP server that provides semantic memory and journal capabilities with vector search. Enables users to store, search, and retrieve memories and journal entries using AI-powered semantic similarity without any local setup required.-
- FlicenseNot gradedqualityDmaintenanceA Cloudflare Worker that transforms Cloudflare AI Search (AutoRAG) instances into an MCP server for querying documentation. It enables AI models to search and retrieve relevant information from custom document sets stored in R2 buckets.17-
- AlicenseNot gradedqualityBmaintenanceDeployable stateless remote MCP server on Cloudflare Workers without auth, with support for registering custom tools and connecting to MCP clients.10 npmMIT
- FlicenseNot gradedqualityBmaintenanceEnables running a stateless MCP server on Cloudflare Workers with a simple greeting tool.-
Glama MCP Gateway
Add one secure layer between your agents and this server.