Skip to main content
Glama
Arnie936

MCP All-in-One Server

by Arnie936

MCP All-in-One Server

This is a versatile MCP server that demonstrates multiple capabilities of the Model Context Protocol (MCP). It provides tools for calculation, external integrations (webhooks), resources for context, and prompt templates.

Capabilities

đź§® Tools

Functions that the AI can execute:

  • Calculator: Basic arithmetic operations (add, subtract, multiply, divide).

  • Webhook Integration: send_to_webhook - Sends a text prompt to a configured n8n workflow and returns the response.

📚 Resources

Contextual data the AI can read:

  • support://playbook: A full Customer Support Playbook containing company overview, tone rules, product details, and standard operating procedures.

📝 Prompts

Templates to structure AI interactions:

  • webinar_to_blog: A structured prompt template to convert webinar transcripts into engaging blog posts.

Related MCP server: mcp-web-calc

Prerequisites

  • Python 3.10+

  • uv: A fast Python package installer and resolver.

    • Windows: powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

    • macOS/Linux: curl -LsSf https://astral.sh/uv/install.sh | sh

  • Node.js & npm (optional, for the MCP Inspector)

Setup

  1. Open your terminal in this directory (calculator_server).

  2. Initialize the project (if you haven't already):

    uv init
  3. Add the required dependencies:

    uv add "mcp[cli]" httpx

Running the Server

You can run the server directly using uv:

uv run server.py

Note: This will use stdio for communication, so it will expect input from stdin and won't show much output in the console unless connected to an MCP client.

Testing with MCP Inspector

To test the server using the MCP Inspector (a web-based tool to interact with your server):

npx @modelcontextprotocol/inspector uv run server.py

This will launch the inspector in your browser. You can:

  • Tools: Test the calculator and webhook tools.

  • Resources: View the content of support://playbook.

  • Prompts: Execute the webinar_to_blog template.

Integration with Claude Desktop

To use this server with Claude for Desktop:

  1. Open your Claude Desktop configuration file:

    • Windows: %APPDATA%\Claude\claude_desktop_config.json

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  2. Add the server configuration. You can copy the content from claude_desktop_config.json in this directory:

    {
      "mcpServers": {
        "calculator": {
          "command": "uv",
          "args": [
            "--directory",
            "C:\\Users\\Your_Name\\Desktop\\mcps\\calculator_server",
            "run",
            "server.py"
          ]
        }
      }
    }

    Important: Make sure the path in --directory matches the actual absolute path to your calculator_server folder.

  3. Restart Claude for Desktop.

Available Tools

5 tools
addA

Add two numbers

ParametersJSON Schema
NameRequiredDescriptionDefault
aYes
bYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
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. 'Add two numbers' transparently describes a pure arithmetic operation with no side effects or hidden behavior. It does not mention edge cases, but none are necessary for a simple addition tool.

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 four words, front-loaded with the operation, and contains zero extraneous information. Every word earns its place.

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

Completeness5/5

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

For a trivial arithmetic tool with an output schema present, the description fully covers what an agent needs to know. There are no dependencies, side effects, or error cases that require explanation.

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%, yet the description adds no meaning beyond the schema: 'two numbers' merely restates that both parameters are numbers. It does not explain the role of each parameter or any format constraints, so it fails to compensate for the lack of schema descriptions.

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 'Add two numbers' uses a specific verb and resource, clearly distinguishing this tool from siblings like subtract, multiply, and divide. An agent can immediately understand the operation without opening the schema.

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 when addition is needed, but it gives no explicit context for when to choose this over alternatives. There is no mention of when to use add versus subtract/multiply/divide, though the intent is obvious for such a basic operation.

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

divideA

Divide a by b

ParametersJSON Schema
NameRequiredDescriptionDefault
aYes
bYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

There are no annotations, so the description carries the burden of behavioral disclosure. 'Divide a by b' states the core operation and implies a pure computation, but it does not mention edge cases such as division by zero, error behavior, or output type.

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 a single, front-loaded sentence with no filler. Every word contributes semantic value, and the structure is perfectly sized for the simplicity of the tool.

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 two-parameter pure arithmetic tool, the description plus schema is nearly complete. The output schema likely covers the return shape. The only meaningful missing context is the division-by-zero behavior, which could lead to runtime errors if b is 0.

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?

Schema description coverage is 0%, so the description must provide meaning for the parameters. It clearly establishes that a is the dividend and b is the divisor, making the order and relationship between the two parameters explicit. However, it does not state constraints such as b ≠ 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 uses a specific verb ('Divide') and names the exact resource/operation ('a by b'), which clearly distinguishes it from the sibling tools add, subtract, and multiply. An agent can immediately know this tool computes division and nothing else.

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 the tool—whenever division is needed—but it does not explicitly state when not to use it or compare it to the arithmetic siblings. No alternative tools or exclusion conditions are mentioned.

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

multiplyA

Multiply two numbers

ParametersJSON Schema
NameRequiredDescriptionDefault
aYes
bYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations provided, the description must take on the burden of disclosing behavior. The phrase 'Multiply two numbers' accurately describes the core behavior, but it does not mention return type, error handling, or edge cases like overflow or non-numeric inputs. For a trivial math operation, this is minimally acceptable.

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 a single, focused sentence with no wasted words. It front-loads the verb and states the exact scope, making it immediately scannable for an agent.

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 extreme simplicity of the operation and the presence of an output schema, the description is nearly complete. It could mention whether the result is a number, but the output schema presumably covers that. No prerequisites or hidden behaviors exist for such a basic calculator function.

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 input schema has 0% description coverage, so the description must compensate. It does clarify that both a and b are numbers, but it does not differentiate them—though for multiplication, operands are commutative and the positional order is irrelevant. The description adds minimal value beyond the schema's type declarations.

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 uses a specific verb ('Multiply') and resource ('two numbers'), which clearly conveys the operation and distinguishes it from sibling arithmetic tools like add, subtract, and divide. It is not a tautology because it adds the operand details beyond the tool name.

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 should be used whenever multiplication of two numeric values is needed. However, it does not explicitly state when to prefer this over siblings or mention any exclusions, such as integer-only constraints or order sensitivity.

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

send_to_webhookC

Send a prompt to the n8n webhook and get the response.

Args: prompt: The text prompt to process

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are present, so the description carries the full burden of behavioral disclosure. It reveals that the tool sends and gets a response, but does not disclose external network dependency, credentials or configuration needs, potential side effects on the n8n workflow, or failure behavior.

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 appropriately short and front-loaded, with the core operation in the first sentence. The Args section is mostly redundant with the schema but keeps a clear, scannable format without adding unnecessary noise.

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 single-parameter tool with an output schema, this is a minimum-viable description: it states what the tool does and what input it needs. It remains incomplete because it omits the webhook payload contract, prerequisites, and error behavior, but the low complexity and output schema reduce the burden.

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. 'prompt: The text prompt to process' restates the field name and type rather than adding new meaning, and it does not explain how the prompt is used in the webhook request. This is only minimal compensation.

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 clearly states the operation with a specific verb and resource: 'Send a prompt to the n8n webhook' and says it returns a response. It does not explicitly differentiate from sibling arithmetic tools, but the target and action are obviously disjoint from them.

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 about when to use this tool versus alternatives, no trigger conditions, and no exclusions. 'Send to n8n webhook' implies a use case, but the description never explicitly tells the agent when this is the right choice.

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

subtractA

Subtract b from a

ParametersJSON Schema
NameRequiredDescriptionDefault
aYes
bYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral disclosure burden. It clearly states that the operation subtracts b from a, making the operand order explicit. For a pure numeric operation with no side effects, this is sufficient, though it does not discuss edge cases like non-finite 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?

The description is four words long, front-loaded with the verb, and contains no filler or redundant information. Every word earns its place.

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

Completeness5/5

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

For a simple, pure arithmetic operation, the description fully covers what an agent needs to invoke it correctly. The operands are identified, the order is explicit, and the output schema exists to document the return value.

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 schema only provides titles 'A' and 'B' with no description coverage, so the description must add meaning. 'Subtract b from a' clarifies the critical ordering: parameter b is the subtrahend and parameter a is the minuend, which is essential for correct invocation.

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 ('Subtract') and names the operands ('b from a'), making the operation unambiguous. It is instantly distinguishable from the sibling tools add, multiply, and divide.

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 appropriate usage for subtraction, but it does not explicitly state when to choose this tool over alternatives or provide any exclusion conditions. An agent can infer the use case from the operation name, but no targeted guidance is given.

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.

  1. 5 tool updatesv0.1.0
    • First observedadd
    • First observeddivide
    • First observedmultiply
    • First observedsend_to_webhook
    • First observedsubtract

TDQS

A3.5/5.0

Scored across 5 tools

Disambiguation5/5

Each arithmetic tool performs a distinct operation (add, subtract, multiply, divide) and the webhook tool is clearly different. No ambiguity.

Naming Consistency5/5

All arithmetic tools use a single verb (add, subtract, multiply, divide) and the webhook tool follows a verb_noun pattern (send_to_webhook). Consistent naming convention.

Tool Count4/5

5 tools is appropriate for a focused set. The count is not excessive and the tools cover basic arithmetic plus a webhook utility. Slightly thin for an 'all-in-one' claim but still reasonable.

Completeness2/5

The arithmetic set lacks operations like modulo, exponentiation, or more complex math. The webhook tool seems disconnected. Overall, the surface is too sparse for a server named 'all-in-one'.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A demonstration MCP server showcasing tools (calculator, file operations, weather, timestamp), resources (server config, system info, documentation), and reusable prompt templates for code review, documentation, and debugging.
    Apache 2.0
  • A
    license
    A
    quality
    D
    maintenance
    An MCP server that enables web searching, URL content extraction, and summarization without requiring API keys. It also provides advanced mathematical evaluation and multi-language Wikipedia summary retrieval tools.
    5
    362
    6
    MIT
  • A
    license
    B
    quality
    D
    maintenance
    A comprehensive MCP server that provides full control over n8n automation workflows through natural language. It offers 43 tools for managing workflows, executions, credentials, and data tables, with safety features like write-mode protection and double-validated workflow creation.
    43
    1
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    An MCP server that exposes three tools to analyze call transcripts for business intelligence, score leads 0-100 with hot/warm/cold classification, and diagnose n8n workflow errors with root cause analysis and proposed fixes.
    3
    MIT