math-mcp-learning-server


Namemath-mcp-learning-server JSON
Version 0.8.2 PyPI version JSON
download
home_pageNone
SummaryProduction-ready educational MCP server with enhanced visualizations and persistent workspace - Complete learning guide demonstrating FastMCP 2.0 best practices for Model Context Protocol development
upload_time2025-11-04 16:52:24
maintainerNone
docs_urlNone
authorNone
requires_python<3.14,>=3.11
licenseNone
keywords mcp math calculator learning fastmcp tutorial education cloud deployment workspace persistence
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Math MCP Learning Server

[![PyPI version](https://badge.fury.io/py/math-mcp-learning-server.svg)](https://pypi.org/project/math-mcp-learning-server/)

**Cloud hosted:** Connect any MCP client to [https://math-mcp-learning.fastmcp.app/mcp](https://math-mcp-learning.fastmcp.app/mcp) (MCP client required, no local server install needed)

A persistent quantitative workspace built as a Model Context Protocol (MCP) server. This project demonstrates enterprise-grade patterns for MCP development, featuring cross-session state persistence - a unique capability that most LLMs cannot achieve natively.

Perfect for learning MCP fundamentals, demonstrating professional patterns, and serving as a foundation for advanced mathematical workflows.

Built with [FastMCP 2.0](https://github.com/jlowin/fastmcp) and the official [Model Context Protocol Python SDK](https://github.com/modelcontextprotocol/python-sdk).

## Requirements

**This is an MCP server** - it requires an MCP client to use. Supported clients include:

- **Claude Desktop** - Anthropic's desktop app with native MCP support
- **Claude Code** - Command-line MCP client from Anthropic
- **Goose** - Open-source AI agent framework with MCP support
- **OpenCode** - Open-source MCP client by SST
- **Amazon Q** - AWS's AI assistant with MCP support
- **Gemini CLI** - Google's Gemini command-line tool
- Any other MCP-compatible client

**Cannot run standalone** - The server must be connected through an MCP client.

## Quick Start

### Option 1: Try it Now (Cloud)

Connect your MCP client to the hosted server - no local installation required!

**Claude Desktop:**
```json
{
  "mcpServers": {
    "math-cloud": {
      "transport": "http",
      "url": "https://math-mcp-learning.fastmcp.app/mcp"
    }
  }
}
```

**Claude Code:**
```bash
claude mcp add math-cloud https://math-mcp-learning.fastmcp.app/mcp
```

### Option 2: Run Locally

Choose one of two installation methods:

**Method A: Automatic with uvx (recommended)**

Configure your MCP client to use `uvx` - no manual installation needed:

**Claude Desktop:**
```json
{
  "mcpServers": {
    "math": {
      "command": "uvx",
      "args": ["math-mcp-learning-server"]
    }
  }
}
```

**Claude Code:**
```bash
claude mcp add math uvx math-mcp-learning-server
```

**Method B: Manual installation**

1. Install the package:
```bash
uv pip install math-mcp-learning-server
```

2. Configure your MCP client:

**Claude Desktop:**
```json
{
  "mcpServers": {
    "math": {
      "command": "math-mcp-learning-server"
    }
  }
}
```

**Claude Code:**
```bash
claude mcp add math math-mcp-learning-server
```

## Features

### Persistent Workspace
- **Cross-Session State**: Save calculations and access them across different MCP client sessions
- **Persistent Storage**: Variables survive server restarts and session changes
- **Cross-Platform**: Works on Windows (`%LOCALAPPDATA%`), macOS, and Linux (`~/.math-mcp`)
- **Thread-Safe**: Concurrent access with atomic file operations

### Mathematical Operations
- **Safe Expression Evaluation**: Securely evaluate mathematical expressions with enhanced error handling
- **Statistical Analysis**: Calculate mean, median, mode, standard deviation, and variance
- **Financial Calculations**: Compound interest calculations with formatted output
- **Unit Conversions**: Length, weight, and temperature conversions

### Visual Learning
- **Function Plotting**: Generate mathematical function plots with base64-encoded PNG output
- **Statistical Histograms**: Visualize data distributions with mean and median indicators
- **Cloud Deployment**: Visualization tools (matplotlib) are included in the cloud deployment
- **Local Usage**: Install with `uv pip install math-mcp-learning-server[plotting]` for local usage with plotting features

### Enterprise-Grade Quality
- **Security Logging**: Monitor and log potentially dangerous expression attempts
- **Type Safety**: Full Pydantic validation for inputs and structured content responses
- **Comprehensive Testing**: Complete test coverage with security and edge case validation
- **Zero Core Dependencies**: Core persistence features use only Python stdlib

## MCP Architecture

This server implements the following MCP primitives:

- **Tools**: 8 tools for mathematical operations, persistence, and visualization
- **Resources**: 1 resource (`math://workspace`) for viewing the persistent workspace
- **Prompts**: 0 (future enhancement opportunity)

## Transport Support

This server implements **all official MCP transport modes** per the [MCP specification](https://modelcontextprotocol.io/specification/2025-06-18/basic/transports):

- **stdio** - Standard input/output for local clients (Claude Desktop, Claude Code)
- **HTTP/SSE** - Streamable HTTP with Server-Sent Events for cloud/web clients

**Transport-agnostic workspace:** Your saved calculations persist across all transport modes and sessions.

## Available Tools

### Persistent Workspace Tools
- `save_calculation`: Save calculations to persistent storage for cross-session access
- `load_variable`: Access previously saved calculations from any MCP client session

### Mathematical Tools
- `calculate`: Safely evaluate mathematical expressions (supports basic ops and math functions)
- `statistics`: Perform statistical calculations (mean, median, mode, std_dev, variance)
- `compound_interest`: Calculate compound interest for investments
- `convert_units`: Convert between units (length, weight, temperature)

### Visualization Tools
- `plot_function`: Generate mathematical function plots (base64-encoded PNG)
- `create_histogram`: Create statistical histograms with distribution analysis

See [Usage Examples](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/docs/EXAMPLES.md) for detailed examples of each tool.

## Available Resources

### `math://workspace`
View your complete persistent workspace with all saved calculations, metadata, and statistics.

**Returns:**
- All saved variables with expressions and results
- Educational metadata (difficulty, topic)
- Workspace statistics (total calculations, session count)
- Timestamps for tracking calculation history

## Development

### Project Structure
```
math-mcp-learning-server/
├── src/math_mcp/
│   ├── server.py          # Main MCP server implementation
│   └── persistence/       # Persistent workspace functionality
├── tests/
│   ├── test_math_operations.py
│   └── test_persistence.py
├── docs/
│   ├── CLOUD_DEPLOYMENT.md
│   └── EXAMPLES.md
├── pyproject.toml
└── README.md
```

### Development Setup

```bash
# Clone the repository
git clone https://github.com/clouatre-labs/math-mcp-learning-server.git
cd math-mcp-learning-server

# Install dependencies (includes plotting support)
uv sync --extra dev --extra plotting

# Run tests
uv run pytest tests/ -v

# Run type checking
uv run mypy src/

# Run linting
uv run ruff check

# Test the MCP server with FastMCP dev mode
uv run fastmcp dev src/math_mcp/server.py
# Then connect via MCP client (Claude Desktop, Claude Code, etc.)
```

### Adding New Tools

1. Define input/output models with Pydantic
2. Add `@mcp.tool()` decorated function in `src/math_mcp/server.py`
3. Implement tool logic with proper validation
4. Add corresponding tests in `tests/`

See [CONTRIBUTING.md](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/CONTRIBUTING.md) for detailed guidelines.

## Documentation

- **[Cloud Deployment Guide](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/docs/CLOUD_DEPLOYMENT.md)**: FastMCP Cloud deployment instructions and configuration
- **[Usage Examples](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/docs/EXAMPLES.md)**: Practical examples for all tools and resources
- **[Contributing Guidelines](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/CONTRIBUTING.md)**: Development workflow, code standards, and testing procedures
- **[Future Improvements](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/FUTURE_IMPROVEMENTS.md)**: Roadmap and enhancement opportunities
- **[Code of Conduct](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/CODE_OF_CONDUCT.md)**: Community guidelines and expectations

## Security

### Safe Expression Evaluation

The `calculate` tool uses restricted `eval()` with:
- Whitelist of allowed characters and functions
- Restricted global scope (only `math` module and `abs`)
- No access to dangerous built-ins or imports
- Security logging for potentially dangerous attempts

### MCP Security Best Practices

- **Input Validation**: All tool inputs validated with Pydantic models
- **Error Handling**: Structured errors without exposing sensitive information
- **Least Privilege**: File operations restricted to designated workspace directory
- **Type Safety**: Complete type hints and validation for all operations

## Publishing

This package is published to PyPI via GitHub Actions workflow. The workflow is triggered on:
- New releases (tags matching `v*`)
- Manual workflow dispatch

**Publishing workflow:**
1. Create and push a version tag: `git tag v0.6.7 && git push origin v0.6.7`
2. GitHub Actions automatically builds and publishes to PyPI
3. Release notes are generated from commit messages

The package follows semantic versioning and includes comprehensive metadata for discoverability on PyPI.

## Contributing

We welcome contributions! This project follows a fast and minimal philosophy while maintaining educational value and professional standards.

**Quick Start for Contributors:**
1. Fork the repository
2. Set up development environment: `uv sync --extra dev --extra plotting`
3. Create feature branch: `git checkout -b feature/your-feature`
4. Make changes and add tests
5. Run quality checks: `uv run pytest && uv run mypy src/ && uv run ruff check`
6. Submit a pull request

See [CONTRIBUTING.md](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/CONTRIBUTING.md) for detailed guidelines including:
- Development workflow and Git practices
- Code standards and security requirements
- Testing procedures and quality assurance
- Architecture guidelines and best practices

## Code of Conduct

This project adheres to the [Contributor Covenant Code of Conduct](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/CODE_OF_CONDUCT.md). By participating, you are expected to uphold this code. Please report unacceptable behavior to hugues+mcp-coc@linux.com.

## License

[MIT License](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/LICENSE) - Full license details available in the LICENSE file.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "math-mcp-learning-server",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.14,>=3.11",
    "maintainer_email": null,
    "keywords": "mcp, math, calculator, learning, fastmcp, tutorial, education, cloud, deployment, workspace, persistence",
    "author": null,
    "author_email": "Hugues Clou\u00e2tre <hugues+mcp@linux.com>",
    "download_url": "https://files.pythonhosted.org/packages/99/be/780bdb656760c08c9d0b6151a875da87298797cda9236f2f4a52200b1536/math_mcp_learning_server-0.8.2.tar.gz",
    "platform": null,
    "description": "# Math MCP Learning Server\n\n[![PyPI version](https://badge.fury.io/py/math-mcp-learning-server.svg)](https://pypi.org/project/math-mcp-learning-server/)\n\n**Cloud hosted:** Connect any MCP client to [https://math-mcp-learning.fastmcp.app/mcp](https://math-mcp-learning.fastmcp.app/mcp) (MCP client required, no local server install needed)\n\nA persistent quantitative workspace built as a Model Context Protocol (MCP) server. This project demonstrates enterprise-grade patterns for MCP development, featuring cross-session state persistence - a unique capability that most LLMs cannot achieve natively.\n\nPerfect for learning MCP fundamentals, demonstrating professional patterns, and serving as a foundation for advanced mathematical workflows.\n\nBuilt with [FastMCP 2.0](https://github.com/jlowin/fastmcp) and the official [Model Context Protocol Python SDK](https://github.com/modelcontextprotocol/python-sdk).\n\n## Requirements\n\n**This is an MCP server** - it requires an MCP client to use. Supported clients include:\n\n- **Claude Desktop** - Anthropic's desktop app with native MCP support\n- **Claude Code** - Command-line MCP client from Anthropic\n- **Goose** - Open-source AI agent framework with MCP support\n- **OpenCode** - Open-source MCP client by SST\n- **Amazon Q** - AWS's AI assistant with MCP support\n- **Gemini CLI** - Google's Gemini command-line tool\n- Any other MCP-compatible client\n\n**Cannot run standalone** - The server must be connected through an MCP client.\n\n## Quick Start\n\n### Option 1: Try it Now (Cloud)\n\nConnect your MCP client to the hosted server - no local installation required!\n\n**Claude Desktop:**\n```json\n{\n  \"mcpServers\": {\n    \"math-cloud\": {\n      \"transport\": \"http\",\n      \"url\": \"https://math-mcp-learning.fastmcp.app/mcp\"\n    }\n  }\n}\n```\n\n**Claude Code:**\n```bash\nclaude mcp add math-cloud https://math-mcp-learning.fastmcp.app/mcp\n```\n\n### Option 2: Run Locally\n\nChoose one of two installation methods:\n\n**Method A: Automatic with uvx (recommended)**\n\nConfigure your MCP client to use `uvx` - no manual installation needed:\n\n**Claude Desktop:**\n```json\n{\n  \"mcpServers\": {\n    \"math\": {\n      \"command\": \"uvx\",\n      \"args\": [\"math-mcp-learning-server\"]\n    }\n  }\n}\n```\n\n**Claude Code:**\n```bash\nclaude mcp add math uvx math-mcp-learning-server\n```\n\n**Method B: Manual installation**\n\n1. Install the package:\n```bash\nuv pip install math-mcp-learning-server\n```\n\n2. Configure your MCP client:\n\n**Claude Desktop:**\n```json\n{\n  \"mcpServers\": {\n    \"math\": {\n      \"command\": \"math-mcp-learning-server\"\n    }\n  }\n}\n```\n\n**Claude Code:**\n```bash\nclaude mcp add math math-mcp-learning-server\n```\n\n## Features\n\n### Persistent Workspace\n- **Cross-Session State**: Save calculations and access them across different MCP client sessions\n- **Persistent Storage**: Variables survive server restarts and session changes\n- **Cross-Platform**: Works on Windows (`%LOCALAPPDATA%`), macOS, and Linux (`~/.math-mcp`)\n- **Thread-Safe**: Concurrent access with atomic file operations\n\n### Mathematical Operations\n- **Safe Expression Evaluation**: Securely evaluate mathematical expressions with enhanced error handling\n- **Statistical Analysis**: Calculate mean, median, mode, standard deviation, and variance\n- **Financial Calculations**: Compound interest calculations with formatted output\n- **Unit Conversions**: Length, weight, and temperature conversions\n\n### Visual Learning\n- **Function Plotting**: Generate mathematical function plots with base64-encoded PNG output\n- **Statistical Histograms**: Visualize data distributions with mean and median indicators\n- **Cloud Deployment**: Visualization tools (matplotlib) are included in the cloud deployment\n- **Local Usage**: Install with `uv pip install math-mcp-learning-server[plotting]` for local usage with plotting features\n\n### Enterprise-Grade Quality\n- **Security Logging**: Monitor and log potentially dangerous expression attempts\n- **Type Safety**: Full Pydantic validation for inputs and structured content responses\n- **Comprehensive Testing**: Complete test coverage with security and edge case validation\n- **Zero Core Dependencies**: Core persistence features use only Python stdlib\n\n## MCP Architecture\n\nThis server implements the following MCP primitives:\n\n- **Tools**: 8 tools for mathematical operations, persistence, and visualization\n- **Resources**: 1 resource (`math://workspace`) for viewing the persistent workspace\n- **Prompts**: 0 (future enhancement opportunity)\n\n## Transport Support\n\nThis server implements **all official MCP transport modes** per the [MCP specification](https://modelcontextprotocol.io/specification/2025-06-18/basic/transports):\n\n- **stdio** - Standard input/output for local clients (Claude Desktop, Claude Code)\n- **HTTP/SSE** - Streamable HTTP with Server-Sent Events for cloud/web clients\n\n**Transport-agnostic workspace:** Your saved calculations persist across all transport modes and sessions.\n\n## Available Tools\n\n### Persistent Workspace Tools\n- `save_calculation`: Save calculations to persistent storage for cross-session access\n- `load_variable`: Access previously saved calculations from any MCP client session\n\n### Mathematical Tools\n- `calculate`: Safely evaluate mathematical expressions (supports basic ops and math functions)\n- `statistics`: Perform statistical calculations (mean, median, mode, std_dev, variance)\n- `compound_interest`: Calculate compound interest for investments\n- `convert_units`: Convert between units (length, weight, temperature)\n\n### Visualization Tools\n- `plot_function`: Generate mathematical function plots (base64-encoded PNG)\n- `create_histogram`: Create statistical histograms with distribution analysis\n\nSee [Usage Examples](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/docs/EXAMPLES.md) for detailed examples of each tool.\n\n## Available Resources\n\n### `math://workspace`\nView your complete persistent workspace with all saved calculations, metadata, and statistics.\n\n**Returns:**\n- All saved variables with expressions and results\n- Educational metadata (difficulty, topic)\n- Workspace statistics (total calculations, session count)\n- Timestamps for tracking calculation history\n\n## Development\n\n### Project Structure\n```\nmath-mcp-learning-server/\n\u251c\u2500\u2500 src/math_mcp/\n\u2502   \u251c\u2500\u2500 server.py          # Main MCP server implementation\n\u2502   \u2514\u2500\u2500 persistence/       # Persistent workspace functionality\n\u251c\u2500\u2500 tests/\n\u2502   \u251c\u2500\u2500 test_math_operations.py\n\u2502   \u2514\u2500\u2500 test_persistence.py\n\u251c\u2500\u2500 docs/\n\u2502   \u251c\u2500\u2500 CLOUD_DEPLOYMENT.md\n\u2502   \u2514\u2500\u2500 EXAMPLES.md\n\u251c\u2500\u2500 pyproject.toml\n\u2514\u2500\u2500 README.md\n```\n\n### Development Setup\n\n```bash\n# Clone the repository\ngit clone https://github.com/clouatre-labs/math-mcp-learning-server.git\ncd math-mcp-learning-server\n\n# Install dependencies (includes plotting support)\nuv sync --extra dev --extra plotting\n\n# Run tests\nuv run pytest tests/ -v\n\n# Run type checking\nuv run mypy src/\n\n# Run linting\nuv run ruff check\n\n# Test the MCP server with FastMCP dev mode\nuv run fastmcp dev src/math_mcp/server.py\n# Then connect via MCP client (Claude Desktop, Claude Code, etc.)\n```\n\n### Adding New Tools\n\n1. Define input/output models with Pydantic\n2. Add `@mcp.tool()` decorated function in `src/math_mcp/server.py`\n3. Implement tool logic with proper validation\n4. Add corresponding tests in `tests/`\n\nSee [CONTRIBUTING.md](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/CONTRIBUTING.md) for detailed guidelines.\n\n## Documentation\n\n- **[Cloud Deployment Guide](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/docs/CLOUD_DEPLOYMENT.md)**: FastMCP Cloud deployment instructions and configuration\n- **[Usage Examples](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/docs/EXAMPLES.md)**: Practical examples for all tools and resources\n- **[Contributing Guidelines](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/CONTRIBUTING.md)**: Development workflow, code standards, and testing procedures\n- **[Future Improvements](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/FUTURE_IMPROVEMENTS.md)**: Roadmap and enhancement opportunities\n- **[Code of Conduct](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/CODE_OF_CONDUCT.md)**: Community guidelines and expectations\n\n## Security\n\n### Safe Expression Evaluation\n\nThe `calculate` tool uses restricted `eval()` with:\n- Whitelist of allowed characters and functions\n- Restricted global scope (only `math` module and `abs`)\n- No access to dangerous built-ins or imports\n- Security logging for potentially dangerous attempts\n\n### MCP Security Best Practices\n\n- **Input Validation**: All tool inputs validated with Pydantic models\n- **Error Handling**: Structured errors without exposing sensitive information\n- **Least Privilege**: File operations restricted to designated workspace directory\n- **Type Safety**: Complete type hints and validation for all operations\n\n## Publishing\n\nThis package is published to PyPI via GitHub Actions workflow. The workflow is triggered on:\n- New releases (tags matching `v*`)\n- Manual workflow dispatch\n\n**Publishing workflow:**\n1. Create and push a version tag: `git tag v0.6.7 && git push origin v0.6.7`\n2. GitHub Actions automatically builds and publishes to PyPI\n3. Release notes are generated from commit messages\n\nThe package follows semantic versioning and includes comprehensive metadata for discoverability on PyPI.\n\n## Contributing\n\nWe welcome contributions! This project follows a fast and minimal philosophy while maintaining educational value and professional standards.\n\n**Quick Start for Contributors:**\n1. Fork the repository\n2. Set up development environment: `uv sync --extra dev --extra plotting`\n3. Create feature branch: `git checkout -b feature/your-feature`\n4. Make changes and add tests\n5. Run quality checks: `uv run pytest && uv run mypy src/ && uv run ruff check`\n6. Submit a pull request\n\nSee [CONTRIBUTING.md](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/CONTRIBUTING.md) for detailed guidelines including:\n- Development workflow and Git practices\n- Code standards and security requirements\n- Testing procedures and quality assurance\n- Architecture guidelines and best practices\n\n## Code of Conduct\n\nThis project adheres to the [Contributor Covenant Code of Conduct](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/CODE_OF_CONDUCT.md). By participating, you are expected to uphold this code. Please report unacceptable behavior to hugues+mcp-coc@linux.com.\n\n## License\n\n[MIT License](https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/LICENSE) - Full license details available in the LICENSE file.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Production-ready educational MCP server with enhanced visualizations and persistent workspace - Complete learning guide demonstrating FastMCP 2.0 best practices for Model Context Protocol development",
    "version": "0.8.2",
    "project_urls": {
        "Changelog": "https://github.com/clouatre-labs/math-mcp-learning-server/releases",
        "Code of Conduct": "https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/CODE_OF_CONDUCT.md",
        "Contributing": "https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/CONTRIBUTING.md",
        "Documentation": "https://github.com/clouatre-labs/math-mcp-learning-server#readme",
        "Future Improvements": "https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/FUTURE_IMPROVEMENTS.md",
        "Homepage": "https://github.com/clouatre-labs/math-mcp-learning-server",
        "Issues": "https://github.com/clouatre-labs/math-mcp-learning-server/issues",
        "License": "https://github.com/clouatre-labs/math-mcp-learning-server/blob/main/LICENSE",
        "Repository": "https://github.com/clouatre-labs/math-mcp-learning-server"
    },
    "split_keywords": [
        "mcp",
        " math",
        " calculator",
        " learning",
        " fastmcp",
        " tutorial",
        " education",
        " cloud",
        " deployment",
        " workspace",
        " persistence"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "9ccf0aeddd0743a6a15d360379b5d52fb48653a04792c19d0507122b8e299332",
                "md5": "bb01202d96ea0081a46117be37ea2956",
                "sha256": "9f3fd0bb2015d3174068cc9b07ef583aa1cf373cb8407b2bc9cab6e475c75313"
            },
            "downloads": -1,
            "filename": "math_mcp_learning_server-0.8.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "bb01202d96ea0081a46117be37ea2956",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<3.14,>=3.11",
            "size": 26147,
            "upload_time": "2025-11-04T16:52:22",
            "upload_time_iso_8601": "2025-11-04T16:52:22.919979Z",
            "url": "https://files.pythonhosted.org/packages/9c/cf/0aeddd0743a6a15d360379b5d52fb48653a04792c19d0507122b8e299332/math_mcp_learning_server-0.8.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "99be780bdb656760c08c9d0b6151a875da87298797cda9236f2f4a52200b1536",
                "md5": "3304747ddec9f9353cb9e5c67a817712",
                "sha256": "9cd490af233ce63d198a83fbcab94c553bad4f652032abf0c9f5fa53aedbda63"
            },
            "downloads": -1,
            "filename": "math_mcp_learning_server-0.8.2.tar.gz",
            "has_sig": false,
            "md5_digest": "3304747ddec9f9353cb9e5c67a817712",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.14,>=3.11",
            "size": 35976,
            "upload_time": "2025-11-04T16:52:24",
            "upload_time_iso_8601": "2025-11-04T16:52:24.502141Z",
            "url": "https://files.pythonhosted.org/packages/99/be/780bdb656760c08c9d0b6151a875da87298797cda9236f2f4a52200b1536/math_mcp_learning_server-0.8.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-11-04 16:52:24",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "clouatre-labs",
    "github_project": "math-mcp-learning-server",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "math-mcp-learning-server"
}
        
Elapsed time: 2.16084s