source-package.json — Mail and Files Connector

From version 0.1.0 of Mail and Files Connector, shown publicly by its creator. 5.1 KiB · SHA-256 4567881407cd6f95b9eb5ae3fb874f46f03c2d6bfdb332a76358c7159c1c323a.

{
  "schema_version": 1,
  "runtimes": [
    {
      "name": "python",
      "versions": [
        "3.10"
      ]
    }
  ],
  "dependencies": [],
  "operations": [
    {
      "kind": "read",
      "description": "Read a bounded full Graph JSON message response from MAIL_DEFAULT_USER, then truncate the returned body locally.",
      "target_restrictions": [
        "Only the configured mailbox; mail_read truncates body content at 10000 characters",
        "No mail mutation or attachment download"
      ]
    },
    {
      "kind": "search",
      "description": "Search bounded mail and drive metadata through Microsoft Graph.",
      "target_restrictions": [
        "Only the configured mailbox and SharePoint drive",
        "At most 50 result items per call; additional pages are marked incomplete",
        "The full bounded response is read before local item truncation"
      ]
    },
    {
      "kind": "list",
      "description": "List bounded mail threads, drive folders and item versions.",
      "target_restrictions": [
        "Only the configured mailbox, site and optional drive",
        "At most 50 result items per call; additional pages are marked incomplete"
      ]
    },
    {
      "kind": "read",
      "description": "Test-only fake transport reads a synthetic fixture before any request.",
      "target_restrictions": [
        "Only the file named by GRAPH_FAKE_RESPONSES",
        "Requires GRAPH_FAKE_TRANSPORT_TEST_ACK=zero-width-lab-test-suite-only",
        "At most 2000000 bytes; malformed fixtures rejected"
      ]
    }
  ],
  "authorization": {
    "mode": "oauth_application",
    "scopes": [
      "Mail.Read",
      "Sites.Read.All",
      "Files.Read.All"
    ],
    "credential_requirements": [
      "GRAPH_TENANT_ID",
      "GRAPH_CLIENT_ID",
      "GRAPH_CLIENT_SECRET"
    ]
  },
  "network": {
    "domains": [
      "graph.microsoft.com",
      "login.microsoftonline.com"
    ],
    "destinations": [
      "Client-credentials token endpoint and Microsoft Graph v1.0 metadata endpoints",
      "Redirects from Graph are limited to Graph or a single-label tenant.sharepoint.com host; no file content download tool is exposed",
      "urllib honors HTTPS_PROXY, https_proxy, NO_PROXY, no_proxy and macOS or Windows system proxy settings; TLS still terminates at the declared hosts",
      "Token host receives tenant URL, client ID/secret, scope and grant type.",
      "Graph receives bearer token, mailbox/site/drive IDs, query phrases, conversation/message/item IDs and folder paths; site-returned drive IDs go back to Graph.",
      "Redirect URL paths/queries go to Graph or a single-label SharePoint host; redirects do not forward bearer authorization.",
      "OS resolver or configured proxy receives destination hosts, including provider-returned redirect hosts; stdio client receives results."
    ]
  },
  "safety": {
    "read_only_by_default": true,
    "dry_run_supported": false,
    "consequential_writes_require_authorization": true,
    "validation_controls": [
      "Every request and redirect must use an allowed HTTPS host and default port",
      "Read-only tools have bounded item counts; incomplete results list skipped data and set isError unless the server starts with --allow-partial",
      "mail_read truncates body content at a caller-selected limit up to 10000 characters",
      "Credentials and access tokens remain in memory and are never returned or logged",
      "Fake transport requires both test variables, loads its fixture before serving requests, warns on stderr and makes no network request",
      "Remote folder and identifier components reject traversal, absolute, encoded and backslash forms before requests",
      "The full Graph response (up to 2000000 bytes) is read before local item/body truncation; output limits do not restrict upstream reads.",
      "Stdin has a 1000000-byte line limit including newline; oversized input is rejected and drained in bounded byte chunks. Strict UTF-8 errors return -32700 and serving continues; JSON output escapes non-ASCII characters.",
      "Fixture reads are limited to 2000000 bytes; malformed JSON, entries, collection items, pagination metadata and message bodies are rejected."
    ],
    "target_restrictions": [
      "Only MAIL_DEFAULT_USER mailbox and SHAREPOINT_SITE or SHAREPOINT_DRIVE",
      "No send, event, upload or delete tools in version 0.1.0",
      "Only GRAPH_FAKE_RESPONSES fixture is read locally in test mode"
    ]
  },
  "tests": {
    "files": [
      "tests/test_mail_and_files_connector.py",
      "tests/test_hygiene.py"
    ],
    "fixtures": "synthetic_only",
    "provenance": "creator",
    "evidence": [
      "Subprocess tests cover current and legacy protocols, discovery, listing, calls, errors, version data, partial results and credential redaction",
      "Synthetic fixture exercises Graph token and metadata calls without real network access",
      "Hygiene tests read only package files and check public identifiers, paths, invisible characters, vendor names and signatures",
      "Synthetic tests prove pre-request remote traversal rejection, bounded fixture and UTF-8 stdin reads, and malformed provider/fixture response rejection"
    ]
  }
}

License: MIT (read it).

MITMIT License

Copyright (c) 2026 Zero Width Lab

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

Back to the listing