diff --git a/admin_manual/ai/app_context_agent.rst b/admin_manual/ai/app_context_agent.rst index 9da158762..7667060f3 100644 --- a/admin_manual/ai/app_context_agent.rst +++ b/admin_manual/ai/app_context_agent.rst @@ -11,33 +11,9 @@ Tool groups are only available if their requirements are met. They can be en- an Currently implemented tools: -* List the user's calendars +Artificial intelligence tools +############################# - * Example prompt: *"List my calendars"* - -* List the user's talk conversations (requires `Talk `_) - - * Example prompt: *"List my talk conversations"* - -* List messages in a talk conversation (requires `Talk `_) - - * Example prompt: *"List the latest messages in my conversation with Andrew"* - -* Send a message to a talk conversation (requires `Talk `_) - - * Example prompt: *"Can you send a joke to Andrew in talk?"* - -* Create a public talk conversation (requires `Talk `_) - - * Example prompt: *"Can you create a new public talk conversation titled 'Press conference'?"* - -* Find a person in the user's contacts - - * Example prompt: *"What is Andrew's Email address?"* - -* Find the current user's details - - * Example prompt: *"Where do I live?"* * Ask a question to context chat (requires :ref:`Context Chat`) @@ -57,6 +33,274 @@ Currently implemented tools: * Example prompt: *"Can you generate me an image of a cartoon drawing of a roman soldier typing something on a laptop?"* +Calendar tools +############## + +* List the user's calendars + + * Example prompt: *"List my calendars"* + +* Schedule an event in the user's calendar + + * Example prompt: *"Schedule an event with Andrew tomorrow at noon."* + +* Find free times in users' calendar + + * Example prompt: *"Find a free 1-hour slot for a meeting with me and Marco next week."* + +Tasks tools +########### + +* Create a task + + * Example prompt: *"Create a task for grocery shopping with due date tomorrow."* + +* List tasks + + * Example prompt: *"List my outstanding tasks"* + +* Complete a task + + * Example prompt: *"Mark the grocery shopping task as completed."* + +* Update a task's details + + * Example prompt: *"Change the priority of the grocery shopping task to the highest possible priority."* + * Example prompt: *"Change the due date of my work report task to the beginning of next week."* + +* Delete a task + + * Example prompt: *"Delete the grocery shopping task in my tasks."* + + +Circles/teams tools +################### + +* List circles + + * Example prompt: *"List all my teams."* + +* List circle members + + * Example prompt: *"List all members of my Content Marketing team."* + +* Create new circle + + * Example prompt: *"Create a new team called 'Hiking group'."* + +* Add members to circles + + * Example prompt: *"Add Ralph to the Hiking group team."* + +* Remove members from circles + + * Example prompt: *"Remove ralph from the Hiking group team."* + +* Change circle details + + * Example prompt: *"Change the name of the Hiking group team to 'Outdoor group'."* + * Example prompt: *"Add the following description to the Hiking group team: We go hiking together once a month. Come join us."* + +* Delete a circle + + * Example prompt: *"Delete the Hiking group team."* + +* Share a file with a circle + + * Example prompt: *"Share my Hiking plans.md file with the Hiking group team."* + + +Contacts tools +############## + +* Find a contact + + * Example prompt: *"What is Anna's email address?"* + +* Find a user's ID + + * Example prompt: *"What is Ralph's userID?"* + +* Find the current user's details + + * Example prompt: *"Where do I live?"* + +Cookbook tools +############## + +* List recipes + + * Example prompt: *"List my recipes."* + +* Search for recipes + + * Example prompt: *"Do I have any Spaghetti recipes?"* + +* Get recipe details + + * Example prompt: *"Can you give me the details of my Spaghetti Carbonara recipe?"* + +* Create a new recipe + + * Example prompt: *"Create a recipe for Guacamole in my cookbook."* + +* Delete a recipe + + * Example prompt: *"Remove the Guacamole recipe from my cookbook."* + +* List recipe categories + + * Example prompt: *"Which recipe categories do I have in my cookbook?"* + +Deck tools +########## + +* List deck boards + + * Example prompt: *"List the deck boards I have access to."* + +* Add a new card + + * Example prompt: *"Can you add a card with title 'Repair kitchen sink' to my Personal deck board?"* + +* Add a label to a card + + * Example prompt: *"Can you add the label 'Urget' to the 'repair kitchen sink' card in my personal deck board?"* + +* Assign a card to a user + + * Example prompt: *"Can you assign the 'Repair kitchen sink' card in my Personal deck board to Andrew?"* + +* Delete a card + + * Example prompt: *"Delete the 'Repair kitchen sink' card in my Personal deck board."* + +Files tools +########### + +* Get contents of a file + + * Example prompt: *"Can you fetch the following file in my documents? Design/Planning.md"* + * Example prompt: *"Can you fetch the following file in my documents? https://mycloud.com/f/98543234"* + +* Retrieve folder tree + + * Example prompt: *"List my files."* + +* Create a public link for a file or folder + + * Example prompt: *"Create a public link for the following file: Design/Planning.md"* + +* Create a new file + + * Example prompt: *"Create a new file Ideas.md in my files and fill it with ideas for hiking destinations in the black forest."* + +* Create a new folder + + * Example prompt: *"Create a new folder 'Hiking plans' in my files."* + +* Move a file + + * Example prompt: *"Move the Ideas.md file into the Hiking plans folder."* + +* Copy a file + + * Example prompt: *"Copy the Ideas.md file into my Notes folder."* + +* Delete a file + + * Example prompt: *"Delete the Ideas.md file."* + +Forms tools +########### + +* List all forms + + * Example prompt: *"List all the forms I have access to."* + +* Get details of a form + + * Example prompt: *"Can you give me all details about the Retreat signup form?"* + +* Add a question to a form + + * Example prompt: *"Add the following question to the retreat signup form: 'Number of days attending'."* + +* Retrieve all responses of a form + + * Example prompt: *"List all responses to the Retreat signup form."* + +* Update form settings + + * Example prompt: *"Make the Retreat signup form expire end of next week."* + +* Delete a form + + * Example prompt: *"Delete the Retreat signup form."* + +Search tools +############ +All search providers in Nextcloud are also automatically available as tools. + +* Search for files + + * Example prompt: *"List all the powerpoint presentations in my files with file ending pptx."* + +Share tools +########### + +* List shares + + * Example prompt: *"List all files that were shared with me."* + * Example prompt: *"List the shares of the Design/Ideas.md file."* + +* Share a file or folder with a user + + * Example prompt: *"Share the Design/Ideas.md file with the user martin."* + +* Share a file or folder with a group + + * Example prompt: *"Share the Design/Ideas.md file with the group Designers."* + +* Update a share's permissions + + * Example prompt: *"Only allow martin read only access on the share of the Design/Ideas.md file."* + +* Delete a share + + * Example prompt: *"Remove the share of the Design/Ideas.md file with martin."* + +* List user groups + + * Example prompt: *"Which user groups are there?"* + +* Retrieve share details + + * Example prompt: *"Does martin have write access to the Design/Ideas.md file I shared with him?"* + + +Talk tools +########## + +* List the user's talk conversations (requires `Talk `_) + + * Example prompt: *"List my talk conversations"* + +* List messages in a talk conversation (requires `Talk `_) + + * Example prompt: *"List the latest messages in my conversation with Andrew"* + +* Send a message to a talk conversation (requires `Talk `_) + + * Example prompt: *"Can you send a joke to Andrew in talk?"* + +* Create a public talk conversation (requires `Talk `_) + + * Example prompt: *"Can you create a new public talk conversation titled 'Press conference'?"* + +Miscellaneous tools +################### + * Get coordinates for an Address from Open Street Maps Nomatim * Example prompt: *"What are the coordinates for Berlin, Germany?"* @@ -69,26 +313,6 @@ Currently implemented tools: * Example prompt: *"How is the weather in Berlin?"* -* Schedule an event in the user's calendar - - * Example prompt: *"Schedule an event with Andrew tomorrow at noon."* - -* Find free times in users' calendar - - * Example prompt: *"Find a free 1-hour slot for a meeting with me and Marco next week."* - -* Create a deck card (requires `Deck `_) - - * Example prompt: *"Create a deck card for 'Buy Groceries' in my Personal board."* - -* Access information in deck boards (requires `Deck `_) - - * Example prompt: *"Which deck cards are currently in the To do list in my Personal board?"* - -* Create a task - - * Example prompt: *"Create a task for 'Renovate flat' in my Personal calendar. The task should be due Monday next week."* - * Search for youtube videos * Example prompt: *"Show me the youtube video of the Nextcloud hub 10 launch."* @@ -101,18 +325,6 @@ Currently implemented tools: * Example prompt: *"Send a test email from my carry@company.com account to Andrew@company.com"* -* Get contents of a file - - * Example prompt: *"Can you summarize the following file in my documents? Design/Planning.md"* - -* Generate a public share link for a file - - * Example prompt: *"Can create a share link for the following file in my documents? Design/Planning.md"* - -* Get the folder tree of the user's files - - * Example prompt: *"Can you show me the folder tree of my files?"* - * Determine public transport routes (requires a `HERE `_ API key configured in the admin settings) * Example prompt: *"How can I get from Würzburg Hauptbahnhof to Berlin Hauptbahnhof?"* @@ -129,6 +341,9 @@ Currently implemented tools: * Example prompt: *"Create a work package called 'Publish release video' in the 'Product launch' project in OpenProject"* +Combining tools +--------------- + These tools can also be combined by the agent to fulfil tasks like the following: * *"How is the weather where Andrew lives?"* @@ -143,6 +358,10 @@ These tools can also be combined by the agent to fulfil tasks like the following * Uses contacts to look up Andrew's email and then sends an email +* *"Which of my files are from Anna?"* + + * Looks up Anna's userID and searches for files that belong to her + Custom Tools using MCP -----------------------