Skip to main content

matimo-microsoft

Microsoft Graph tools for Matimo — search, OneDrive/SharePoint files, Outlook mail, Microsoft Teams, calendar, and SharePoint publishing.

PyPI Docs


Installation

pip install matimo matimo-microsoft

Available Tools (9 Total)

Tool Description Risk Graph endpoint
ms_search_knowledge Search SharePoint sites, OneDrive/SharePoint files, and list items low POST /search/query
ms_read_file Read a OneDrive/SharePoint file's contents (plain-text formats only) low GET /drives/{id}/items/{id}/content
ms_list_files List the children of a OneDrive/SharePoint folder low GET /drives/{id}/items/{id}/children
ms_get_email List messages in the signed-in user's mailbox low GET /me/messages
ms_send_email Send an email as the signed-in user high (approval) POST /me/messages + /send
ms_send_teams_message Post (or reply to) a message in a Teams channel medium POST /teams/{id}/channels/{id}/messages
ms_create_document Upload a small file to OneDrive/SharePoint (≤4 MB) medium PUT /drives/{id}/items/{id}:/{name}:/content
ms_create_calendar_event Create a calendar event, optionally as a Teams meeting medium POST /me/events
ms_publish_to_sharepoint Create and publish a SharePoint site page high (approval) POST /sites/{id}/pages + /publish

Quick Start

from matimo import MatimoInstance

matimo = await MatimoInstance.init(auto_discover=True)

# Search across SharePoint and OneDrive
search = await matimo.execute("ms_search_knowledge", {"query": "Q3 budget filetype:xlsx", "top": 5})

# List messages in the signed-in user's mailbox
inbox = await matimo.execute("ms_get_email", {"top": 5, "filter": "isRead eq false"})

# Send an email (requires_approval: true — routed through HITL)
await matimo.execute(
    "ms_send_email",
    {"to": ["alice@contoso.com"], "subject": "Weekly status update", "body": "Here is the summary..."},
)

Authentication

Microsoft Graph tools use delegated OAuth2 access tokens. Matimo never performs the OAuth code exchange itself — connect Microsoft through your Matimo deployment (Nova), then provide the resulting token at execution time:

export MICROSOFT_GRAPH_ACCESS_TOKEN="eyJ0eXAiOiJKV1Qi..."

or pass it through per-call credentials:

await matimo.execute(
    "ms_get_email",
    {"top": 5},
    credentials={"MICROSOFT_GRAPH_ACCESS_TOKEN": token},
)

Risk & Approval

ms_send_email and ms_publish_to_sharepoint are marked risk: high and requires_approval: true — Matimo routes them through the human-in-the-loop approval flow before they execute, since they send mail and publish content visible to others on the user's behalf. ms_send_teams_message, ms_create_document, and ms_create_calendar_event are risk: medium (external writes, narrower blast radius). The remaining read-only tools are risk: low.


Documentation


Links

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

matimo_microsoft-0.1.2.tar.gz (26.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

matimo_microsoft-0.1.2-py3-none-any.whl (31.3 kB view details)

Uploaded Python 3

File details

Details for the file matimo_microsoft-0.1.2.tar.gz.

File metadata

  • Download URL: matimo_microsoft-0.1.2.tar.gz
  • Upload date:
  • Size: 26.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for matimo_microsoft-0.1.2.tar.gz
Algorithm Hash digest
SHA256 f729e7bf10447bb1ae643a232c385b2bf135cbbabf81cd9dde6181dd68b5f5c4
MD5 c883e36b0ea4bb508234c87a96958f62
BLAKE2b-256 72b2d5a500a83377e3aebc8491bf32dbd421368b8531605ce45f3f4b3c0897bf

See more details on using hashes here.

File details

Details for the file matimo_microsoft-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for matimo_microsoft-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c1a46ef9c12e7524eb60635dea28fcb7d5f3b754c50ff094a8ee9f2b9fa7e9c3
MD5 e18da4950526dbe5faf0f8d5f0a2a52f
BLAKE2b-256 c42865cf2b756afeef7b4cbe2797190a9e0a28be7cde7e98cb6ae82324e98a48

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page