mcp-calculator-demo


Namemcp-calculator-demo JSON
Version 0.1.2 PyPI version JSON
download
home_pageNone
SummaryA Model Context Protocol server providing calculator functionality with auto-configuration
upload_time2025-07-12 07:17:13
maintainerNone
docs_urlNone
authorNone
requires_python>=3.11
licenseMIT
keywords auto-config calculator mcp model-context-protocol
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # MCP Calculator Demo

A Model Context Protocol (MCP) server providing calculator functionality. Available in both Python and TypeScript implementations.

## ๐Ÿš€ Quick Start

### Using uvx (Python) - Recommended
```bash
# Install and run directly from PyPI
uvx mcp-calculator-demo

# Or use with MCP clients
uvx mcp-calculator-demo --transport stdio
```

### Using npx (Node.js)
```bash
# Install and run directly from npm
npx -y @your-org/mcp-calculator

# Or use with MCP clients  
npx -y @your-org/mcp-calculator
```

## ๐Ÿ“ฆ Package Installation

### Python Package (uvx/pip)
```bash
# Install via pip
pip install mcp-calculator-demo

# Install globally with uvx (recommended)
uvx install mcp-calculator-demo

# Run the server
mcp-calculator --transport stdio
```

### Node.js Package (npx/npm)
```bash
# Install via npm
npm install -g @your-org/mcp-calculator

# Install and run with npx (recommended)
npx -y @your-org/mcp-calculator

# Run the server locally
mcp-calculator-js
```

## ๐Ÿ”ง Configuration for MCP Clients

### Claude Desktop Configuration
Add to your `claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "calculator": {
      "command": "uvx",
      "args": ["mcp-calculator-demo"]
    }
  }
}
```

### VS Code MCP Extension Configuration
Add to your VS Code settings or `.vscode/mcp.json`:

```json
{
  "mcp": {
    "servers": {
      "calculator-python": {
        "command": "uvx",
        "args": ["mcp-calculator-demo"]
      },
      "calculator-typescript": {
        "command": "npx",
        "args": ["-y", "@your-org/mcp-calculator"]
      }
    }
  }
}
```

### General MCP Configuration (mcp.json)
```json
{
  "mcpServers": {
    "calculator-python-uvx": {
      "command": "uvx",
      "args": ["mcp-calculator-demo"],
      "env": {
        "DEBUG": "false"
      }
    },
    "calculator-python-local": {
      "command": "mcp-calculator",
      "args": ["--transport", "stdio"],
      "env": {
        "DEBUG": "true"
      }
    },
    "calculator-typescript-npx": {
      "command": "npx",
      "args": ["-y", "@your-org/mcp-calculator"],
      "env": {
        "NODE_ENV": "production"
      }
    },
    "calculator-typescript-local": {
      "command": "mcp-calculator-js",
      "args": [],
      "env": {
        "NODE_ENV": "development"
      }
    }
  }
}
```

## ๐Ÿ› ๏ธ Available Tools

- **add**: Add two numbers together
- **subtract**: Subtract two numbers  
- **multiply**: Multiply two numbers
- **divide**: Divide two numbers (with zero-division protection)

## ๐Ÿงช Testing

### Python Version
```bash
# Test the client
python client-stdio.py

# Test with MCP Inspector
mcp dev src/mcp_calculator_demo/server.py
```

### TypeScript Version  
```bash
# Build and test
npm run build
npm run test

# Test with MCP Inspector
mcp dev dist/cli.js
```

## ๐Ÿ—๏ธ Development

### Python Development
```bash
# Install in development mode
pip install -e .

# Run directly
python -m mcp_calculator_demo.server

# Build for distribution
pip install build
python -m build
```

### TypeScript Development
```bash
# Install dependencies
npm install

# Build
npm run build

# Watch mode
npm run dev

# Publish to npm
npm publish
```

## ๐Ÿ“‹ Transport Options

Both implementations support multiple transport methods:

- **stdio**: For use with MCP clients (default)
- **sse**: For HTTP Server-Sent Events (Python only)

### Usage Examples
```bash
# Python
mcp-calculator --transport stdio
mcp-calculator --transport sse

# TypeScript (stdio only)
mcp-calculator-js
```

## ๐ŸŒŸ Key Benefits of uvx/npx Packaging

### uvx (Python)
- โœ… **Isolated environments**: Each tool runs in its own virtual environment
- โœ… **No global installs**: Avoid dependency conflicts
- โœ… **Automatic updates**: Always runs the latest version
- โœ… **Easy distribution**: Users don't need to manage Python environments

### npx (Node.js)  
- โœ… **No installation required**: Run packages without installing
- โœ… **Version flexibility**: Specify exact versions with `@version`
- โœ… **Global availability**: Access tools from anywhere
- โœ… **Easy distribution**: Users don't need to manage Node.js packages

## ๐Ÿ“– Usage in MCP Clients

### With Claude Desktop
1. Add server configuration to `claude_desktop_config.json`
2. Restart Claude Desktop
3. Calculator tools will be available in conversations

