{
  "markdown": "# mcp-rpn\n\n> MCP server that exposes an RPN calculator\n\n[![PyPI](https://img.shields.io/pypi/v/mcp-rpn.svg)](https://pypi.org/project/mcp-rpn/)\n[![Python](https://img.shields.io/pypi/pyversions/mcp-rpn.svg)](https://pypi.org/project/mcp-rpn/)\n[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)\n\n## Install\n\n```bash\npip install mcp-rpn\n```\n\n## Usage\n\n```bash\nmcp-rpn\n```\n\nThe server uses stdio transport for MCP protocol communication.\n\n## MCP Tools\n\n### evaluate\n\nEvaluate an RPN (Reverse Polish Notation) expression.\n\n```json\n{\n  \"name\": \"evaluate\",\n  \"arguments\": {\n    \"expression\": \"3 4 +\",\n    \"show_stack\": true\n  }\n}\n```\n\n**Operators:**\n- `+` - Add\n- `-` - Subtract\n- `-` - Multiply\n- `/` - Divide\n- `**` - Power\n- `%` - Modulo\n\n**Commands:**\n- `clear` - Clear the stack\n- `dup` - Duplicate top of stack\n- `swap` - Swap top two elements\n\n**Examples:**\n- `3 4 +` returns `7`\n- `10 5 2 + * 2 -` returns `32`\n- `3 2 /` returns `1.5`\n\n### clear\n\nClear the calculator stack.\n\n```json\n{\n  \"name\": \"clear\",\n  \"arguments\": {}\n}\n```\n\n## Development\n\n```bash\ngit clone https://github.com/daedalus/mcp-rpn.git\ncd mcp-rpn\npip install -e \".[test]\"\n\n# run tests\npytest\n\n# format\nruff format src/ tests/\n\n# lint\nruff check src/ tests/\n\n# type check\nmypy src/\n```\n\n## MCP Registry\n\nmcp-name: io.github.daedalus/mcp-rpn\n",
  "bytes": 1416,
  "sha": "cbea49da6f554a28f40f05e5207d2a88d364b97de96d0f3d47def62bb6a5d1ab",
  "repo_slug": "daedalus/mcp-rpn",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_daedalus_mcp_rpn_6203b62b/readme"
}