Scientific Computation MCP
Provides tools for scientific computation, including tensor storage, linear algebra, vector calculus, and visualization.
Scientific Computation MCP
Installation Guide
Claude Desktop
Open Claude Desktop's configuration file (claude_desktop_config.json) and add the following:
- Mac/Linux:
{
"mcpServers": {
"numpy_mcp": {
"command": "npx",
"args": [
"-y",
"@smithery/cli@latest",
"run",
"@Aman-Amith-Shastry/scientific_computation_mcp",
"--key",
"<YOUR_SMITHERY_API_KEY>"
]
}
}
}
- Windows:
{
"mcpServers": {
"numpy_mcp": {
"command": "cmd",
"args": [
"/c",
"npx",
"-y",
"@smithery/cli@latest",
"run",
"@Aman-Amith-Shastry/scientific_computation_mcp",
"--key",
"<YOUR_SMITHERY_API_KEY>"
]
}
}
}
Or alternatively, run the following command:
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
If you prefer to access the server through Cursor instead, then run the following command:
npx -y @smithery/cli@latest install @Aman-Amith-Shastry/scientific_computation_mcp --client cursor --key <YOUR_SMITHERY_API_KEY>
Components of the Server
Tools
Tensor storage
create_tensor: Creates a new tensor based on a given name, shape, and values, and adds it to the tensor store. For the purposes of this server, tensors are vectors and matrices.view_tensor: Display the contents of a tensor from the store .delete_tensor: Deletes a tensor based on its name in the tensor store.
Linear Algebra
add_matrices: Adds two matrices with the provided names, if compatible.subtract_matrices: Subtracts two matrices with the provided names, if compatible.multiply_matrices: Multiplies two matrices with the provided names, if compatible.scale_matrix: Scales a matrix of the provided name by a certain factor, in-place by default.matrix_inverse: Computes the inverse of the matrix with the provided name.transpose: Computes the transpose of the inverse of the matrix of the provided name.determinant: Computes the determinant of the matrix of the provided name.rank: Computes the rank (number of pivots) of the matrix of the provided name.compute_eigen: Calculates the eigenvectors and eigenvalues of the matrix of the provided name.qr_decompose: Computes the QR factorization of the matrix of the provided name. The columns of Q are an orthonormal basis for the image of the matrix, and R is upper triangular.svd_decompose: Computes the Singular Value Decomposition of the matrix of the provided name.find_orthonormal_basis: Finds an orthonormal basis for the matrix of the provided name. The vectors returned are all pair-wise orthogonal and are of unit length.change_basis: Computes the matrix of the provided name in the new basis.
Vector Calculus
vector_project: Projects a vector in the tensor store to the specified vector in the same vector spacevector_dot_product: Computes the dot product of two vectors in the tensor stores based on their provided names.vector_cross_product: Computes the cross product of two vectors in the tensor stores based on their provided names.gradient: Computes the gradient of a multivariable function based on the input function. Example call:gradient("x^2 + 2xyz + zy^3"). Do NOT include the function name (like f(x, y, z) = ...`).curl: Computes the curl of a vector field based on the input vector field. The input string must be formatted as a python list. Example call:curl("[3xy, 2z^4, 2y]"").divergenceComputes the divergence of a vector field based on the input vector field. The input string must be formatted as a python list. Example call:divergence("[3xy, 2z^4, 2y]"").laplacianComputes the laplacian of a scalar function (as the divergence of the gradient) or a vector field (where a component-wise laplacian is computed). If a scalar function is the input, it must be input in the same format as in thegradienttool. If the input is a vector field, it must be input in the same manner as thecurl/divergencetools.directional_deriv: Computes the directional derivative of a function in a given directionuBy default, the tool normalizesubefore computing the directional derivative, as specified by theunitparameter.
Visualization
plot_vector_field: Plots a vector field (specified in the same format as in the curl/divergence functions). Currently, only 3d vector fields are supported. A 2d png perspective image of the vector field is returned. By default, the bounds of the graph are from -1 to 1 on each axis.plot_function: Plots a function in 2d or 3d (based on the input variables), specified in the same format as in thegradienttool. Only the variables x and y can be used.
Related Servers
Scout Monitoring MCP
sponsorPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
sponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
ts-morph Refactoring Tools
Refactor TypeScript and JavaScript codebases using ts-morph. Supports renaming symbols and files, moving symbols, and searching for references.
Terminal MCP Server
Execute commands on local or remote hosts via SSH. Supports session persistence and environment variables.
Deno Gemini Grounding MCP Server
A Model Context Protocol server that provides access to the connpass users API v2, utilizing Gemini for grounding.
Jupyter Earth MCP Server
Provides tools for geospatial analysis within Jupyter notebooks.
S3 Documentation MCP Server
A lightweight Model Context Protocol (MCP) server that brings RAG (Retrieval-Augmented Generation) capabilities to your LLM over Markdown documentation stored on S3.
A11y MCP Server
Perform accessibility audits on webpages using the axe-core engine to identify and help fix a11y issues.
Kali MCP Server
A Kali Linux MCP server providing AI assistants with access to security tools.
AbletonMCP
Control Ableton Live with AI prompts for music production, track creation, and session manipulation.
Metal MCP Server
Search Metal Framework documentation and generate code.
Agentic Control Framework (ACF)
A toolkit for autonomous agent development with tools for task management, filesystem operations, browser automation, and terminal control.
