{
  "markdown": "# PensionPro MCP Server\n\nA local, open-source [MCP](https://modelcontextprotocol.io/) server that provides AI assistants with tools to interact with the [PensionPro](https://pensionpro.com/) REST API.\n\n## Features\n\n- **Plan Lookup & Search** — Search plans by name, status, type, or client. Get comprehensive plan details with contacts, cycles, and fee schedules.\n- **Project & Task Workflow** — Search projects, view task details, complete/uncomplete tasks, reassign tasks, and create projects from templates.\n- **Client & Contact Lookup** — Search clients and contacts, view client details with associated plans.\n- **To-Do Management** — Search, create, and update to-dos linked to plans, projects, or contacts.\n- **Notes** — Add and retrieve notes on plans, projects, tasks, and contacts.\n\n## Prerequisites\n\n- Python 3.12+\n- A PensionPro API key and username\n\n## Installation\n\nInstall from [PyPI](https://pypi.org/project/pension-pro-mcp/):\n\n```bash\npip install pension-pro-mcp\n```\n\nOr run directly with [uvx](https://docs.astral.sh/uv/) (no install required):\n\n```bash\nuvx pension-pro-mcp\n```\n\n## Configuration\n\nSet the following environment variables:\n\n```bash\nexport PENSION_PRO_API_KEY=your_api_key\nexport PENSION_PRO_USERNAME=your_username\n```\n\n### Claude Desktop\n\nAdd to your `claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"pension-pro\": {\n      \"command\": \"uvx\",\n      \"args\": [\"pension-pro-mcp\"],\n      \"env\": {\n        \"PENSION_PRO_API_KEY\": \"your_api_key\",\n        \"PENSION_PRO_USERNAME\": \"your_username\"\n      }\n    }\n  }\n}\n```\n\n### Claude Code\n\nAdd to your project's `.mcp.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"pension-pro\": {\n      \"command\": \"uvx\",\n      \"args\": [\"pension-pro-mcp\"],\n      \"env\": {\n        \"PENSION_PRO_API_KEY\": \"your_api_key\",\n        \"PENSION_PRO_USERNAME\": \"your_username\"\n      }\n    }\n  }\n}\n```\n\n## Available Tools\n\n| Tool | Description |\n|------|-------------|\n| `search_plans` | Search and filter plans by name, status, type, or client |\n| `get_plan_details` | Get plan with contacts, cycles, services, investments, fees |\n| `get_plan_projects` | Get projects for a plan with task completion summaries |\n| `search_projects` | Search and filter projects by status, type, or plan |\n| `get_project_details` | Get project with task groups, tasks, participants, notes, and files |\n| `get_task_details` | Get a single task with state, assignment, and notes |\n| `complete_task` | Mark a task as complete |\n| `uncomplete_task` | Revert a task to incomplete |\n| `reassign_task` | Reassign a task to a different employee |\n| `create_project_from_template` | Create a new project from a template |\n| `search_clients` | Search and filter clients by company name |\n| `get_client_details` | Get client with plans and notes |\n| `search_contacts` | Search and filter contacts by name or client |\n| `search_todos` | Search and filter to-dos |\n| `get_todo` | Get a to-do with its comments |\n| `create_todo` | Create a new to-do linked to an entity |\n| `update_todo` | Update a to-do's details |\n| `add_note` | Add a note to a plan, project, task, or contact |\n| `get_notes` | Get notes for an entity |\n| `search_api_paths` | Search PensionPro API endpoints by keyword |\n| `get_api_endpoint` | Get full details for a specific API endpoint |\n| `search_api_schemas` | Search API data models/schemas by keyword |\n| `get_api_schema` | Get the full definition of an API data model |\n| `search_help_articles` | Search PensionPro help center articles by keyword |\n| `get_help_article` | Get the full content of a help article |\n| `list_help_sections` | List available help sections with article counts |\n\n## Development\n\n```bash\ngit clone https://github.com/douglaslinsmeyer/pension-pro-mcp.git\ncd pension-pro-mcp\npip install -e \".[dev]\"\npytest\n```\n\n### Refreshing Help Articles\n\nThe bundled help articles can be refreshed from the PensionPro knowledge base:\n\n```bash\npython scripts/scrape_docs.py\n```\n\n## License\n\nMIT\n\n<!-- mcp-name: io.github.douglaslinsmeyer/pension-pro-mcp -->\n",
  "bytes": 4017,
  "sha": "71521a87603a6f2835c08ce9bf9a35684c40b46d3523c48d52bf75dfb9d83bf2",
  "repo_slug": "douglaslinsmeyer/pension-pro-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_douglaslinsmeyer_pension_pro_m_0303fbdf/readme"
}