Skip to main content
Glama

Server Details

Transform your data analysis with our Data Compute & Stats Bot. Effortlessly calculate descriptive

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.4/5 across 6 of 6 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct operation: financial calculations (IRR, NPV), general statistics, unit conversion, exchange rates, and health check. There is no overlap; descriptions clearly differentiate purposes.

Naming Consistency4/5

Most tools follow a verb_noun pattern (e.g., calculate_irr, convert_units, get_exchange_rates). The only outlier is health_check, which lacks a verb, but overall naming is consistent and predictable.

Tool Count5/5

With 6 tools, the server is well-scoped for data computation and statistics. Each tool serves a clear purpose without being overwhelming or sparse.

Completeness3/5

The set covers basic finance (IRR, NPV), descriptive statistics, unit conversion, and exchange rates, but the domain is eclectic. Missing statistical tests or data transformation tools, and the inclusion of exchange rates feels arbitrary for a stats server.

Available Tools

6 tools
calculate_irrBInspect

Calculate Internal Rate of Return (IRR) for cashflows. cashflows: [initial_investment (negative), cf1, cf2, ...] Returns: {irr_percent}

ParametersJSON Schema
NameRequiredDescriptionDefault
guessNo
cashflowsYes
Behavior2/5

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

With no annotations provided, the description carries full behavioral burden. It only states the return format and cashflow structure, omitting details about error handling, convergence behavior, or assumptions (e.g., periodic cash flows). For a financial tool, this is insufficient.

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

Conciseness4/5

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

The description is concise with two sentences that front-load the purpose. It avoids unnecessary words, though it could be improved by separating parameter details more clearly.

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 complexity of IRR calculation and absence of output schema/annotations, the description is incomplete. It does not address edge cases like multiple IRRs, non-convergence, or cashflow periodicity, leaving important gaps for an AI agent.

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?

Schema coverage is 0%, so the description must compensate. It explains the cashflows array format and makes the guess parameter implicit (only default shown in schema). The description adds meaningful context for cashflows but neglects to explain the guess parameter's role.

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 calculates Internal Rate of Return (IRR) for cashflows, with a specific verb and resource. It distinguishes from sibling tools like calculate_npv and calculate_statistics by focusing on IRR.

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 provides the required format for cashflows (initial investment negative, then cash flows) and mentions the return value, giving context on when to use. However, it does not offer explicit guidance on when not to use or discuss alternatives like calculate_npv.

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

calculate_npvAInspect

Calculate Net Present Value. rate: discount rate as decimal (e.g. 0.1 = 10%). Returns: {npv, rate_percent, cashflows_count}

ParametersJSON Schema
NameRequiredDescriptionDefault
rateYes
cashflowsYes
Behavior4/5

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

No annotations provided, but description describes the return shape and rate format. Implies a read-only calculation; no side effects discussed but sufficient for the operation.

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, front-loaded with purpose. No unnecessary words.

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?

Simple tool, but missing description for cashflows parameter and no example or edge cases. Output shape is given, but parameter documentation is incomplete.

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?

Only 'rate' is explained with format and example; 'cashflows' remains undocumented. With 0% schema coverage, description partly compensates but leaves a 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?

Clearly states 'Calculate Net Present Value' as a specific verb+resource. Distinguishes from siblings like calculate_irr by focusing on NPV directly.

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 on when to use this tool vs calculate_irr or others. The description does not mention alternatives or context.

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

calculate_statisticsAInspect

Calculate descriptive statistics for a list of numbers. Returns: {mean, median, std_dev, min, max, sum, count, percentiles}

ParametersJSON Schema
NameRequiredDescriptionDefault
numbersYes
Behavior2/5

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

No annotations exist, so the description must fully disclose behavior. It lists return fields but omits edge-case handling (e.g., empty list, non-numeric values) or data type requirements beyond the word 'numbers'.

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: one for purpose, one for return fields. No unnecessary words, front-loading the action and input.

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?

Given a single parameter and no output schema, the description covers the return shape but lacks details on error behavior, precision, or valid input constraints. Adequate for a simple tool but not comprehensive.

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 description adds 'list of numbers' to the schema, which has an empty items type. However, it does not specify numeric format (e.g., floats vs integers) or which percentiles are included, leaving some ambiguity despite low schema coverage (0%).

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 specifies the action ('calculate'), the resource ('descriptive statistics'), and the input ('list of numbers'), clearly differentiating from siblings like calculate_irr and calculate_npv which are financial tools.

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?

