Enables execution of Wolfram Language code in a secure, session-based environment, with tools for session initialization, code execution, and resource management.
Provides tools for creating sessions, executing Wolfram Language code, and managing session resources within a Mathematica kernel, enabling secure, session-based interaction with Wolfram Language.
Mathematica MCP Server
This project provides a Model Context Protocol (MCP) server for interacting with a Wolfram Mathematica kernel. It allows Large Language Models (LLMs) to execute Wolfram Language code in a secure, session-based environment.
The animalid
folder contains a simple tool for generating unique, animal-based identifiers. Since LLMs often fail to copy UUIDs correctly, this tool replaces them with animal-themed IDs that are more likely to be transcribed accurately.
Tools Provided
create_mathematica_session
: Initializes a new Wolfram Language session and returns a unique session ID.execute_mathematica_code
: Executes Wolfram Language code within a specified session.close_mathematica_session
: Terminates a session and releases its resources.
Prerequisites
- Python 3.10 or higher.
uv
Python package manager. (Installation guide)- A local installation of the Wolfram Engine or Mathematica. The
wolframclient
library requires this to function.
Installation & Setup
- Set the Security Key:This server uses a secret key to generate secure session IDs. You must set this as an environment variable.Note: Do not use a weak key or hardcode it in the script.
Usage
To use this server, you need to connect it to an MCP-compatible client, such as Claude for Desktop.
- Configure the MCP Client:Open your client's MCP configuration file (e.g.,
claude_desktop_config.json
for Claude for Desktop) and add the following server configuration.Important: Replace/path/to/your/project/my_mcp
with the absolute path to this project's directory on your system.You may need to use the full path to theuv
executable in thecommand
field if it's not in your system's PATH. You can find it by runningwhich uv
(macOS/Linux) orwhere uv
(Windows).
screenshot
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Allows LLMs to execute Wolfram Language code in a secure, session-based environment by providing an interface to interact with a Wolfram Mathematica kernel.
Related MCP Servers
- AsecurityAlicenseAqualityEnables LLMs to interact with web pages, take screenshots, and execute JavaScript in a real browser environmentLast updated -10964228JavaScriptMIT License
- AsecurityAlicenseAqualityEnables LLM applications to interact with macOS through AppleScript.Last updated -21255TypeScriptMIT License
- AsecurityAlicenseAqualityA secure server for executing terminal commands within predefined paths, allowing safe interaction by Large Language Models with operating system environments.Last updated -11167JavaScriptMIT License
- AsecurityFlicenseAqualityEnables browser automation for LLMs on Linux display servers, supporting web interaction, screenshots, and JavaScript execution in a real browser.Last updated -706JavaScript