Skip to main content

OpenWealth MCP Server - AI agent integration with Swiss wealth management systems via bLink gateway

Project description

openwealth-mcp

OpenWealth MCP Server for Claude — enabling conversational AI agents to query Swiss wealth management data via OpenWealth APIs.

Status: Phase 3 - Publication Ready — V3 API complete, test PyPI validation in progress ✅

Tests Integration Tests License


What Is This?

An open-source MCP (Model Context Protocol) server that enables AI agents to interact with Swiss wealth management systems through the OpenWealth API v3.2.0 standard (Custody Services API).

This server provides a standardized interface for AI assistants like Claude to:

  • List customers in the portfolio (cursor-based pagination)
  • Get positions for portfolio holdings and asset allocation
  • Get transactions for trade history and cash movements

Phase 1 Scope: Read-only operations only (Custody Services API). Write operations excluded.

Built with Python 3.11+ and designed for Swiss financial institutions using the OpenWealth standard.


Development Setup (Current)

Prerequisites

  • Python 3.11+
  • uv package manager (install here)
  • OpenWealth sandbox credentials (contact OpenWealth Association for access)

Directory Structure

See CLAUDE.md for complete structure and organization principles.


Development Setup

See CLAUDE.md for complete setup instructions and development workflow.

Quick start:

# Install dependencies
uv sync

# Run tests
pytest tests/unit/ -v

# Type check
uv run pyright src/

Authentication: Add credentials to your shell profile (see .env.example).


Current MCP Tools

Three Read-Only Tools (Specification Complete)

This project provides read-only access to portfolio and customer data via the OpenWealth Custody Services API v3.2.0.

Tool Purpose Status
list_customers Discover customers in OpenWealth ✅ Spec ready
get_positions Fetch portfolio holdings ✅ Spec ready
get_transactions Query transaction history ✅ Spec ready

Scope: Read-only Custody Services API operations only. Write operations and customer lifecycle management are excluded.

Full API specifications: See docs/API-REFERENCE.md


Architecture

Claude Desktop → MCP Server → OpenWealth Client → OpenWealth API (Sandbox)

Key principles: Type safety, stateless tools, structured logging, read-only operations.

See docs/ARCHITECTURE.md for complete design philosophy and technical patterns.


Documentation

Document Purpose
docs/ARCHITECTURE.md Design principles + technical stack
docs/API-REFERENCE.md MCP tool schemas + examples
docs/TESTING.md Testing guide + coverage reports
docs/ROADMAP.md Development roadmap + milestones

Tech Stack

Python 3.11+ • Pydantic • MCP SDK • httpx • structlog

See docs/ARCHITECTURE.md for complete details.


Installation

From PyPI

pip install alpflo-openwealth-mcp
# or with uv
uv pip install alpflo-openwealth-mcp

From Source (Development)

git clone https://github.com/alpflo/openwealth-mcp.git
cd openwealth-mcp
uv sync
uv run src/main.py

Roadmap

  • ✅ Phase 1: Foundation complete
  • ✅ Phase 2: Implementation + testing complete (79.67% coverage)
  • ✅ Phase 3: Publication (current - test PyPI validation)

See docs/ROADMAP.md for complete timeline.


Contributing

Contributions will be welcome once the initial implementation is complete and the repository is made public.

For now, the project is in active development. Check back after the public launch.


License

Apache License 2.0 — see LICENSE for full text.

Why Apache 2.0?

This project is licensed under Apache License 2.0 because:

  1. Explicit Patent Grant — Protects users and contributors from patent litigation
  2. Business-Friendly — Enables commercial use and proprietary extensions
  3. Permissive — Allows free use, modification, and redistribution
  4. Industry Standard — Widely adopted in AI tooling and wealth-tech ecosystems

Third-Party Notices

This project includes third-party libraries under Apache 2.0, MIT, and BSD licenses. See NOTICE for complete attribution and license information.

All dependencies are compatible with Apache 2.0. No GPL-licensed code is included.

Contributing

Contributions are welcome once the initial implementation is complete. All contributions are implicitly licensed under Apache 2.0 (matching the repository license). We will not require a separate Contributor License Agreement (CLA) but reserve the right to add one if governance needs evolve.

For now, see CLAUDE.md for development guidelines.


About

Organization: alpflo (GitHub: @alpflo)

Purpose: Enable AI agents to interact with Swiss wealth management systems through a standardized, type-safe interface.

Status: Pre-launch development. Repository will be made public once core implementation is complete.


Resources


Last updated: 2026-05-29
Status: Phase 3 - Publication Ready ✅

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

alpflo_openwealth_mcp-0.1.0.tar.gz (147.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

alpflo_openwealth_mcp-0.1.0-py3-none-any.whl (33.4 kB view details)

Uploaded Python 3

File details

Details for the file alpflo_openwealth_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: alpflo_openwealth_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 147.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for alpflo_openwealth_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 0b66edc14d9ee1d2c73cc1cff797f3954ef8a50472dbe0e3e3bb105ccd8bec5a
MD5 fa1f0d7b0edf57ec46b9f33d3fa13492
BLAKE2b-256 4b6cfc6aa181d7d0c4e49297fb343df4eb6ad57e997bc7774c8119e26dcdccb6

See more details on using hashes here.

Provenance

The following attestation bundles were made for alpflo_openwealth_mcp-0.1.0.tar.gz:

Publisher: publish.yml on alpflo/openwealth-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file alpflo_openwealth_mcp-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for alpflo_openwealth_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 39be9169723d3704c2e2566f4c9382129847ec3567342516fc078c9e4ba7389e
MD5 abd26533e46fd4acedb911cbed7626ca
BLAKE2b-256 5924de10506e3c7f88968c9540701412ffc6ea3502f058f4dca3967abc91e20d

See more details on using hashes here.

Provenance

The following attestation bundles were made for alpflo_openwealth_mcp-0.1.0-py3-none-any.whl:

Publisher: publish.yml on alpflo/openwealth-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page