9 Commits

Author SHA1 Message Date
chema
099a283a28 chore: update version to 0.1.2 in __init__.py 2025-06-29 22:49:40 +02:00
chema
0d4d60fa01 Refactor import order in mcp_server.py for improved clarity 2025-06-29 20:19:21 +02:00
chema
d8ed2fac70 Add comprehensive CloudFlare error detection and user-friendly error handling
- Add CloudFlareError and PenpotAPIError exception classes to penpot_api.py
- Implement _is_cloudflare_error() method to detect CloudFlare protection blocks
- Add _create_cloudflare_error_message() to provide helpful user instructions
- Update _make_authenticated_request() to catch and handle CloudFlare errors
- Add _handle_api_error() method to MCP server for consistent error formatting
- Update all MCP tool methods to use enhanced error handling
- Provide clear instructions for resolving CloudFlare verification challenges
- Include error_type field for better error categorization in MCP responses

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-29 20:04:20 +02:00
chema
88904f4e5b Refactor PenpotAPI to streamline profile ID extraction during login
- Updated the `login_for_export` method to extract the profile ID directly during the login process, eliminating the need for a separate `get_profile` call.
- Enhanced error handling for profile ID extraction from both the login response and the `auth-data` cookie.
- Adjusted comments for clarity and improved debugging output related to profile ID availability.
2025-06-29 18:33:30 +02:00
chema
cc9d0312e3 Add test_credentials.py for Penpot API credential verification and project listing
- Introduced a new script, `test_credentials.py`, to verify Penpot API credentials and list associated projects.
- The script loads environment variables, checks for required credentials, and attempts to authenticate with the Penpot API.
- Added functionality to fetch and display project details and files, including error handling for authentication and project retrieval.
- Updated `PenpotAPI` class to include a User-Agent header and improved error handling during profile retrieval.
- Minor adjustments in import order across various modules for consistency.
2025-06-29 18:22:23 +02:00
chema
0d4d34904c Add CLAUDE.md for project guidance and enhance get_object_subtree_with_fields to handle circular references
- Introduced CLAUDE.md to provide comprehensive guidance on the Penpot MCP Server, including project overview, key commands, architecture, and common workflows.
- Enhanced the `get_object_subtree_with_fields` function to track visited nodes and handle circular references, ensuring robust tree structure retrieval.
- Added tests for circular reference handling in `test_penpot_tree.py` to validate new functionality.
2025-06-29 17:21:17 +02:00
Chema
c38aec23d4 Update project version to 0.1.1 and simplify license declaration in pyproject.toml 2025-05-26 20:08:29 +02:00
Chema
a737e3ca59 Update project metadata in pyproject.toml and README.md, including versioning, description enhancements, and new dependencies. Adjusted Python compatibility to >=3.10 and updated classifiers for better categorization. Added changelog link and improved README configuration instructions for AI integration. 2025-05-26 20:05:37 +02:00
Chema
85e658d2cd Initial commit: Penpot MCP Server - Complete AI-powered design workflow automation with MCP protocol, Penpot API integration, Claude AI support, CLI tools, and comprehensive documentation 2025-05-26 19:16:46 +02:00