NitroStack Calculator MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@NitroStack Calculator MCP Serverwhat is 12 * 8?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
NitroStack Starter Template
Minimal template for learning NitroStack fundamentals with a calculator-focused MCP server and basic widgets.
What This Template Includes
calculatormodule with tools, resources, and promptsTypeScript + Zod validation setup
Widget-ready project structure
Production-friendly npm scripts
Related MCP server: amrita-companion-mcp
Quick Start
npx @nitrostack/cli init my-server --template typescript-starter
cd my-server
npm run devCommon Commands
npm run dev
npm run build
npm startNitroStudio
NitroStudio is the recommended way to test and debug this template during development.
Download: https://nitrostack.ai/studio
Studio: https://nitrostack.ai/studio
Links
Templates docs: https://docs.nitrostack.ai/templates/01-starter-template
Main repository: https://github.com/nitrocloudofficial/nitrostack
Community
Available Tools
4 toolscalculateC
Perform basic arithmetic calculations
| Name | Required | Description | Default |
|---|---|---|---|
| a | Yes | First number | |
| b | Yes | Second number | |
| operation | Yes | The operation to perform |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description bears full responsibility. It states it performs calculations but omits potential side effects like division-by-zero errors or whether the tool is read-only, leaving behavior ambiguous.
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?
The description is extremely concise, using only four words to convey the entire purpose. There is no redundancy or unnecessary elaboration.
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?
The description lacks essential context such as the return format, error handling, or precision of results. Given no output schema and no annotations, the tool is incomplete for an agent to fully understand behavior without additional inference.
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 schema descriptions cover all parameters, giving a baseline of 3. The tool description itself adds no extra meaning beyond the schema, but the schema already defines 'a', 'b', and 'operation' sufficiently for basic arithmetic.
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 performs basic arithmetic calculations, which is a specific action. It distinguishes itself from sibling tools like convert_temperature by being generic, though it lacks detail on exact 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?
The description provides no guidance on when to use this tool versus alternatives such as convert_temperature. There is no mention of typical use cases or conditions for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_temperatureC
Convert temperature units based on file content or direct input. Supports Celsius (C) and Fahrenheit (F).
| Name | Required | Description | Default |
|---|---|---|---|
| value | No | Temperature value to convert | |
| to_unit | No | Unit to convert to (C or F) | |
| file_name | Yes | Name of the uploaded file | |
| file_type | Yes | MIME type of the uploaded file | |
| from_unit | No | Unit to convert from (C or F) | |
| file_content | Yes | Base64 encoded file content. Will be injected by system. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description states the tool works 'based on file content or direct input', but the schema requires file_name, file_type, and file_content for all invocations, making direct input impossible without dummy file data. This contradiction is misleading and fails to disclose the actual required behavior.
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?
The description is a single, short sentence that gets to the point quickly. It could be slightly more explicit about the file/direct input behavior, but overall it is concise and well-structured.
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?
The description lacks necessary context about the relationship between the file parameters and the temperature conversion parameters, especially given the required fields. There is also no explanation of output format or behavior when both file and direct input are provided, leaving the tool's usage incomplete.
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?
All parameters have descriptions, so schema coverage is complete, meeting the baseline. However, the descriptions are minimal, and the file-related parameters are confusing because they are marked required even for 'direct input' and provide no clarity on their purpose or interaction with the value/from_unit/to_unit parameters.
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 converts temperature units between Celsius and Fahrenheit, identifying the specific verb and resource. However, the mention of 'file content or direct input' introduces some ambiguity about the exact mode of operation, slightly detracting from full clarity.
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?
No guidance is provided on when to use this tool versus the sibling tools like 'calculate' or 'upload-and-analyze'. The description only explains what the tool does, not the scenarios in which it should be preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
extract_commitmentsB
Extract commitments from a meeting transcript
| Name | Required | Description | Default |
|---|---|---|---|
| transcript | Yes |
TDQS
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, but it only states the basic action. It fails to mention expected output format, assumptions about transcript structure, or potential limitations (e.g., language support, commitment definition), leaving significant behavioral unknowns.
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?
The description is a single concise sentence that is immediately understandable. It contains no redundant information and is front-loaded with the action verb, making it highly scannable.
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?
The tool has no output schema or annotations, yet the description does not explain what the extraction result looks like or how it should be interpreted. For a tool with a single input, this is a significant gap—the agent cannot anticipate the response structure or downstream usage.
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 single parameter 'transcript' has 0% schema description coverage, and the tool description adds no extra context about the expected format, language, or length. It merely echoes the parameter name, providing no value beyond the schema's type declaration.
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's function with a specific verb ('extract') and resource ('commitments from a meeting transcript'). It distinguishes itself from sibling tools like 'calculate' and 'convert_temperature' by specifying domain and output concept, and from 'get_commitments' by implying extraction from a transcript rather than retrieval.
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 usage when a meeting transcript is available and commitments need to be identified. However, it does not explicitly state when to prefer this over 'get_commitments' or any other alternative, leaving the decision to the agent's inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_commitmentsB
Return all stored commitments
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden for behavioral disclosure. It does not explicitly state that the operation is read-only, nor does it mention authentication requirements, limitations, or side effects. 'Return' implies a read operation, but this is not sufficient for full transparency.
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?
The description is a single, concise sentence that is front-loaded with the action verb. Every word contributes to the meaning, with no unnecessary filler or repetition.
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 the tool's simplicity (0 parameters, no output schema), the description adequately conveys the core function. However, it lacks explicit details about the return format (e.g., list, array) or any potential caveats, so it is not fully complete.
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 tool has zero parameters, and the schema is empty. Per scoring baseline, this earns a 4 because there are no parameters to describe. The description adds nothing about parameters, but none exist.
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 'Returns all stored commitments', using a specific verb and resource. However, it does not explicitly differentiate this from sibling tool extract_commitments, which may also involve retrieving commitments.
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?
There is no guidance on when to use this tool versus alternatives. The description only explains what it does, without mentioning context or exclusions, so agents receive no decision support.
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.
4 tool updates
v1.0.0- First observed
calculate - First observed
convert_temperature - First observed
extract_commitments - First observed
get_commitments
TDQS
Scored across 4 tools
The tools are individually distinct: calculate handles arithmetic, convert_temperature handles temperature conversions, and the two commitment tools are clearly separated into extraction and retrieval. However, the odd mix of calculator and meeting-transcript features could confuse an agent about which tool is relevant for a given task.
Most tool names follow a verb_noun pattern (convert_temperature, extract_commitments, get_commitments), and the lone 'calculate' is still a verb. Naming is mostly consistent, though 'calculate' is shorter and less descriptive than the others.
Four tools is a reasonable number for a small server and each tool has a clear function. However, the scope seems padded by the commitment tools, which feel out of place in a calculator-focused server.
The calculator side is minimal (arithmetic only, no scientific operations), and the commitment tools lack update/delete functionality. The server's domain is unclear due to mixing unrelated features, leaving obvious gaps in both areas.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Educational MCP server with 17 math/stats tools, visualizations, and persistent workspace
This MCP server enables users to perform scientific computations regarding linear algebra and vect…
An MCP server for deep research or task groups
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceThis MCP server provides calculator tools, resources, and prompts for arithmetic operations, and serves as a minimal template for learning NitroStack fundamentals.-
- FlicenseAqualityCmaintenanceA minimal NitroStack starter template with a calculator module including tools, resources, and prompts for learning MCP server fundamentals.4-
- FlicenseBqualityCmaintenanceA minimal MCP server template for learning NitroStack fundamentals, featuring a calculator module with tools, resources, and prompts.6-
- FlicenseCqualityCmaintenanceA minimal MCP server template for learning NitroStack fundamentals, featuring a calculator module with tools, resources, and prompts.9-