similarity-search-api-sdk
Server Details
Stateless NMI + cosine fusion with entropy-driven alpha calibration
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- nexus-mcp-infra/similarity-search-api-sdk
- GitHub Stars
- 0
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.6/5 across 3 of 3 tools scored.
Each tool has a clearly distinct purpose: one estimates corpus entropy, one ranks items against a query, and one scores a single pair. There is no overlap or ambiguity.
All tool names follow the same pattern: prefix 'nexus_similarity_search_api_' followed by a descriptive verb_noun in snake_case (e.g., estimate_corpus_entropy_profile, rank_items_by_nmi_cosine_fusion). The naming is perfectly consistent.
Three tools is a reasonable count for this domain, covering entropy estimation, corpus ranking, and pairwise scoring without unnecessary clutter.
The tool set covers the core workflows (pre-check, ranking, explainability). Missing a dedicated tool for API key or payment management, but these are handled as parameters, so the gap is minor.
Available Tools
3 toolsnexus_similarity_search_api_estimate_corpus_entropy_profileAInspect
Computes the aggregate entropy-calibrated alpha for a corpus without running a full search -- useful to inspect before committing to a large rank_items_by_nmi_cosine_fusion call. Returns a single aggregate corpus_entropy value, NOT a per-dimension breakdown -- the real logic only exposes the mean marginal entropy across dimensions, not H(X_d) per individual dimension. Do NOT use expecting per-dimension granularity. Requires a valid api_key (same as X-API-Key) and an x402 payment.
| Name | Required | Description | Default |
|---|---|---|---|
| n_bins | No | Number of histogram bins for entropy discretization. Must be between 3 and 50; should match the n_bins used in rank_items_by_nmi_cosine_fusion for the profile to be consistent. | |
| api_key | Yes | API key required for this paid operation -- same secret configured as X-API-Key on the REST endpoints (SIMILARITY_API_KEY). Payment (x402) alone is not sufficient; both gates must pass. | |
| corpus_vectors | Yes | List of dense numeric vectors for which to compute the aggregate entropy and calibrated alpha. Each inner array must be the same length. Maximum 500000 entries. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses that the return is a single aggregate corpus_entropy value, not per-dimension breakdown, and that only mean marginal entropy is exposed. Also mentions authentication and payment requirements. Missing side-effect or performance details, but adequate for a read-only estimate.
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?
Description is front-loaded with purpose, uses dashes for emphasis, and conveys essential information in a single sentence. It is not overly verbose, but the structure could be slightly clearer with separate sentences. Overall, every phrase contributes 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?
Given no output schema, description adequately explains the returned value (single aggregate, not per-dimension) and its role as a pre-check. It covers authentication requirements. Lacks details on error handling or exact return format, but sufficient for the tool's simplicity.
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%, so baseline 3. Description adds minimal extra meaning beyond schema, except advising that n_bins should match that used in the sibling tool. The api_key and corpus_vectors descriptions are already in schema, so no significant additional semantic value.
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?
Description clearly states it computes aggregate entropy-calibrated alpha for a corpus without running full search, and distinguishes from sibling 'rank_items_by_nmi_cosine_fusion' by positioning as a pre-check. Also clarifies it returns a single value, not per-dimension, making the tool's purpose specific and unambiguous.
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?
Explicitly suggests using it before committing to a large rank_items_by_nmi_cosine_fusion call, and warns against expecting per-dimension granularity. Mentions required api_key and x402 payment. Could be more explicit about when to prefer siblings, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nexus_similarity_search_api_rank_items_by_nmi_cosine_fusionAInspect
Ranks a corpus of items against a query vector using a calibrated fusion score (alpha * cosine + (1-alpha) * NMI_normalizado), where alpha is auto-derived from the corpus's marginal entropy unless overridden. Results are identified by their 0-indexed position in corpus_vectors (this tool does not accept explicit item IDs). Use this when you need semantically-calibrated similarity over a stateless corpus of up to 500k items without a vector database. Do NOT use for purely geometric nearest-neighbor search where NMI overhead is unnecessary, nor for corpora larger than 500k items per call. Requires a valid api_key (same as X-API-Key) and an x402 payment.
| Name | Required | Description | Default |
|---|---|---|---|
| top_k | No | Number of top-ranked results to return, ordered by descending fusion score. Capped at 1000 by the core service regardless of corpus size. | |
| n_bins | No | Number of histogram bins used to discretize continuous dimensions when estimating NMI. Must be between 3 and 50. | |
| api_key | Yes | API key required for this paid operation -- same secret configured as X-API-Key on the REST endpoints (SIMILARITY_API_KEY). Payment (x402) alone is not sufficient; both gates must pass. | |
| query_vector | Yes | Dense numeric vector representing the query item. Must have the same dimensionality as all corpus_vectors entries. | |
| alpha_override | No | Fixed alpha weight for cosine component in [0.0, 1.0]. If omitted, alpha is auto-calibrated from corpus entropy. Set to 1.0 to use pure cosine; 0.0 for pure NMI. | |
| corpus_vectors | Yes | List of dense numeric vectors forming the corpus to rank against. Each inner array must match query_vector dimensionality. Maximum 500000 entries. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description discloses auto-alpha derivation, result identification by index, stateless corpus, and constraints (500k items). No contradictions.
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?
Dense, well-structured description with no wasted words. Each sentence adds necessary information.
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?
Given 6 parameters, no output schema, and high complexity, the description covers purpose, algorithm, result format, usage constraints, and authentication. Completely adequate.
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%, but description adds meaning with the fusion formula, auto-calibration, and contextual constraints (e.g., alpha_override behavior, n_bins histogram role).
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 the tool ranks a corpus against a query using a calibrated fusion score, and distinguishes it from sibling tools.
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?
Explicitly states when to use (semantically-calibrated similarity) and when not to (pure geometric search, corpora >500k items). Also mentions requirements like api_key and x402 payment.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nexus_similarity_search_api_score_pair_nmi_cosineAInspect
Computes the NMI-cosine fusion score for exactly one (query, target) vector pair at a fixed alpha. Use for explainability, debugging, or unit-level validation of fusion scores before running full corpus ranking. Unlike corpus-level ranking, alpha is NOT auto-calibrated for a single pair -- the real logic requires a fixed alpha (default 0.5); pass alpha explicitly for a specific blend. Do NOT use in a loop to score many pairs; batch them into rank_items_by_nmi_cosine_fusion instead. Requires a valid api_key (same as X-API-Key) and an x402 payment.
| Name | Required | Description | Default |
|---|---|---|---|
| alpha | No | Fixed alpha weight for the cosine component in [0.0, 1.0], applied as-is -- not auto-calibrated. Default 0.5 matches the core service default. | |
| n_bins | No | Histogram bins for NMI discretization. Must be between 3 and 50. | |
| api_key | Yes | API key required for this paid operation -- same secret configured as X-API-Key on the REST endpoints (SIMILARITY_API_KEY). Payment (x402) alone is not sufficient; both gates must pass. | |
| vector_a | Yes | First dense numeric vector of the pair. Must have the same dimensionality as vector_b. | |
| vector_b | Yes | Second dense numeric vector of the pair. Must have the same dimensionality as vector_a. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries burden. Discloses that alpha is not auto-calibrated, that both api_key and x402 payment are required, and that it handles only single pairs. Does not describe return value or error behavior, but overall adequately transparent for a focused single-pair scoring tool.
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 plus a clear negative usage note. Front-loaded with core purpose and usage. No fluff.
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?
No output schema, but tool is for a narrow purpose. Description covers purpose, when/not to use, parameters, and requirements. Missing explicit return value description, but acceptable given the tool's focus and schema coverage.
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%, so baseline is 3. Description adds context: explains alpha is fixed (not auto-calibrated), api_key is same as X-API-Key, and that vector_a and vector_b must have same dimensionality. Adds meaningful usage guidance 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?
Clearly states the tool computes NMI-cosine fusion score for one pair at fixed alpha. Distinguishes from sibling tools by mentioning 'Unlike corpus-level ranking' and referencing the batch tool 'rank_items_by_nmi_cosine_fusion'.
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?
Explicitly states when to use: 'for explainability, debugging, or unit-level validation'. Explicitly advises against looping: 'Do NOT use in a loop to score many pairs; batch them into rank_items_by_nmi_cosine_fusion instead'. Also notes requirements: 'needs valid api_key and x402 payment'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!