### With MCP Inspector
```bash
# Test Python version
mcp dev server.py

# Test TypeScript version  
mcp dev dist/cli.js

# Test published packages
uvx mcp-calculator-demo  # Python
npx -y @your-org/mcp-calculator  # TypeScript
```

### With VS Code MCP Extension
1. Configure in VS Code settings or `.vscode/mcp.json`
2. Reload VS Code
3. Calculator tools will be available in the MCP panel

## ๐Ÿ”— Related Examples

- **Everything Server**: `npx -y @modelcontextprotocol/server-everything`
- **Python Interpreter**: `uvx python-interpreter-mcp`
- **MCP CLI Tool**: `uvx mcp2cli`

## ๐Ÿ“„ License

MIT License - see LICENSE file for details.
            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "mcp-calculator-demo",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.11",
    "maintainer_email": null,
    "keywords": "auto-config, calculator, mcp, model-context-protocol",
    "author": null,
    "author_email": "Your Name <your.email@example.com>",
    "download_url": "https://files.pythonhosted.org/packages/32/87/fe884f98313348e9ca061b28fdeb8ee3ee98ed98043957ed79d6b74727d4/mcp_calculator_demo-0.1.2.tar.gz",
    "platform": null,
    "description": "# MCP Calculator Demo\n\nA Model Context Protocol (MCP) server providing calculator functionality. Available in both Python and TypeScript implementations.\n\n## \ud83d\ude80 Quick Start\n\n### Using uvx (Python) - Recommended\n```bash\n# Install and run directly from PyPI\nuvx mcp-calculator-demo\n\n# Or use with MCP clients\nuvx mcp-calculator-demo --transport stdio\n```\n\n### Using npx (Node.js)\n```bash\n# Install and run directly from npm\nnpx -y @your-org/mcp-calculator\n\n# Or use with MCP clients  \nnpx -y @your-org/mcp-calculator\n```\n\n## \ud83d\udce6 Package Installation\n\n### Python Package (uvx/pip)\n```bash\n# Install via pip\npip install mcp-calculator-demo\n\n# Install globally with uvx (recommended)\nuvx install mcp-calculator-demo\n\n# Run the server\nmcp-calculator --transport stdio\n```\n\n### Node.js Package (npx/npm)\n```bash\n# Install via npm\nnpm install -g @your-org/mcp-calculator\n\n# Install and run with npx (recommended)\nnpx -y @your-org/mcp-calculator\n\n# Run the server locally\nmcp-calculator-js\n```\n\n## \ud83d\udd27 Configuration for MCP Clients\n\n### Claude Desktop Configuration\nAdd to your `claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"calculator\": {\n      \"command\": \"uvx\",\n      \"args\": [\"mcp-calculator-demo\"]\n    }\n  }\n}\n```\n\n### VS Code MCP Extension Configuration\nAdd to your VS Code settings or `.vscode/mcp.json`:\n\n```json\n{\n  \"mcp\": {\n    \"servers\": {\n      \"calculator-python\": {\n        \"command\": \"uvx\",\n        \"args\": [\"mcp-calculator-demo\"]\n      },\n      \"calculator-typescript\": {\n        \"command\": \"npx\",\n        \"args\": [\"-y\", \"@your-org/mcp-calculator\"]\n      }\n    }\n  }\n}\n```\n\n### General MCP Configuration (mcp.json)\n```json\n{\n  \"mcpServers\": {\n    \"calculator-python-uvx\": {\n      \"command\": \"uvx\",\n      \"args\": [\"mcp-calculator-demo\"],\n      \"env\": {\n        \"DEBUG\": \"false\"\n      }\n    },\n    \"calculator-python-local\": {\n      \"command\": \"mcp-calculator\",\n      \"args\": [\"--transport\", \"stdio\"],\n      \"env\": {\n        \"DEBUG\": \"true\"\n      }\n    },\n    \"calculator-typescript-npx\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@your-org/mcp-calculator\"],\n      \"env\": {\n        \"NODE_ENV\": \"production\"\n      }\n    },\n    \"calculator-typescript-local\": {\n      \"command\": \"mcp-calculator-js\",\n      \"args\": [],\n      \"env\": {\n        \"NODE_ENV\": \"development\"\n      }\n    }\n  }\n}\n```\n\n## \ud83d\udee0\ufe0f Available Tools\n\n- **add**: Add two numbers together\n- **subtract**: Subtract two numbers  \n- **multiply**: Multiply two numbers\n- **divide**: Divide two numbers (with zero-division protection)\n\n## \ud83e\uddea Testing\n\n### Python Version\n```bash\n# Test the client\npython client-stdio.py\n\n# Test with MCP Inspector\nmcp dev src/mcp_calculator_demo/server.py\n```\n\n### TypeScript Version  \n```bash\n# Build and test\nnpm run build\nnpm run test\n\n# Test with MCP Inspector\nmcp dev dist/cli.js\n```\n\n## \ud83c\udfd7\ufe0f Development\n\n### Python Development\n```bash\n# Install in development mode\npip install -e .\n\n# Run directly\npython -m mcp_calculator_demo.server\n\n# Build for distribution\npip install build\npython -m build\n```\n\n### TypeScript Development\n```bash\n# Install dependencies\nnpm install\n\n# Build\nnpm run build\n\n# Watch mode\nnpm run dev\n\n# Publish to npm\nnpm publish\n```\n\n## \ud83d\udccb Transport Options\n\nBoth implementations support multiple transport methods:\n\n- **stdio**: For use with MCP clients (default)\n- **sse**: For HTTP Server-Sent Events (Python only)\n\n### Usage Examples\n```bash\n# Python\nmcp-calculator --transport stdio\nmcp-calculator --transport sse\n\n# TypeScript (stdio only)\nmcp-calculator-js\n```\n\n## \ud83c\udf1f Key Benefits of uvx/npx Packaging\n\n### uvx (Python)\n- \u2705 **Isolated environments**: Each tool runs in its own virtual environment\n- \u2705 **No global installs**: Avoid dependency conflicts\n- \u2705 **Automatic updates**: Always runs the latest version\n- \u2705 **Easy distribution**: Users don't need to manage Python environments\n\n### npx (Node.js)  \n- \u2705 **No installation required**: Run packages without installing\n- \u2705 **Version flexibility**: Specify exact versions with `@version`\n- \u2705 **Global availability**: Access tools from anywhere\n- \u2705 **Easy distribution**: Users don't need to manage Node.js packages\n\n## \ud83d\udcd6 Usage in MCP Clients\n\n### With Claude Desktop\n1. Add server configuration to `claude_desktop_config.json`\n2. Restart Claude Desktop\n3. Calculator tools will be available in conversations\n\n### With MCP Inspector\n```bash\n# Test Python version\nmcp dev server.py\n\n# Test TypeScript version  \nmcp dev dist/cli.js\n\n# Test published packages\nuvx mcp-calculator-demo  # Python\nnpx -y @your-org/mcp-calculator  # TypeScript\n```\n\n### With VS Code MCP Extension\n1. Configure in VS Code settings or `.vscode/mcp.json`\n2. Reload VS Code\n3. Calculator tools will be available in the MCP panel\n\n## \ud83d\udd17 Related Examples\n\n- **Everything Server**: `npx -y @modelcontextprotocol/server-everything`\n- **Python Interpreter**: `uvx python-interpreter-mcp`\n- **MCP CLI Tool**: `uvx mcp2cli`\n\n## \ud83d\udcc4 License\n\nMIT License - see LICENSE file for details.",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A Model Context Protocol server providing calculator functionality with auto-configuration",
    "version": "0.1.2",
    "project_urls": {
        "Homepage": "https://github.com/yourusername/mcp-calculator-demo",
        "Issues": "https://github.com/yourusername/mcp-calculator-demo/issues",
        "Repository": "https://github.com/yourusername/mcp-calculator-demo"
    },
    "split_keywords": [
        "auto-config",
        " calculator",
        " mcp",
        " model-context-protocol"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7cbb5a27241f68500c1777a0917c64db5a2f5b1312910bbd9c99d78aa2ae4b50",
                "md5": "5a289d19ebe84d0ea47221a65b730a19",
                "sha256": "8199f98e2a5d7aa801e6b71574bc433d50490793e431e4a770a00897c7467737"
            },
            "downloads": -1,
            "filename": "mcp_calculator_demo-0.1.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "5a289d19ebe84d0ea47221a65b730a19",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11",
            "size": 5708,
            "upload_time": "2025-07-12T07:17:12",
            "upload_time_iso_8601": "2025-07-12T07:17:12.364562Z",
            "url": "https://files.pythonhosted.org/packages/7c/bb/5a27241f68500c1777a0917c64db5a2f5b1312910bbd9c99d78aa2ae4b50/mcp_calculator_demo-0.1.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3287fe884f98313348e9ca061b28fdeb8ee3ee98ed98043957ed79d6b74727d4",
                "md5": "1b63715ae0c300593750fa26bec7a113",
                "sha256": "13533a6e72a14f63defd4ad3dd640660969358307b6972fb0f064f4c5625e440"
            },
            "downloads": -1,
            "filename": "mcp_calculator_demo-0.1.2.tar.gz",
            "has_sig": false,
            "md5_digest": "1b63715ae0c300593750fa26bec7a113",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11",
            "size": 9627,
            "upload_time": "2025-07-12T07:17:13",
            "upload_time_iso_8601": "2025-07-12T07:17:13.888293Z",
            "url": "https://files.pythonhosted.org/packages/32/87/fe884f98313348e9ca061b28fdeb8ee3ee98ed98043957ed79d6b74727d4/mcp_calculator_demo-0.1.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-12 07:17:13",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "yourusername",
    "github_project": "mcp-calculator-demo",
    "github_not_found": true,
    "lcname": "mcp-calculator-demo"
}
        
Elapsed time: 0.62675s