Skip to content

Commit a3a5bf1

Browse files
aadamgoughAdam GoughAdam Goughwaleedlatif1
authored
feat(microsoft-tools): added planner, onedrive, and sharepoint (#840)
* first push * feat: finished onedrive tool * added refresh * added sharepoint with create page * finished sharepoint and onedrive * planner working * fixed create task tool * made read task better * cleaned up read task * bun run lint * cleaned up #840 * greptile changes and clean up * bun run lint * fix #840 * added docs #840 * bun run lint #840 * removed unnecessary logic #840 * removed page token #840 * fixed docs and descriptions, added advanced mode #840 * remove unused types, cleaned up a lot, fixed docs * readded file upload and changed docs * bun run lint * added folder name --------- Co-authored-by: Adam Gough <[email protected]> Co-authored-by: Adam Gough <[email protected]> Co-authored-by: waleedlatif1 <[email protected]>
1 parent e43e78f commit a3a5bf1

File tree

36 files changed

+4113
-51
lines changed

36 files changed

+4113
-51
lines changed

apps/docs/content/docs/tools/meta.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,11 @@
2929
"mem0",
3030
"memory",
3131
"microsoft_excel",
32+
"microsoft_planner",
3233
"microsoft_teams",
3334
"mistral_parse",
3435
"notion",
36+
"onedrive",
3537
"openai",
3638
"outlook",
3739
"perplexity",
@@ -41,6 +43,7 @@
4143
"s3",
4244
"schedule",
4345
"serper",
46+
"sharepoint",
4447
"slack",
4548
"stagehand",
4649
"stagehand_agent",
Lines changed: 178 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,178 @@
1+
---
2+
title: Microsoft Planner
3+
description: Read and create tasks in Microsoft Planner
4+
---
5+
6+
import { BlockInfoCard } from "@/components/ui/block-info-card"
7+
8+
<BlockInfoCard
9+
type="microsoft_planner"
10+
color="#E0E0E0"
11+
icon={true}
12+
iconSvg={`<svg className="block-icon" fill='currentColor' viewBox='-1 -1 27 27' xmlns='http://www.w3.org/2000/svg'>
13+
<defs>
14+
<linearGradient
15+
id='paint0_linear_3984_11038'
16+
x1='6.38724'
17+
y1='3.74167'
18+
x2='2.15779'
19+
y2='12.777'
20+
gradientUnits='userSpaceOnUse'
21+
>
22+
<stop stopColor='#8752E0' />
23+
<stop offset='1' stopColor='#541278' />
24+
</linearGradient>
25+
<linearGradient
26+
id='paint1_linear_3984_11038'
27+
x1='8.38032'
28+
y1='11.0696'
29+
x2='4.94062'
30+
y2='7.69244'
31+
gradientUnits='userSpaceOnUse'
32+
>
33+
<stop offset='0.12172' stopColor='#3D0D59' />
34+
<stop offset='1' stopColor='#7034B0' stopOpacity='0' />
35+
</linearGradient>
36+
<linearGradient
37+
id='paint2_linear_3984_11038'
38+
x1='18.3701'
39+
y1='-3.33385e-05'
40+
x2='9.85717'
41+
y2='20.4192'
42+
gradientUnits='userSpaceOnUse'
43+
>
44+
<stop stopColor='#DB45E0' />
45+
<stop offset='1' stopColor='#6C0F71' />
46+
</linearGradient>
47+
<linearGradient
48+
id='paint3_linear_3984_11038'
49+
x1='18.3701'
50+
y1='-3.33385e-05'
51+
x2='9.85717'
52+
y2='20.4192'
53+
gradientUnits='userSpaceOnUse'
54+
>
55+
<stop stopColor='#DB45E0' />
56+
<stop offset='0.677403' stopColor='#A829AE' />
57+
<stop offset='1' stopColor='#8F28B3' />
58+
</linearGradient>
59+
<linearGradient
60+
id='paint4_linear_3984_11038'
61+
x1='18.0002'
62+
y1='7.49958'
63+
x2='14.0004'
64+
y2='23.9988'
65+
gradientUnits='userSpaceOnUse'
66+
>
67+
<stop stopColor='#3DCBFF' />
68+
<stop offset='1' stopColor='#00479E' />
69+
</linearGradient>
70+
<linearGradient
71+
id='paint5_linear_3984_11038'
72+
x1='18.2164'
73+
y1='7.92626'
74+
x2='10.5237'
75+
y2='22.9363'
76+
gradientUnits='userSpaceOnUse'
77+
>
78+
<stop stopColor='#3DCBFF' />
79+
<stop offset='1' stopColor='#4A40D4' />
80+
</linearGradient>
81+
</defs>
82+
<path
83+
d='M8.25809 15.7412C7.22488 16.7744 5.54971 16.7744 4.5165 15.7412L0.774909 11.9996C-0.258303 10.9664 -0.258303 9.29129 0.774908 8.25809L4.5165 4.51655C5.54971 3.48335 7.22488 3.48335 8.25809 4.51655L11.9997 8.2581C13.0329 9.29129 13.0329 10.9664 11.9997 11.9996L8.25809 15.7412Z'
84+
fill='url(#paint0_linear_3984_11038)'
85+
/>
86+
<path
87+
d='M8.25809 15.7412C7.22488 16.7744 5.54971 16.7744 4.5165 15.7412L0.774909 11.9996C-0.258303 10.9664 -0.258303 9.29129 0.774908 8.25809L4.5165 4.51655C5.54971 3.48335 7.22488 3.48335 8.25809 4.51655L11.9997 8.2581C13.0329 9.29129 13.0329 10.9664 11.9997 11.9996L8.25809 15.7412Z'
88+
fill='url(#paint1_linear_3984_11038)'
89+
/>
90+
<path
91+
d='M0.774857 11.9999C1.80809 13.0331 3.48331 13.0331 4.51655 11.9999L15.7417 0.774926C16.7749 -0.258304 18.4501 -0.258309 19.4834 0.774914L23.225 4.51655C24.2583 5.54977 24.2583 7.22496 23.225 8.25819L11.9999 19.4832C10.9667 20.5164 9.29146 20.5164 8.25822 19.4832L0.774857 11.9999Z'
92+
fill='url(#paint2_linear_3984_11038)'
93+
/>
94+
<path
95+
d='M0.774857 11.9999C1.80809 13.0331 3.48331 13.0331 4.51655 11.9999L15.7417 0.774926C16.7749 -0.258304 18.4501 -0.258309 19.4834 0.774914L23.225 4.51655C24.2583 5.54977 24.2583 7.22496 23.225 8.25819L11.9999 19.4832C10.9667 20.5164 9.29146 20.5164 8.25822 19.4832L0.774857 11.9999Z'
96+
fill='url(#paint3_linear_3984_11038)'
97+
/>
98+
<path
99+
d='M4.51642 15.7413C5.54966 16.7746 7.22487 16.7746 8.25812 15.7413L15.7415 8.25803C16.7748 7.2248 18.45 7.2248 19.4832 8.25803L23.2249 11.9997C24.2582 13.0329 24.2582 14.7081 23.2249 15.7413L15.7415 23.2246C14.7083 24.2579 13.033 24.2579 11.9998 23.2246L4.51642 15.7413Z'
100+
fill='url(#paint4_linear_3984_11038)'
101+
/>
102+
<path
103+
d='M4.51642 15.7413C5.54966 16.7746 7.22487 16.7746 8.25812 15.7413L15.7415 8.25803C16.7748 7.2248 18.45 7.2248 19.4832 8.25803L23.2249 11.9997C24.2582 13.0329 24.2582 14.7081 23.2249 15.7413L15.7415 23.2246C14.7083 24.2579 13.033 24.2579 11.9998 23.2246L4.51642 15.7413Z'
104+
fill='url(#paint5_linear_3984_11038)'
105+
/>
106+
</svg>`}
107+
/>
108+
109+
{/* MANUAL-CONTENT-START:intro */}
110+
[Microsoft Planner](https://www.microsoft.com/en-us/microsoft-365/planner) is a task management tool that helps teams organize work visually using boards, tasks, and buckets. Integrated with Microsoft 365, it offers a simple, intuitive way to manage team projects, assign responsibilities, and track progress.
111+
112+
With Microsoft Planner, you can:
113+
114+
- **Create and manage tasks**: Add new tasks with due dates, priorities, and assigned users
115+
- **Organize with buckets**: Group tasks by phase, status, or category to reflect your team’s workflow
116+
- **Visualize project status**: Use boards, charts, and filters to monitor workload and track progress
117+
- **Stay integrated with Microsoft 365**: Seamlessly connect tasks with Teams, Outlook, and other Microsoft tools
118+
119+
In Sim, the Microsoft Planner integration allows your agents to programmatically create, read, and manage tasks as part of their workflows. Agents can generate new tasks based on incoming requests, retrieve task details to drive decisions, and track status across projects — all without human intervention. Whether you're building workflows for client onboarding, internal project tracking, or follow-up task generation, integrating Microsoft Planner with Sim gives your agents a structured way to coordinate work, automate task creation, and keep teams aligned.
120+
{/* MANUAL-CONTENT-END */}
121+
122+
123+
## Usage Instructions
124+
125+
Integrate Microsoft Planner functionality to manage tasks. Read all user tasks, tasks from specific plans, individual tasks, or create new tasks with various properties like title, description, due date, and assignees using OAuth authentication.
126+
127+
128+
129+
## Tools
130+
131+
### `microsoft_planner_read_task`
132+
133+
Read tasks from Microsoft Planner - get all user tasks or all tasks from a specific plan
134+
135+
#### Input
136+
137+
| Parameter | Type | Required | Description |
138+
| --------- | ---- | -------- | ----------- |
139+
| `accessToken` | string | Yes | The access token for the Microsoft Planner API |
140+
| `planId` | string | No | The ID of the plan to get tasks from \(if not provided, gets all user tasks\) |
141+
| `taskId` | string | No | The ID of the task to get |
142+
143+
#### Output
144+
145+
| Parameter | Type | Description |
146+
| --------- | ---- | ----------- |
147+
| `task` | json | The Microsoft Planner task object, including details such as id, title, description, status, due date, and assignees. |
148+
| `metadata` | json | Additional metadata about the operation, such as timestamps, request status, or other relevant information. |
149+
150+
### `microsoft_planner_create_task`
151+
152+
Create a new task in Microsoft Planner
153+
154+
#### Input
155+
156+
| Parameter | Type | Required | Description |
157+
| --------- | ---- | -------- | ----------- |
158+
| `accessToken` | string | Yes | The access token for the Microsoft Planner API |
159+
| `planId` | string | Yes | The ID of the plan where the task will be created |
160+
| `title` | string | Yes | The title of the task |
161+
| `description` | string | No | The description of the task |
162+
| `dueDateTime` | string | No | The due date and time for the task \(ISO 8601 format\) |
163+
| `assigneeUserId` | string | No | The user ID to assign the task to |
164+
| `bucketId` | string | No | The bucket ID to place the task in |
165+
166+
#### Output
167+
168+
| Parameter | Type | Description |
169+
| --------- | ---- | ----------- |
170+
| `task` | json | The Microsoft Planner task object, including details such as id, title, description, status, due date, and assignees. |
171+
| `metadata` | json | Additional metadata about the operation, such as timestamps, request status, or other relevant information. |
172+
173+
174+
175+
## Notes
176+
177+
- Category: `tools`
178+
- Type: `microsoft_planner`
Lines changed: 127 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,127 @@
1+
---
2+
title: OneDrive
3+
description: Create, upload, and list files
4+
---
5+
6+
import { BlockInfoCard } from "@/components/ui/block-info-card"
7+
8+
<BlockInfoCard
9+
type="onedrive"
10+
color="#E0E0E0"
11+
icon={true}
12+
iconSvg={`<svg className="block-icon" fill='currentColor' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'>
13+
<g>
14+
<path
15+
d='M12.20245,11.19292l.00031-.0011,6.71765,4.02379,4.00293-1.68451.00018.00068A6.4768,6.4768,0,0,1,25.5,13c.14764,0,.29358.0067.43878.01639a10.00075,10.00075,0,0,0-18.041-3.01381C7.932,10.00215,7.9657,10,8,10A7.96073,7.96073,0,0,1,12.20245,11.19292Z'
16+
fill='#0364b8'
17+
/>
18+
<path
19+
d='M12.20276,11.19182l-.00031.0011A7.96073,7.96073,0,0,0,8,10c-.0343,0-.06805.00215-.10223.00258A7.99676,7.99676,0,0,0,1.43732,22.57277l5.924-2.49292,2.63342-1.10819,5.86353-2.46746,3.06213-1.28859Z'
20+
fill='#0078d4'
21+
/>
22+
<path
23+
d='M25.93878,13.01639C25.79358,13.0067,25.64764,13,25.5,13a6.4768,6.4768,0,0,0-2.57648.53178l-.00018-.00068-4.00293,1.68451,1.16077.69528L23.88611,18.19l1.66009.99438,5.67633,3.40007a6.5002,6.5002,0,0,0-5.28375-9.56805Z'
24+
fill='#1490df'
25+
/>
26+
<path
27+
d='M25.5462,19.18437,23.88611,18.19l-3.80493-2.2791-1.16077-.69528L15.85828,16.5042,9.99475,18.97166,7.36133,20.07985l-5.924,2.49292A7.98889,7.98889,0,0,0,8,26H25.5a6.49837,6.49837,0,0,0,5.72253-3.41556Z'
28+
fill='#28a8ea'
29+
/>
30+
</g>
31+
</svg>`}
32+
/>
33+
34+
{/* MANUAL-CONTENT-START:intro */}
35+
[OneDrive](https://onedrive.live.com) is Microsoft’s cloud storage and file synchronization service that allows users to securely store, access, and share files across devices. Integrated deeply into the Microsoft 365 ecosystem, OneDrive supports seamless collaboration, version control, and real-time access to content across teams and organizations.
36+
37+
Learn how to integrate the OneDrive tool in Sim to automatically pull, manage, and organize your cloud files within your workflows. This tutorial walks you through connecting OneDrive, setting up file access, and using stored content to power automation. Ideal for syncing essential documents and media with your agents in real time.
38+
39+
With OneDrive, you can:
40+
41+
- **Store files securely in the cloud**: Upload and access documents, images, and other files from any device
42+
- **Organize your content**: Create structured folders and manage file versions with ease
43+
- **Collaborate in real time**: Share files, edit them simultaneously with others, and track changes
44+
- **Access across devices**: Use OneDrive from desktop, mobile, and web platforms
45+
- **Integrate with Microsoft 365**: Work seamlessly with Word, Excel, PowerPoint, and Teams
46+
- **Control permissions**: Share files and folders with custom access settings and expiration controls
47+
48+
In Sim, the OneDrive integration enables your agents to directly interact with your cloud storage. Agents can upload new files to specific folders, retrieve and read existing files, and list folder contents to dynamically organize and access information. This integration allows your agents to incorporate file operations into intelligent workflows — automating document intake, content analysis, and structured storage management. By connecting Sim with OneDrive, you empower your agents to manage and use cloud documents programmatically, eliminating manual steps and enhancing automation with secure, real-time file access.
49+
{/* MANUAL-CONTENT-END */}
50+
51+
52+
## Usage Instructions
53+
54+
Integrate OneDrive functionality to manage files and folders. Upload new files, create new folders, and list contents of folders using OAuth authentication. Supports file operations with custom MIME types and folder organization.
55+
56+
57+
58+
## Tools
59+
60+
### `onedrive_upload`
61+
62+
Upload a file to OneDrive
63+
64+
#### Input
65+
66+
| Parameter | Type | Required | Description |
67+
| --------- | ---- | -------- | ----------- |
68+
| `accessToken` | string | Yes | The access token for the OneDrive API |
69+
| `fileName` | string | Yes | The name of the file to upload |
70+
| `content` | string | Yes | The content of the file to upload |
71+
| `folderSelector` | string | No | Select the folder to upload the file to |
72+
| `folderId` | string | No | The ID of the folder to upload the file to \(internal use\) |
73+
74+
#### Output
75+
76+
| Parameter | Type | Description |
77+
| --------- | ---- | ----------- |
78+
| `file` | json | The OneDrive file object, including details such as id, name, size, and more. |
79+
| `files` | json | An array of OneDrive file objects, each containing details such as id, name, size, and more. |
80+
81+
### `onedrive_create_folder`
82+
83+
Create a new folder in OneDrive
84+
85+
#### Input
86+
87+
| Parameter | Type | Required | Description |
88+
| --------- | ---- | -------- | ----------- |
89+
| `accessToken` | string | Yes | The access token for the OneDrive API |
90+
| `folderName` | string | Yes | Name of the folder to create |
91+
| `folderSelector` | string | No | Select the parent folder to create the folder in |
92+
| `folderId` | string | No | ID of the parent folder \(internal use\) |
93+
94+
#### Output
95+
96+
| Parameter | Type | Description |
97+
| --------- | ---- | ----------- |
98+
| `file` | json | The OneDrive file object, including details such as id, name, size, and more. |
99+
| `files` | json | An array of OneDrive file objects, each containing details such as id, name, size, and more. |
100+
101+
### `onedrive_list`
102+
103+
List files and folders in OneDrive
104+
105+
#### Input
106+
107+
| Parameter | Type | Required | Description |
108+
| --------- | ---- | -------- | ----------- |
109+
| `accessToken` | string | Yes | The access token for the OneDrive API |
110+
| `folderSelector` | string | No | Select the folder to list files from |
111+
| `folderId` | string | No | The ID of the folder to list files from \(internal use\) |
112+
| `query` | string | No | A query to filter the files |
113+
| `pageSize` | number | No | The number of files to return |
114+
115+
#### Output
116+
117+
| Parameter | Type | Description |
118+
| --------- | ---- | ----------- |
119+
| `file` | json | The OneDrive file object, including details such as id, name, size, and more. |
120+
| `files` | json | An array of OneDrive file objects, each containing details such as id, name, size, and more. |
121+
122+
123+
124+
## Notes
125+
126+
- Category: `tools`
127+
- Type: `onedrive`

0 commit comments

Comments
 (0)