Skip to main content
Glama

Server Details

Text Intelligence delivers robust NLP capabilities without the hassle of authentication or

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
varvararatta/botfactory-mcp
GitHub Stars
0

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

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.

100% free. Your data is private.
Tool DescriptionsB

Average 3.6/5 across 6 of 6 tools scored. Lowest: 2.4/5.

Server CoherenceA
Disambiguation5/5

Each tool addresses a distinct text analysis task: sentiment, language, keywords, duplicates, and summarization. There is no overlap or ambiguity between them.

Naming Consistency4/5

Most tools follow a clear verb_noun pattern (analyze_sentiment, detect_language, etc.). 'health_check' is a minor deviation, but it is still recognizable and does not break the overall consistency.

Tool Count5/5

With 6 tools, the server is well-scoped for a text intelligence service. Each tool provides a meaningful, non-redundant capability without overwhelming the user.

Completeness5/5

The tool set covers the core text analytics needs: sentiment, language, keywords, duplication, and summarization. No obvious missing operations are apparent for the stated purpose.

Available Tools

6 tools
analyze_sentimentAInspect

Analyze sentiment of text (positive/negative/neutral). Returns: {score, label, confidence}

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of disclosing behavior. It does disclose the return structure ({score, label, confidence}), which adds useful information, but it does not explain the meaning of 'score' or 'confidence', nor any edge cases or error behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences, front-loaded with purpose and output format. Every word earns its place with no redundancy or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter tool with no output schema, the description provides the return structure but lacks interpretive context for the score and confidence values. It also offers no guidance on appropriate use cases, making it minimally complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has one parameter 'text' with 0% description coverage. The description's 'of text' clarifies that the parameter is the text to be analyzed, adding some meaning beyond the bare schema. However, it does not detail format constraints, length limits, or language expectations.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool analyzes sentiment of text and lists the output categories (positive/negative/neutral), using a specific verb and resource. It distinguishes from sibling tools like detect_language and summarize_text by focusing specifically on sentiment classification.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives. It does not provide context, exclusions, or alternate tool suggestions. The agent must infer usage solely from the purpose statement.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

detect_languageAInspect

Detect language of text using character frequency analysis. Returns: {language, confidence, method}

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes
Behavior3/5

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 method (character frequency analysis) and return shape ({language, confidence, method}). However, it does not mention potential limitations, error behavior, or supported languages, leaving some behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with the purpose front-loaded and return format clearly specified. Every word earns its place with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter and no output schema, the description covers the purpose and return value adequately. It falls slightly short of full completeness by omitting edge cases or confidence interpretation, but it is sufficient for most agents.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description clarifies that 'text' is the input whose language is detected. Though minimal, this is sufficient for a single obvious parameter, but additional details (e.g., encoding, length constraints) are absent.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource ('Detect language of text') and clearly distinguishes from sibling tools like sentiment analysis, keyword extraction, and summarization. It leaves no ambiguity about what the tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use the tool (when language identification is needed) but does not explicitly mention alternatives or exclusions. Since sibling tools are clearly different, the context is sufficient without explicit when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

extract_keywordsAInspect

Extract top keywords from text using TF scoring. Returns: {keywords: [{word, score}], total_words}

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes
top_nNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses the scoring algorithm ('TF scoring') and the return structure ('keywords: [{word, score}], total_words'), which are behavioral details beyond a simple action statement. However, it doesn't mention edge cases like stopword removal or handling of empty text, so it's not exhaustive but still informative.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with two sentences: the first states the action and method, the second lists the return format. Every word earns its place with no fluff or repetition, and it front-loads the most important information first.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity tool with no output schema, the description provides the return structure directly, which is helpful. It covers what the tool does, how it works, and what it returns. Missing are any notes on parameter semantics and potential limitations, but the overall context is sufficient for a simple extractor tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage, so the description must compensate. It only implicitly references the 'text' parameter via 'from text' and does not explain 'top_n' at all. The parameter name 'top_n' is somewhat self-explanatory, but the description fails to clarify how it affects the output or that it defaults to 10, leaving a clear gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Extract' and the resource 'top keywords from text', and defines the method 'using TF scoring'. This distinguishes it from siblings like analyze_sentiment or summarize_text, which have different actions and outputs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context: use this tool when you need to extract keywords from text based on term frequency. It doesn't explicitly mention alternatives or exclusions, but the behavior is straightforward and the sibling names suggest distinct use cases, so the guidance is adequate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_duplicatesAInspect

