Skip to main content
Glama
Garoth

WolframAlpha LLM MCP Server

by Garoth
README.md
# WolframAlpha LLM MCP Server

<img src="assets/wolfram-llm-logo.png" width="256" alt="WolframAlpha LLM MCP Logo" />

A Model Context Protocol (MCP) server that provides access to WolframAlpha's LLM API. https://products.wolframalpha.com/llm-api/documentation

<div>
  <img src="assets/readme-screen-1.png" width="609" alt="WolframAlpha MCP Server Example 1" /><br/><br/>
  <img src="assets/readme-screen-2.png" width="609" alt="WolframAlpha MCP Server Example 2" />
</div>

## Features

- Query WolframAlpha's LLM API with natural language questions
- Answer complicated mathematical questions
- Query facts about science, physics, history, geography, and more
- Get structured responses optimized for LLM consumption
- Support for simplified answers and detailed responses with sections

## Available Tools

- `ask_llm`: Ask WolframAlpha a question and get a structured llm-friendly response
- `get_simple_answer`: Get a simplified answer
- `validate_key`: Validate the WolframAlpha API key

## Installation

```bash
git clone https://github.com/Garoth/wolframalpha-llm-mcp.git
npm install
```

## Configuration

1. Get your WolframAlpha API key from [developer.wolframalpha.com](https://developer.wolframalpha.com/)

2. Add it to your Cline MCP settings file inside VSCode's settings (ex. ~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json):

```json
{
  "mcpServers": {
    "wolframalpha": {
      "command": "node",
      "args": ["/path/to/wolframalpha-mcp-server/build/index.js"],
      "env": {
        "WOLFRAM_LLM_APP_ID": "your-api-key-here"
      },
      "disabled": false,
      "autoApprove": [
        "ask_llm",
        "get_simple_answer",
        "validate_key"
      ]
    }
  }
}
```

## Development

### Setting Up Tests

The tests use real API calls to ensure accurate responses. To run the tests:

1. Copy the example environment file:
   ```bash
   cp .env.example .env
   ```

2. Edit `.env` and add your WolframAlpha API key:
   ```
   WOLFRAM_LLM_APP_ID=your-api-key-here
   ```
   Note: The `.env` file is gitignored to prevent committing sensitive information.

3. Run the tests:
   ```bash
   npm test
   ```

### Building

```bash
npm run build
```

## License

MIT

TDQS

C2.9/5.0

Scored across 3 tools

Disambiguation2/5

The tools 'ask_llm' and 'get_simple_answer' have overlapping purposes—both process WolframAlpha queries to return answers, with only subtle differences in output format. An agent could easily confuse them, as the descriptions don't clearly delineate distinct use cases, leading to potential misselection.

Naming Consistency4/5

The naming follows a consistent snake_case pattern across all tools, with clear verb_noun structures (e.g., ask_llm, get_simple_answer). However, 'validate_key' deviates slightly by not directly involving query processing, though it maintains the same stylistic convention.

Tool Count3/5

With only 3 tools, the count feels thin for a server named 'WolframAlpha LLM MCP Server', which suggests broader functionality. While the tools cover core querying and key validation, the limited number may restrict agent capabilities in handling diverse WolframAlpha tasks.

Completeness2/5

The tool surface is significantly incomplete for interacting with WolframAlpha's capabilities. It lacks operations for different query types (e.g., computational, visual, step-by-step), error handling, or advanced features, leaving obvious gaps that could cause agent failures in complex scenarios.

Maintenance

ActivityInactive
ResponsivenessNo issues