Skip to main content
Glama
IBM

Physics MCP Server

by IBM

calculate_work_power

Calculate work done by a force and power using vector dot product. Input force and displacement vectors, optionally include time for power calculation.

Instructions

Calculate work done by a force and optionally power.

Work is the dot product: W = F · d
Power (if time given): P = W / t

Args:
    force: Force vector [x, y, z] in Newtons (or JSON string)
    displacement: Displacement vector [x, y, z] in meters (or JSON string)
    time: Time taken in seconds (optional, for power calculation)

Returns:
    Dict containing:
        - work: Work done in Joules
        - power: Power in Watts (if time provided, else None)

Example - Pushing box 5m with 100N force:
    result = await calculate_work_power(
        force=[100, 0, 0],
        displacement=[5, 0, 0],
        time=10.0
    )
    # Work = 500 J, Power = 50 W

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
forceYes
displacementYes
timeNo
Behavior4/5

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

With no annotations provided, the description carries full burden and does well by explaining the mathematical behavior (dot product for work, division for power), input formats (vectors as arrays or JSON strings), units (Newtons, meters, seconds, Joules, Watts), and return structure. However, it doesn't mention error handling or edge cases like zero displacement.

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?

Perfectly structured with purpose statement, formulas, parameter explanations, return specification, and a concrete example. Every sentence adds value with no redundancy. The example efficiently demonstrates usage with realistic values.

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 physics calculation tool with no annotations and no output schema, the description provides excellent coverage of purpose, behavior, parameters, and returns. The only minor gap is lack of explicit error cases or limitations, but the example and formulas provide strong contextual understanding.

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

Parameters5/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 fully compensates by explaining all three parameters: force as a vector in Newtons, displacement as a vector in meters, and time as optional seconds for power calculation. It provides format details (arrays or JSON strings) and clarifies the optional nature of time.

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 work done by a force and optionally power, specifying the physics formulas (W = F·d and P = W/t). It distinguishes from sibling tools like calculate_kinetic_energy or calculate_potential_energy by focusing specifically on work and power calculations.

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 through the formulas and optional time parameter, but doesn't explicitly state when to use this tool versus alternatives like calculate_force or calculate_kinetic_energy. It mentions power calculation is conditional on time being provided, which provides some contextual guidance.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/IBM/chuk-mcp-physics'

If you have feedback or need assistance with the MCP directory API, please join our Discord server