Commit Graph

902 Commits

Author SHA1 Message Date
olivermdb
4cd28ad9d7 Fix ruff linting errors - remove unnecessary f-string prefixes
Removed f-string prefixes from strings without placeholders
in get_gmail_attachment_content function (lines 672, 675, 677, 678, 679).

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-16 01:00:10 -04:00
olivermdb
06cbdd91cd Add Gmail attachment support with ephemeral ID handling
This commit adds comprehensive Gmail attachment functionality:

1. New helper function `_extract_attachments()`:
   - Recursively extracts attachment metadata from message payloads
   - Returns filename, mimeType, size, and attachmentId for each attachment

2. Enhanced `get_gmail_message_content()`:
   - Now displays attachment information when present
   - Shows attachment ID needed for downloading

3. New tool `get_gmail_attachment_content()`:
   - Downloads email attachments via Gmail API
   - Returns base64-encoded attachment data
   - Handles ephemeral attachment ID issue correctly

Key technical insight: Gmail attachment IDs are ephemeral and change
between API calls for the same message. To avoid ID mismatches, the
download function uses the attachment ID provided by the caller directly
without refetching the message, as refetching would generate new IDs
that don't match the original ID.

The attachment download endpoint returns size information directly, while
filename and mime type should be obtained from the initial message fetch
that provided the attachment ID.
2025-10-15 16:12:52 -04:00
Taylor Wilsdon
7a70bfefd4 Merge pull request #234 from luutuankiet/feat/gmail_create_draft_html_type
chore: Gmail tool enable html message for `draft_gmail_message`
2025-10-13 15:47:01 -04:00
luutuankiet
7ef0c2503a chore: port same html arguments to draft_gmail_message 2025-10-13 12:15:18 +07:00
Taylor Wilsdon
31e6987010 update dxt 2025-10-12 09:59:25 -04:00
Taylor Wilsdon
577bfafb7c chore: release v1.5.2 2025-10-07 18:01:21 -04:00
Taylor Wilsdon
24101902f1 version 2025-10-07 18:01:17 -04:00
Taylor Wilsdon
0adab0cdd7 cleanup 2025-10-07 18:01:06 -04:00
Taylor Wilsdon
ad198ef2a9 dxt 2025-10-07 17:56:03 -04:00
Taylor Wilsdon
a624d3661c chore: release v1.5.1 2025-10-07 17:54:59 -04:00
Taylor Wilsdon
bc711bc606 version 2025-10-07 17:54:56 -04:00
Taylor Wilsdon
d3a06aac38 gtasks fix 2025-10-07 17:54:35 -04:00
Taylor Wilsdon
1c7354cb5e update dxt 2025-10-07 14:33:08 -04:00
Taylor Wilsdon
91ec3c6947 chore: release v1.5.0 2025-10-07 14:31:38 -04:00
Taylor Wilsdon
7269a1042a Merge pull request #229 from accorvin/google-calendar-responses
Add attendee response status and details to calendar events
2025-10-07 13:55:44 -04:00
Alex Corvin
158780ab10 Add attendee response status and details to calendar events
Enhance the get_events function to include detailed attendee information
when detailed=True, including:
- Response status (accepted/declined/tentative/needsAction)
- Organizer flag
- Optional attendee flag

Changes:
- Add _format_attendee_details() helper function following existing code patterns
- Update get_events() to display attendee details in both single and multiple event views
- Maintain backward compatibility - new field only shown in detailed mode
- Update function docstring to document new attendee details

Resolves #228

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-07 13:15:45 -04:00
Taylor Wilsdon
26981cac24 Merge pull request #227 from benjaminjackson/main
feat(gcalendar): Add event transparency option
2025-10-07 12:50:01 -04:00
Taylor Wilsdon
8fcedefa6e refactor into helper function 2025-10-07 12:30:49 -04:00
Taylor Wilsdon
c64cfd6866 Merge pull request #225 from taylorwilsdon/auth_simplification
feat: FastMCP Native OAuth 2.1 Provider Support
2025-10-07 11:48:43 -04:00
Taylor Wilsdon
43fed1741e fix ruff return groups 2025-10-07 10:30:05 -04:00
Taylor Wilsdon
03297f0670 prune dependency groups 2025-10-07 09:57:50 -04:00
Taylor Wilsdon
8f4bcad3a6 prune dependency groups 2025-10-07 09:57:31 -04:00
Taylor Wilsdon
b8703d229a refactor pyproject.toml to best practices, chunk out runtime dependencies from dev dependencies 2025-10-07 09:50:23 -04:00
Benjamin Jackson
148127e364 feat(gcalendar): Add event transparency option
- Add 'transparency' parameter to create_event and modify_event functions
- Supports 'opaque' (Busy) and 'transparent' (Available/Free) modes
- Validates input and logs transparency setting or warning
- Defaults to None, preserving existing Google Calendar behavior