No explicit when-to-use or when-not-to-use guidance is provided. While the domain (statistics) is implied by sibling names, the description does not exclude alternatives or mention prerequisites.

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

convert_unitsAInspect

Convert between units. Supports: length, weight, temperature, area, volume. Returns: {result, from_unit, to_unit, formula}

ParametersJSON Schema
NameRequiredDescriptionDefault
valueYes
to_unitYes
from_unitYes
Behavior4/5

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

No annotations provided, but the description explicitly states the return format as {result, from_unit, to_unit, formula}. This adds behavioral context beyond a simple conversion claim. No mention of side effects or auth, but conversion is inherently read-only.

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 fluff. First sentence states the action, second lists supported domains and return structure. Efficient and front-loaded.

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?

For a conversion tool with 3 required parameters and no output schema, the description lacks essential details on valid unit formats and input constraints. An agent may fail to provide correct units without additional knowledge.

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%, and the description does not explain parameter formats or valid unit strings. It only lists categories, which adds some context but is insufficient for an agent to know expected unit names (e.g., 'meters' vs 'm').

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 converts between units and lists specific categories (length, weight, temperature, area, volume). It distinguishes itself from sibling tools which are financial calculations or health checks.

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 usage for unit conversion within the listed categories but does not provide explicit when-to-use or when-not-to-use guidance. Sibling tools are distinct, so no confusion.

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

get_exchange_ratesBInspect

Get current exchange rates from NBU (Ukraine National Bank) — no API key needed. Returns: {rates, base, date, source}

ParametersJSON Schema
NameRequiredDescriptionDefault
baseNoUSD
Behavior3/5

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

Without annotations, description carries full burden. It notes no API key needed and outlines return structure, but does not mention rate limits, idempotency, or side effects. Some transparency is provided.

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, no redundancy, front-loaded with the essential action and return format. Highly efficient.

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 no output schema and no parameter documentation, the description is incomplete. The base parameter is unexplained, and the return structure is only sketched. Important gaps remain.

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

Parameters1/5

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

The description does not mention the base parameter at all, despite 0% schema description coverage. This leaves the parameter's meaning and possible values completely undocumented.

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 gets current exchange rates from NBU, and the sibling tools are unrelated (calculations, health check), so purpose is distinct and well-defined.

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 on when to use this tool or when not to; no mention of alternatives or context for choosing among siblings. The description is purely functional.

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

health_checkBInspect

Server health check.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior2/5

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

No annotations provided. The description 'Server health check.' is minimal and does not disclose behavioral traits such as what happens during the check, latency, or side effects. Agents have no information beyond the name.

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

Conciseness4/5

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

The description is extremely concise (4 words) and front-loaded. While efficient, it borders on under-specification. A single sentence with no structure but no wasted words.

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 no output schema and no annotations, the description is too vague. It does not explain what the tool returns (e.g., status, latency, uptime), leaving the agent without enough context to interpret results.

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 no parameters, and schema description coverage is 100% (empty schema). The description adds no parameter-level meaning but is not required since there are no parameters. Baseline score of 4 applies.

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

Purpose4/5

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

The description 'Server health check.' clearly indicates the tool's purpose: checking server health. It is distinct from sibling tools (all calculations/utilities). However, it lacks specificity about what aspects of health are checked.

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?

Usage is implied: use when needing to verify server health. No explicit guidance on when to use or not use this tool versus alternatives, but the context is straightforward.

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

  • A
    license
    B
    quality
    B
    maintenance
    Statistical analysis, forecasting, and ML for business data (Shopify, Stripe, WooCommerce, eBay, GA4, Search Console). Upload a CSV or connect live data sources — ask a question in Claude or Cursor, get an interactive HTML report
    19
    10
    7
    MIT
  • F
    license
    -
    quality
    C
    maintenance
    Enables AI-powered business intelligence and data analysis using pandas and LLM code generation. Supports automated data processing, statistical analysis, and visualization creation through natural language interactions.
    15

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.