Find duplicate or near-duplicate texts using Jaccard similarity. Returns: {duplicates: [{text1_idx, text2_idx, similarity}]}

ParametersJSON Schema
NameRequiredDescriptionDefault
textsYes
thresholdNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses the algorithm and return structure, but lacks details on input assumptions (e.g., text format), edge cases, or whether the operation is read-only. This is a gap but not misleading.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words. The operation is front-loaded, and the return format is compactly included. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the core purpose and output but omits key context such as input element types, threshold semantics, and any operational safety notes. Given no output schema or annotations, the description is adequate but not fully complete for confident invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

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 mentions Jaccard similarity but does not explain the 'threshold' parameter (e.g., range, default effect) or the expected element type in the 'texts' array. The return format hints at indices but not the input structure.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear verb ('Find'), specific resource ('duplicate or near-duplicate texts'), and method ('using Jaccard similarity'). It distinguishes itself from sibling text-analysis tools like analyze_sentiment or extract_keywords by focusing on deduplication.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use it (when duplicate detection is needed) but gives no explicit usage guidance or alternatives. It does not mention exclusions or compare with sibling tools, leaving the agent to infer context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

health_checkCInspect

Server health check.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations available, the description must disclose behavioral traits but does not. It fails to explain what a 'health check' means, whether it performs a read-only status query, makes external calls, requires authentication, or what side effects might occur. This leaves the agent completely in the dark regarding tool behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise at four words, but it is under-specified rather than efficiently structured. It conveys the essential topic but lacks the contextual depth expected of a tool description, making it minimally acceptable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool (no parameters, no output schema), the description should at least clarify what the health check reports (e.g., status code, latency, uptime). It does not, so the description is incomplete for an agent to predict the tool's response or behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the description is not required to add parameter-level semantics. The schema already indicates no parameters, and the description provides no additional details, but since there are no parameters, there is nothing to explain.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Server health check' is a noun phrase that communicates the general purpose but lacks a specific verb or detail on what exactly the check entails. It distinguishes from sibling text-analysis tools but essentially restates the tool name with minimal added meaning.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. There is no mention of context, prerequisites, or exclusion criteria, leaving the agent to infer usage solely from the tool name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

summarize_textAInspect

Extractive summarization — picks most important sentences. Returns: {summary, sentences_used, original_length}

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes
max_sentencesNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of behavioral disclosure. It does disclose the return format and the extractive nature, but it does not explain how importance is determined, whether the output is stable, or any limitations regarding text length or language. Some behavioral context is added, but 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no wasted words. It front-loads the core purpose ('Extractive summarization') and immediately follows with the key output format. This is concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (2 parameters, no output schema, no annotations), the description provides the essential purpose and return shape, which is largely sufficient. However, it misses explicit parameter explanations and usage guidance, preventing a perfect score.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. However, it only mentions 'most important sentences' and the return fields, but does not explain the roles of 'text' or 'max_sentences'. The schema provides only names and a default, so the description adds no meaningful parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Extractive summarization — picks most important sentences,' which clearly defines the tool's purpose with a specific verb ('picks') and resource (sentences). It distinguishes from sibling tools like analyze_sentiment and extract_keywords by specifying extractive summarization as the unique function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for generating summaries by selecting important sentences, but it does not provide explicit guidance on when to use this tool over alternatives or when not to use it. No exclusions or alternative recommendations are mentioned, leaving the usage context implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.