Provides more granular control over event scheduling and visibility.
2025-10-06 19:15:53 -04:00
Taylor Wilsdon
923df7eca5 refactor oauth2.1 support to fastmcp native 2025-10-05 18:00:10 -04:00
Taylor Wilsdon
6e194c83d9 update fastmcp 2025-10-05 17:21:18 -04:00
Taylor Wilsdon
4551e64613 Merge pull request #224 from taylorwilsdon/issues/222
feat: add support for html message send
2025-10-05 16:53:56 -04:00
Taylor Wilsdon
dc261fa82f add support for html message send 2025-10-05 16:50:58 -04:00
Taylor Wilsdon
1e9feaa48f fix issuer 2025-09-30 15:35:10 -04:00
Taylor Wilsdon
482f4e33f9 chore: release v1.4.8 2025-09-29 17:08:33 -04:00
Taylor Wilsdon
086c0adef3 add new dxt 2025-09-29 17:08:24 -04:00
Taylor Wilsdon
a7c0a78963 Merge pull request #219 from taylorwilsdon/oauth_feedback
enh: Legacy OAuth session binding & compatibility with modern methods
2025-09-29 17:03:29 -04:00
Taylor Wilsdon
6087b74578 dynamically set oauth base 2025-09-29 17:02:32 -04:00
Taylor Wilsdon
8b035d7033 add userinfo and fix issuer 2025-09-29 16:01:28 -04:00
Taylor Wilsdon
bbab827652 timezone aware handling 2025-09-28 16:13:55 -04:00
Taylor Wilsdon
238a314fef session binding and legacy compatibility 2025-09-28 16:08:41 -04:00
Taylor Wilsdon
e58ca9ec73 Merge pull request #218 from taylorwilsdon/fix/197
fix: typing to resolve #197
2025-09-28 15:39:03 -04:00
Taylor Wilsdon
ff7ced33e5 yank optional 2025-09-28 15:38:39 -04:00
Taylor Wilsdon
db6861c33b typing to resolve #197 2025-09-28 15:34:19 -04:00
Taylor Wilsdon
c20e0388ff Merge pull request #216 from ForrestTrepte/differentiate-subtasks
feat: show subtask hierarchy
2025-09-20 17:13:11 -04:00
Taylor Wilsdon
1c235c33a4 Update gtasks/tasks_tools.py 2025-09-20 17:09:32 -04:00
Forrest Trepte
c5bede71c7 resolves #204 by differentiating subtasks for top-level tasks
Also:
* Creates placeholder parents for orphaned subtasks, grouping them together even though their parent isn't available.
* Performs sorting of tasks in a simpler  way.
* Fixes mypy type warnings in tasks_tools.py so that mypy runs clean on this one file. See #194 for more info about type checking.
2025-09-20 13:15:10 -07:00
Taylor Wilsdon
a8eeebb385 Merge pull request #213 from taylorwilsdon/taylorwilsdon-patch-12
Update README.md
2025-09-18 16:33:07 -04:00
Taylor Wilsdon
d82c3baa25 Update README.md
Closes #207
2025-09-18 16:32:54 -04:00
Taylor Wilsdon
abd6c58b7b Merge pull request #195 from ForrestTrepte/fix-completed-tasks-hidden
explain that when show_completed is set, show_hidden should also be set
2025-09-18 16:27:15 -04:00
Taylor Wilsdon
550cc65937 Merge pull request #212 from ForrestTrepte/fix-205-tasks-parameters
fix: types for tasks parameters that work with both MCP inspector and Claude Desktop
2025-09-18 16:25:48 -04:00
Taylor Wilsdon
bf061293cf Merge pull request #206 from emanuilo/update-readme
chore: update readme with export_doc_to_pdf tool
2025-09-18 16:24:53 -04:00
Forrest Trepte
a8ee7defa2 fix list_tasks with max_results, boolean params 2025-09-17 15:41:41 -07:00
Forrest Trepte
b2fae7e91e fix list_task_lists with max_results 2025-09-17 15:41:23 -07:00
Taylor Wilsdon
b64b950548 Update README.md 2025-09-14 08:43:15 -04:00