Skip to content

Conversation

@tqvdang
Copy link
Collaborator

@tqvdang tqvdang commented Oct 3, 2025

Summary

Adds comprehensive developer onboarding documentation and runtime configuration management to improve the demo server's usability and accessibility.

Changes

Documentation

  • Add detailed README with 5-step Quick Start guide for new developers
  • Add mock provider support for immediate testing without API keys
  • Add uv run mcp install instructions for Claude Desktop setup (recommended)
  • Add manual Claude Desktop configuration (alternative method)
  • Add MCP Inspector testing guide
  • Add troubleshooting section with common issues and solutions
  • Add PayMCP library update instructions (local vs published versions)

Configuration Management

  • Add .env.example template for environment variables
  • Add environment variable substitution in providers.json
  • Add get_config tool to inspect current configuration
  • Add switch_payment_config tool for runtime provider/flow switching

Payment Features

  • Add support for multiple payment flows (elicitation, two_step, progress, list_change)
  • Add support for multiple payment providers (Mock, Stripe, PayPal, Walleot, Square)
  • Add mock provider for testing without real payment credentials

Code Cleanup

  • Remove test_session_restoration.py (moved to centralized paymcp-flow-tester)
  • Update gitignore patterns for Python-specific files

Testing

Tested with:

  • MCP Inspector - tool listing and execution
  • Mock provider - payment flow verification
  • Multiple payment flows - elicitation, two_step, progress, list_change
  • Configuration switching - provider and flow changes at runtime
  • uv run mcp install - Claude Desktop integration

Breaking Changes

None - fully backward compatible.

tqvdang and others added 4 commits September 25, 2025 13:37
- Add dual session storage (provider:payment_id + fallback keys)
- Implement automatic session restoration in elicitation flow
- Handle client timeouts during PayPal approval process
- Add connection timeout configuration (10 minutes)
- Update README with session restoration documentation
- Add providers.json for runtime configuration switching
- Remove unnecessary debug/session fix files

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Add list_sessions_by_provider method to session storage interface
- Implement active payment discovery in _check_for_completed_payments
- Check all pending payments on tool invocation regardless of session ID
- Auto-execute tools when payments completed externally
- Solves reconnection issue where new session IDs prevent recovery

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Add detailed README with 5-step Quick Start guide
- Add mock provider support for testing without API keys
- Add .env.example template for environment variables
- Add configuration loading with environment variable substitution
- Add multiple payment flow support (elicitation, two_step, progress, list_change)
- Add uv run mcp install instructions for Claude Desktop setup
- Add MCP Inspector testing guide
- Add troubleshooting section with common issues
- Add PayMCP library update instructions (local vs published)
- Add support for multiple payment providers (Mock, Stripe, PayPal, Walleot, Square)
- Add get_config and switch_payment_config tools
- Update gitignore patterns for Python
- Remove test_session_restoration.py (moved to paymcp-flow-tester)
Changes:
- Update providers.json: list_change -> dynamic_tools
- Update server.py PaymentFlow enum references
- Update README.md documentation with new flow name

Aligns with paymcp library rename of LIST_CHANGE to DYNAMIC_TOOLS flow.
All functionality remains the same, only naming has changed for clarity.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant