268 Commits

Author SHA1 Message Date
Chris Coutinho 3c4535da75 test: Replace unittest class with simple tests 2025-10-14 01:23:40 +02:00
Chris Coutinho a4ca3e00a0 Revert "test: Skip for GITHUB_ACTIONS inside fixture"
This reverts commit 4d65e6952cc164fe0212faa807d1f659df3d2792.
2025-10-14 01:23:40 +02:00
Chris Coutinho d879904540 test: Skip for GITHUB_ACTIONS inside fixture 2025-10-14 01:23:40 +02:00
Chris Coutinho 2ae3c423e9 test: Skip interactive tests if GITHUB_ACTIONS is defined 2025-10-14 01:23:40 +02:00
Chris Coutinho e886eff4ed test: Fix typo in skipif condition 2025-10-14 01:23:39 +02:00
Chris Coutinho 23688f3f85 chore: Remove comments 2025-10-14 01:23:39 +02:00
Chris Coutinho 13e4915e38 test: Remove unused pytest fixtures 2025-10-14 01:23:39 +02:00
Chris Coutinho 6ce411094c test: Enable tests via playwright, disable interactive in CI 2025-10-14 01:23:38 +02:00
Chris Coutinho 37b0577bfd test: Add asyncio tests using Playwright 2025-10-14 01:23:38 +02:00
Chris Coutinho f58a9883a6 test: Fix oauth2 token extract from starlette requests 2025-10-14 01:23:37 +02:00
Chris Coutinho b3b7c90bd0 chore: Move httpd server to separate fixture 2025-10-14 01:23:32 +02:00
Chris Coutinho b26ff4f9bc test: Fix oauth interactive browser tests 2025-10-14 01:23:32 +02:00
Chris Coutinho e42cabb6ed chore: logging 2025-10-14 01:23:32 +02:00
Chris Coutinho 879cd58db1 test: rename interactive mark to oauth 2025-10-14 01:23:31 +02:00
Chris Coutinho 0c5d9a46bd test: fix typo 2025-10-14 01:23:31 +02:00
Chris Coutinho 17979accb6 test: Add patch for user_oidc app and update docs 2025-10-14 01:23:31 +02:00
Chris Coutinho 2b11718c43 test: continue working on oauth client 2025-10-14 01:23:30 +02:00
Chris Coutinho 33b962a7fc test: Setup interactive browser test 2025-10-14 01:23:30 +02:00
Chris Coutinho 4d7e4b9a4b feat(server): Experimental support for OAuth2/OIDC authentication 2025-10-14 01:22:15 +02:00
Chris Coutinho cc9650b077 refactor: Add tools for all resources to enable tool-only workflows 2025-09-24 00:13:24 +02:00
Chris Coutinho c1c5a61952 feat(server): Add support for streamable-http transport type 2025-09-11 17:01:29 +02:00
Chris Coutinho 961f23b5ea feat(users): Initialize user API client 2025-09-11 09:42:42 +02:00
Chris Coutinho 7498b501eb chore: Remove remaining tools 2025-09-11 09:31:13 +02:00
Chris Coutinho 652c58d1fb chore: fix test 2025-09-11 00:40:16 +02:00
Chris Coutinho d2d413afcd feat(deck): Add support for stack, cards, labels 2025-09-11 00:35:02 +02:00
Chris Coutinho 167053578d feat(deck): Initialize Deck app client/server 2025-09-11 00:10:25 +02:00
Chris Coutinho 892340fb66 chore: Remove unused model SuccessResponse 2025-08-31 21:15:43 +02:00
Chris Coutinho f79b957644 test: Update tests with McpError 2025-08-31 21:08:04 +02:00
Chris Coutinho ef1fb9e9aa fix(server): Replace ErrorResponses with standard McpErrors 2025-08-31 20:58:12 +02:00
Chris Coutinho d712b5487c test(notes): Modify tests with updated error handling 2025-08-31 19:32:39 +02:00
Chris Coutinho 892a8d2d23 fix(notes): Include ETags in responses to avoid accidently updates 2025-08-31 19:20:51 +02:00
Chris Coutinho 53b11f7fbb fix(model): Serialize timestamps in RFC3339 format 2025-08-30 22:37:16 +02:00
Chris Coutinho 4cf5f2a95a feat(client): Preserve fields when modifying contacts/calendar resources 2025-08-30 19:19:20 +02:00
Chris Coutinho 9b00530e8e feat(server): Add structured output to all tool/resource output
BREAKING CHANGE
2025-08-30 18:27:32 +02:00
Chris Coutinho 3836534205 fix(client): Strip cookies from responses to avoid falsely raising CSRF errors 2025-08-08 21:03:16 +02:00
Chris Coutinho 1dfdad5fad Update README, docstrings, and test scope for temporary_addressbook 2025-08-03 14:42:16 +02:00
Chris Coutinho 72cb62a101 test(contacts): Add unit/integration tests for a few tools 2025-08-03 14:36:16 +02:00
Chris Coutinho 21fc55320b Fix scoping 2025-08-03 14:25:01 +02:00
Chris Coutinho ad3e288203 test: Replace test_*_clients with single nc_client for tests 2025-08-03 14:22:45 +02:00
Chris Coutinho 8956945e9d chore: sort imports 2025-08-01 12:21:32 +02:00
Chris Coutinho a5e3f949c2 Use unique calendar_test_client 2025-08-01 12:08:27 +02:00
Chris Coutinho 6bdbb6ea6c Create sample calendar 2025-08-01 10:26:56 +02:00
Chris Coutinho 2bcfd3d7ee fix(calendar): Fix iCalendar date vs datetime format 2025-08-01 08:34:51 +02:00
Chris Coutinho 13ba9ef2e6 Merge remote-tracking branch 'origin/master' into refactor/server 2025-07-29 09:08:17 +02:00
Neovasky 83748a27da fix: apply ruff formatting to pass CI checks
- Fixed line length issues in logger.warning calls
- Removed trailing spaces in docstrings
- Applied consistent formatting across all files
2025-07-28 11:52:10 -04:00
Neovasky 3ddeeab67f fix(calendar): address PR feedback from maintainer
- Remove CHANGELOG.md changes (auto-generated from commits)
- Move all parameter descriptions into function docstrings for LLM context
- Remove unused caldav dependency (using httpx for CalDAV implementation)
- Move datetime imports to top of modules
- Remove load_dotenv from tests/conftest.py
- Clarify Event vs Meeting distinction in docstrings
- Handle 401 auth errors gracefully in calendar tests

Addresses all feedback from PR #95 review
2025-07-28 11:44:53 -04:00
Chris Coutinho a2c78ee1ef test: Add tests for MCP tools and resources 2025-07-27 17:43:55 +02:00
Neovasky 7291c930c4 feat(calendar): add comprehensive Calendar app support via CalDAV protocol
- Add complete CalDAV client implementation following NextCloud patterns
- Implement 11 comprehensive calendar MCP tools:
  * nc_calendar_list_calendars - list available calendars
  * nc_calendar_create_event - full event creation with recurrence, reminders, attendees
  * nc_calendar_list_events - enhanced with advanced filtering capabilities
  * nc_calendar_get_event - detailed event information retrieval
  * nc_calendar_update_event - comprehensive event modification
  * nc_calendar_delete_event - event removal
  * nc_calendar_create_meeting - quick meeting creation with smart defaults
  * nc_calendar_get_upcoming_events - upcoming events in next N days
  * nc_calendar_find_availability - intelligent scheduling with conflict detection
  * nc_calendar_bulk_operations - batch update/delete/move operations
  * nc_calendar_manage_calendar - calendar creation and management

- Add CalDAV and iCalendar dependencies to support calendar operations
- Implement comprehensive integration tests (11 test cases covering all scenarios)
- Update documentation with complete calendar tools reference and usage examples

Resolves #74
2025-07-27 00:25:31 -04:00
Chris Coutinho 3ad07d05dd feat: Update webdav client create_directory method to handle recursive directories 2025-07-26 13:27:21 +02:00
Neovasky 50c1215676 fix: apply ruff formatting to test_webdav_operations.py
- Fix quote style from single to double quotes
- Improve line breaks and spacing for better readability
- Address CI formatting requirements

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-26 02:33:21 -04:00