Open
Conversation
Contributor
Author
|
Ready for review. Summary: 8 new Talk tools with 44 integration tests, all passing on NC 31 + NC 32. Tools added:
CI also fixed: spreed + admin_notifications apps now installed in CI containers. Total: 20 tools, 153 tests (26 unit + 127 integration). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds 8 new MCP tools for Nextcloud Talk (Phase 2):
READ tools:
list_conversations— list all conversations with unread counts, types, activityget_conversation— get details for a specific conversation by tokenget_messages— retrieve chat messages (newest first, configurable limit)get_participants— list participants with roles (owner/moderator/user/guest)WRITE tools:
send_message— send chat messages (Markdown, replies, UTF-8)create_conversation— create group or public conversationsDESTRUCTIVE tools:
delete_message— delete a chat message (replaced with system message)leave_conversation— leave a conversationAll tools follow the established patterns: permission decorators, JSON return values, formatted output with only the most useful fields from the API response.
Tests: 44 new integration tests covering:
Total test count: 153 (26 unit + 127 integration)
Verified against
ruff check,ruff format,isort— cleanpyrightstrict — 0 errorsTest plan