home / mcp / scientific computation mcp server

Scientific Computation MCP Server

Provides tensor storage, linear algebra, vector calculus, and visualization tools for scientific computing.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "aman-amith-shastry-scientific_computation_mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@smithery/cli@latest",
        "run",
        "@Aman-Amith-Shastry/scientific_computation_mcp",
        "--key",
        "<YOUR_SMITHERY_API_KEY>"
      ]
    }
  }
}

You can run the Scientific Computation MCP on your machine to access tensor operations, linear algebra, vector calculus, and visualization tools. This MCP exposes a suite of mathematical primitives you can invoke through a client, making it easy to perform computations from your workflow without implementing these operations from scratch.

How to use

Use a compatible MCP client to connect to the Scientific Computation MCP. You will run the client command that launches the MCP through the Smithery CLI, supplying your API key. Once connected, you can call the available tools to store tensors, perform matrix operations, compute derivatives and curl/divergence, and visualize results. The tooling is designed to work with named tensors and matrices stored in the server, enabling you to chain operations and explore results interactively.

Typical usage flows include creating tensors, performing matrix algebra (addition, subtraction, multiplication, inversion, determinant, rank), computing eigenvectors/values, doing QR and SVD decompositions, changing bases, and evaluating vector calculus operators like gradient, curl, divergence, and Laplacian. You can also plot vector fields and functions to visualize results. Each tool accepts names of stored tensors/vectors and numerical parameters as described in its documentation.

How to install

Prerequisites: you need Node.js with npm/yarn installed to run the Smithery CLI commands.

{
  "mcpServers": {
    "scientific_mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@smithery/cli@latest",
        "run",
        "@Aman-Amith-Shastry/scientific_computation_mcp",
        "--key",
        "<YOUR_SMITHERY_API_KEY>"
      ]
    }
  }
}

Windows users can run the same configuration using the CMD launcher with the same arguments.

{
  "mcpServers": {
    "scientific_mcp": {
      "command": "cmd",
      "args": [
        "/c",
        "npx",
        "-y",
        "@smithery/cli@latest",
        "run",
        "@Aman-Amith-Shastry/scientific_computation_mcp",
        "--key",
        "<YOUR_SMITHERY_API_KEY>"
      ]
    }
  }
}

Alternatively, install and run directly through the Smithery CLI in a single step. This is convenient if you want to start the MCP without creating or editing a local configuration file.

npx -y @smithery/cli@latest install @Aman-Amith-Shastry/scientific_computation_mcp --client claude --key <YOUR_SMITHERY_API_KEY>
```
Restart Claude to load the server properly

Cursor alternative

If you prefer to access the server through Cursor, install and launch using the following command.

npx -y @smithery/cli@latest install @Aman-Amith-Shastry/scientific_computation_mcp --client cursor --key <YOUR_SMITHERY_API_KEY>
`

Available tools

Tensor storage:create_tensor

Creates a new tensor by name with a given shape and values, adding it to the tensor store. Tensors are treated as vectors or matrices for this server.

Tensor storage:view_tensor

Displays the contents of a named tensor from the store.

Tensor storage:delete_tensor

Deletes a named tensor from the store.

Linear Algebra:add_matrices

Adds two matrices by their stored names if they have compatible shapes.

Linear Algebra:subtract_matrices

Subtracts one matrix from another given their names if compatible.

Linear Algebra:multiply_matrices

Multiplies two matrices by their stored names if compatible.

Linear Algebra:scale_matrix

Scales a named matrix by a given factor, in-place by default.

Linear Algebra:matrix_inverse

Computes the inverse of a named matrix.

Linear Algebra:transpose

Computes the transpose of the inverse of the named matrix.

Linear Algebra:determinant

Calculates the determinant of the named matrix.

Linear Algebra:rank

Computes the rank (number of pivots) of the named matrix.

Linear Algebra:compute_eigen

Calculates eigenvectors and eigenvalues of the named matrix.

Linear Algebra:qr_decompose

Computes the QR factorization of the named matrix.

Linear Algebra:svd_decompose

Computes the Singular Value Decomposition of the named matrix.

Linear Algebra:find_orthonormal_basis

Finds an orthonormal basis for the named matrix.

Linear Algebra:change_basis

Computes the matrix of the named tensor in a new basis.

Vector Calculus:vector_project

Projects a vector from the tensor store onto a specified vector in the same space.

Vector Calculus:vector_dot_product

Computes the dot product of two vectors by their stored names.

Vector Calculus:vector_cross_product

Computes the cross product of two vectors by their stored names.

Vector Calculus:gradient

Calculates the gradient of a multivariable function given as a string expression.

Vector Calculus:curl

Computes the curl of a vector field provided as a Python-like list string.

Vector Calculus:divergence

Computes the divergence of a vector field provided as a Python-like list string.

Vector Calculus:laplacian

Computes the Laplacian of a scalar function or a vector field.

Vector Calculus:directional_deriv

Computes the directional derivative of a function in a given direction.

Visualization:plot_vector_field

Plots a 3D vector field and returns a 2D perspective image.

Visualization:plot_function

Plots a 2D or 3D function for visual analysis.