{
  "data": {
    "a": {
      "slug": "google-cloud-storage",
      "name": "Google Cloud Storage",
      "vendor": "Google Cloud",
      "vendorUrl": "https://cloud.google.com/storage",
      "kind": "http-api",
      "category": "file-storage",
      "summary": "Google Cloud Storage is Google Cloud's object store for buckets and objects, reached through JSON and XML REST APIs, a gRPC Storage Control API, the gcloud CLI, client libraries and a generally available remote MCP server.",
      "url": "https://www.anchorterminal.com/tools/google-cloud-storage",
      "markdownUrl": "https://www.anchorterminal.com/tools/google-cloud-storage.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/google-cloud-storage.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/google-cloud-storage.json",
      "dns": "google-cloud-storage.grade.anchorterminal.com",
      "transports": [
        "streamable-http"
      ],
      "remoteUrl": "https://storage.googleapis.com/storage/mcp",
      "packages": [
        {
          "registry": "npm",
          "name": "@google-cloud/storage"
        },
        {
          "registry": "pypi",
          "name": "google-cloud-storage"
        }
      ],
      "auth": "oauth",
      "authNotes": "Google OAuth 2.0 access tokens for user or service-account identities, scoped by IAM roles on the project, bucket or managed folder, with HMAC keys for the XML API's S3-style access, and V4 signed URLs that carry a signature, not the secret. The MCP server uses the same Google authentication, with its own IAM permissions per MCP method.",
      "pricing": "usage",
      "pricingNotes": "Pay per GB-month stored, per 1,000 operations and per GB of egress, by location and class. Standard in a single region is $0.005 per 1,000 Class A and $0.0004 per 1,000 Class B operations; a dual-region example bills $0.022 per GB-month. Always Free gives 5 GB-months of Standard storage, 5,000 Class A and 50,000 Class B operations in three US regions. Failed 4xx and 5xx operations are generally not charged.",
      "priceSummary": "$0.005 / 1k req",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 on Cloud Storage or its pricing page (checked 2026-11-06).",
        "endpoints": []
      },
      "toolCount": 9,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://docs.cloud.google.com/storage/docs/apis",
      "openapi": "https://storage.googleapis.com/$discovery/rest?version=v1",
      "capabilities": [
        "storage.object",
        "storage.presigned",
        "storage.s3",
        "storage.share"
      ],
      "tags": [
        "hosted",
        "usage",
        "free-tier",
        "mcp",
        "remote-mcp",
        "oauth",
        "iam",
        "google-cloud",
        "object-storage",
        "signed-urls",
        "sla",
        "grpc"
      ],
      "lastRelease": "2026-11-04",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 76.7,
        "grade": "BB",
        "agentReady": true,
        "rank": 41,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 4,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 85,
          "maintenance": 88,
          "payments": 30,
          "reliability": 80,
          "schema": 81,
          "security": 85,
          "transparency": 85
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "IAM per bucket and MCP method, signed URLs, preconditions for safe retries and a 99.95 per cent multi-region SLA make it a well-governed object store for agents. The nine-tool MCP server has no read-only or destructive annotations, reads stop at 8 MiB, and a person must set up a project and billing first.",
        "bestFor": "Agents on Google Cloud that store and share files and datasets. amazon-s3, azure-blob-storage and cloudflare-r2 are the closest listings; teams outside Google Cloud with S3 tooling may prefer S3-compatible stores.",
        "strengths": [
          "Generally available MCP server since 20 April 2026, with IAM permissions per MCP method",
          "Preconditions and a documented retry strategy make writes safe to retry",
          "SLA of 99.95 per cent a month for multi-region Standard storage",
          "Signed URLs share objects without sharing credentials",
          "Cloud Audit Logs cover admin and data access"
        ],
        "weaknesses": [
          "MCP tools carry no read-only or destructive annotations and deletes need no confirmation",
          "read_object stops at 8 MiB through MCP",
          "A high-severity multi-product incident affected Cloud Storage on 20 August 2026",
          "Project and billing setup needs a person in a browser"
        ],
        "agentNotes": [
          "Grant the agent's service account only Storage Object Viewer or Creator on the bucket it needs",
          "Send ifGenerationMatch on writes and deletes so a retry can't overwrite a newer object",
          "Use a V4 signed URL to share an object rather than changing bucket access",
          "Read objects over 8 MiB through the JSON API with Range, not the MCP read_object tool",
          "Confirm with the user before delete_bucket or delete_object"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 76.7
          }
        ],
        "editorialScores": {
          "ergonomics": 85,
          "maintenance": 88,
          "payments": 30,
          "reliability": 80,
          "schema": 81,
          "security": 85,
          "transparency": 73
        },
        "provenanceScore": 97,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-06",
            "maintenance": "2026-11-06",
            "payments": "2026-11-06",
            "reliability": "2026-11-06",
            "schema": "2026-11-06",
            "security": "2026-11-06",
            "transparency": "2026-11-06"
          },
          "last": "2026-11-06",
          "oldest": "2026-11-06",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "pip install google-cloud-storage",
        "http": "curl -H \"Authorization: Bearer $(gcloud auth print-access-token)\" \"https://storage.googleapis.com/storage/v1/b?project=PROJECT_ID\""
      },
      "letme": {
        "capability": "https://letme.dev/storage.object",
        "tool": "https://letme.dev/google-cloud-storage"
      },
      "sameCompany": [
        "gemini-api",
        "vertex-ai",
        "gemini-embedding",
        "vertex-ai-tuning",
        "cloud-run-gpus",
        "google-model-armor",
        "google-imagen",
        "google-veo",
        "google-lyria",
        "google-speech-to-text",
        "google-cloud-tts",
        "gemini-live",
        "google-adk",
        "google-memory-bank",
        "google-secret-manager",
        "google-cloud-document-ai",
        "google-weather-api",
        "chrome-devtools-mcp",
        "google-maps-platform",
        "google-cloud-translation",
        "google-calendar-api",
        "firebase-cloud-messaging",
        "google-drive-api",
        "gemini-enterprise",
        "gemini-cli",
        "google-search-console",
        "google-ads-api",
        "google-forms",
        "google-sheets-api",
        "gmail-api",
        "google-people-api"
      ],
      "area": "everyday",
      "unitPrices": [
        {
          "item": "Class A operation, Standard, regional",
          "unit": "1k-requests",
          "usd": 0.005,
          "note": "Flat namespace; $0.0065 with hierarchical namespace"
        },
        {
          "item": "Class B operation, Standard, regional",
          "unit": "1k-requests",
          "usd": 0.0004,
          "note": "Flat namespace; $0.0005 with hierarchical namespace"
        },
        {
          "item": "Standard storage, dual-region example",
          "unit": "gb-month",
          "usd": 0.022,
          "note": "Per the pricing page's Iowa and Oregon dual-region example; regional rates vary by location"
        }
      ],
      "provenance": {
        "legalEntity": "Google LLC (Google Cloud EMEA Limited and other regional entities by billing address)",
        "domain": "google.com",
        "domainRegistered": "1997-09-15",
        "endpointOnVendorDomain": true,
        "terms": "https://cloud.google.com/terms",
        "privacy": "https://policies.google.com/privacy",
        "statusPage": "https://status.cloud.google.com",
        "changelog": "https://docs.cloud.google.com/storage/docs/release-notes",
        "securityTxt": "valid",
        "checked": "2026-11-06",
        "notes": [
          "Legal entity, terms, privacy and security.txt follow the Google Cloud provenance in data/tools/google-secret-manager.json (checked 1 November 2026); not re-read for this listing.",
          "status.cloud.google.com/robots.txt allows all; its incidents.json was read on 6 November 2026.",
          "The API lives at storage.googleapis.com and the docs at docs.cloud.google.com, both Google domains."
        ],
        "score": 97
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/google-cloud-storage.json",
      "live": {
        "slug": "google-cloud-storage",
        "probe": {
          "target": "https://storage.googleapis.com/storage/mcp",
          "method": "get",
          "lastAt": "2026-11-07T18:20:27.576703196Z",
          "lastOk": true,
          "lastStatus": 405,
          "lastMs": 120,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 44,
          "p95ms24h": 120,
          "samples24h": 200,
          "samples30d": 200,
          "days": [
            {
              "date": "2026-11-06",
              "probes": 13,
              "ok": 13
            },
            {
              "date": "2026-11-07",
              "probes": 187,
              "ok": 187
            }
          ]
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@google-cloud/storage",
            "version": "8.4.0",
            "seenAt": "2026-11-06T23:29:10.718971869Z"
          },
          {
            "registry": "pypi",
            "name": "google-cloud-storage",
            "version": "3.17.1",
            "released": "2026-10-15",
            "seenAt": "2026-11-06T23:29:11.680918026Z"
          }
        ],
        "npmWeekly": 26901222,
        "pypiWeekly": 39461441,
        "securityTxt": {
          "url": "https://google.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2030-04-01T00:00:00z",
          "checkedAt": "2026-11-07T16:01:22.068349931Z"
        },
        "pages": [
          {
            "url": "https://docs.cloud.google.com/storage/docs/release-notes",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:05:53.84257971Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "2d3b4b4b1622"
          }
        ],
        "updatedAt": "2026-11-07T18:20:27.576703196Z"
      }
    },
    "answer": "Google Cloud Storage scores 76.7 (BB) on agent readiness against OneDrive and SharePoint files (Microsoft Graph)'s 62.1 (B), and leads in 6 of 7 scored categories. OneDrive and SharePoint files (Microsoft Graph) leads on schema \u0026 documentation.",
    "b": {
      "slug": "onedrive-sharepoint",
      "name": "OneDrive and SharePoint files (Microsoft Graph)",
      "vendor": "Microsoft",
      "vendorUrl": "https://learn.microsoft.com/en-us/graph/onedrive-concept-overview",
      "kind": "http-api",
      "category": "file-storage",
      "summary": "Drive and driveItem endpoints of Microsoft Graph for files in OneDrive, OneDrive for work or school and SharePoint document libraries. Calls upload, download, list, search, share by link or invitation, and delete files and folders.",
      "url": "https://www.anchorterminal.com/tools/onedrive-sharepoint",
      "markdownUrl": "https://www.anchorterminal.com/tools/onedrive-sharepoint.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/onedrive-sharepoint.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/onedrive-sharepoint.json",
      "dns": "onedrive-sharepoint.grade.anchorterminal.com",
      "repo": "https://github.com/microsoftgraph/msgraph-sdk-python",
      "license": "MIT (SDKs)",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://graph.microsoft.com/v1.0",
      "packages": [
        {
          "registry": "npm",
          "name": "@microsoft/microsoft-graph-client"
        },
        {
          "registry": "pypi",
          "name": "msgraph-sdk"
        }
      ],
      "auth": "oauth",
      "authNotes": "OAuth 2.0 tokens from Microsoft Entra ID, after a person registers an app. Registration is self-serve, with no partner or sales approval. Delegated permissions run from Files.Read to Files.ReadWrite.All and work for personal Microsoft accounts and work or school accounts. Application permissions (Files.Read.All, Files.ReadWrite.All, Sites.ReadWrite.All) need an administrator's consent. Selected scopes limit an app to chosen sites, lists, folders or files.",
      "pricing": "byo-plan",
      "pricingNotes": "File calls carry no per-call charge. Microsoft's list of metered Graph APIs names only `assignSensitivityLabel`, at $0.00185 a call (https://learn.microsoft.com/en-us/graph/metered-api-list). Storage comes from the account's own OneDrive or Microsoft 365 plan, 1 TB a user on the Business and E3 or E5 plans per the service description. The OneDrive plan price page refused our reader as an automated process on 2026-10-09 and again on 2026-11-02, so plan prices and the free personal allowance are unchecked. A free Microsoft 365 E5 developer sandbox is limited to Visual Studio subscribers and other qualifying members (https://learn.microsoft.com/en-us/office/developer-program/microsoft-365-developer-program-faq).",
      "priceSummary": "Your plan",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the files documentation or the metered API list (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 633,
        "npmWeekly": 2882852,
        "pypiWeekly": 1578201,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://learn.microsoft.com/en-us/graph/api/resources/onedrive",
      "openapi": "https://raw.githubusercontent.com/microsoftgraph/msgraph-metadata/master/openapi/v1.0/openapi.yaml",
      "capabilities": [
        "storage.drive",
        "storage.share",
        "storage.presigned"
      ],
      "tags": [
        "hosted",
        "official",
        "oauth",
        "openapi",
        "typescript",
        "python",
        "enterprise"
      ],
      "lastRelease": "2026-10-22",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 62.1,
        "grade": "B",
        "agentReady": false,
        "rank": 572,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 12,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 84,
          "maintenance": 76,
          "payments": 20,
          "reliability": 74,
          "schema": 89,
          "security": 71,
          "transparency": 76
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-02"
        },
        "negative": -9,
        "negativeNotes": [
          "2026-06-16 and 2026-10-15: two security fixes merged into msgraph-sdk-javascript, a token leak through URL userinfo host confusion (5438ae9, 16 June) and stripping the Cookie header on cross-origin redirects (38867d1, written 13 October and merged through pull request 2007 on 15 October). The repository's package.json says 3.0.8, but no 3.0.8 tag exists on 2 November 2026 and the newest tag is 3.0.7 from September 2023, with no advisory. A fix to the listing's own package in no release takes -3, the two folded into one term, as on outlook-mail-graph (https://github.com/microsoftgraph/msgraph-sdk-javascript/commit/38867d1, https://github.com/microsoftgraph/msgraph-sdk-javascript/commit/5438ae90f50ef15d3656f0cf9c5485deee351f19)",
          "2025-11-20: CVE-2025-59245, SharePoint Online elevation of privilege (deserialisation of untrusted data, CVSS 9.8, Critical, no sign-in needed), fully mitigated by Microsoft, not disclosed or exploited. -2 (https://msrc.microsoft.com/update-guide/vulnerability/CVE-2025-59245)",
          "2026-06-04: CVE-2026-47655, Microsoft Graph information disclosure (CVSS 6.5, Critical by MSRC, needs a signed-in attacker), mitigated by Microsoft. -1 (https://msrc.microsoft.com/update-guide/vulnerability/CVE-2026-47655)",
          "2026-07-23: CVE-2026-49159, Microsoft Graph information disclosure (CVSS 6.5, Critical by MSRC, needs a signed-in attacker), mitigated by Microsoft. -1 (https://msrc.microsoft.com/update-guide/vulnerability/CVE-2026-49159)",
          "2026-08-06: CVE-2026-70332, SharePoint Online spoofing (cross-site scripting, CVSS 9.6, Critical, no sign-in needed, user interaction required), fully mitigated by Microsoft, not disclosed or exploited. -2 (https://msrc.microsoft.com/update-guide/vulnerability/CVE-2026-70332)"
        ],
        "verdict": "One REST surface covers personal OneDrive, work OneDrive and SharePoint libraries, with resumable uploads, sharing links that take an expiry date and per-file Selected permissions. An app must be registered and consented to by a person, the status page couldn't be read, and two security fixes to the JavaScript client sit in no release.",
        "bestFor": "Agents working on files that already live in a Microsoft 365 tenant or a personal OneDrive, where sharing has to follow the tenant's own policy.",
        "strengths": [
          "Upload sessions resume after a dropped connection, report `nextExpectedRanges`, and accept `If-Match` and `@microsoft.graph.conflictBehavior` (fail by default)",
          "`createLink` takes `expirationDateTime` and a scope of `anonymous`, `organization` or `users`, and returns the existing link when one of that type exists",
          "Selected scopes limit an application to chosen sites, lists, folders or files, each with a read, write, owner or fullcontrol role",
          "SharePoint publishes throttling numbers, with 1,250 to 6,250 resource units a minute per app per tenant and a stated cost of 1, 2 or 5 units a request",
          "DELETE moves an item to the recycle bin, and permanent removal is a separate `permanentDelete` call"
        ],
        "weaknesses": [
          "Link and scope types are plain strings in the OpenAPI, and path addressing such as `/root:/folder/file.txt:` is absent from it",
          "Password-protected links and `embed` links work only on personal OneDrive, and an administrator can switch anonymous links off",
          "The status host at status.cloud.microsoft refuses crawlers, and on 9 October showed nothing without JavaScript, so no incident history could be read",
          "The npm client is 3.0.7 from September 2023. Token-leak and Cookie-header fixes merged on 16 June and 15 October 2026 aren't in any release",
          "No injection guidance was found in the files reference pages, though file names and contents written by other people reach the caller"
        ],
        "agentNotes": [
          "Use PUT `/content` only up to 250 MB. Above 10 MiB Microsoft advises `createUploadSession`, with fragments in multiples of 320 KiB and under 60 MiB each",
          "Send the bearer token on the `createUploadSession` POST only. The PUT calls to `uploadUrl` can return 401 if an `Authorization` header is included",
          "Set `expirationDateTime` and `scope` on `createLink`. Without a scope the tenant's default link type is created, which may be wider than intended",
          "Follow the 302 from GET `/content` straight away. Pre-authenticated download URLs can expire within minutes and need no `Authorization` header",
          "Wait for `Retry-After` on 429 and 503. Throttled requests still count against the limits, and continued overuse can get the app blocked"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 3.3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 62.1
          }
        ],
        "editorialScores": {
          "ergonomics": 84,
          "maintenance": 76,
          "payments": 20,
          "reliability": 74,
          "schema": 89,
          "security": 71,
          "transparency": 65
        },
        "provenanceScore": 87,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-02",
            "maintenance": "2026-11-02",
            "payments": "2026-11-02",
            "reliability": "2026-11-02",
            "schema": "2026-11-02",
            "security": "2026-11-02",
            "transparency": "2026-11-02"
          },
          "last": "2026-11-02",
          "lastMoved": "2026-11-02",
          "oldest": "2026-11-02",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl \"https://graph.microsoft.com/v1.0/me/drive/root/children?\\$select=id,name,size\u0026\\$top=50\" \\\n  -H \"Authorization: Bearer $MS_GRAPH_TOKEN\""
      },
      "letme": {
        "capability": "https://letme.dev/storage.drive",
        "tool": "https://letme.dev/onedrive-sharepoint"
      },
      "sameCompany": [
        "azure-openai",
        "azure-foundry-fine-tuning",
        "azure-ai-content-safety",
        "azure-speech-to-text",
        "azure-text-to-speech",
        "microsoft-agent-framework",
        "microsoft-execution-containers",
        "microsoft-entra-agent-id",
        "azure-key-vault",
        "bing-grounding",
        "azure-document-intelligence",
        "azure-devops-mcp",
        "microsoft-learn-mcp",
        "tokeneconomizer",
        "playwright-mcp",
        "azure-mcp",
        "azure-maps",
        "azure-translator",
        "microsoft-graph-calendar",
        "azure-blob-storage",
        "microsoft-teams",
        "dynamics-365-sales",
        "copilot-studio-mcp",
        "power-automate",
        "foundry-local",
        "microsoft-decision-1",
        "microsoft-advertising-api",
        "microsoft-excel-graph",
        "outlook-mail-graph",
        "microsoft-graph-people",
        "mage-vl-cowork"
      ],
      "area": "everyday",
      "provenance": {
        "legalEntity": "Microsoft Corporation",
        "domain": "microsoft.com",
        "domainRegistered": "1991-05-02",
        "domainNote": "The endpoint is on graph.microsoft.com. Upload and download URLs are issued on other Microsoft hosts. microsoft.com publishes a security.txt, but it passed its Expires date on 2026-09-23 and still carried it on 2026-11-02.",
        "endpointOnVendorDomain": true,
        "terms": "https://learn.microsoft.com/en-us/legal/microsoft-apis/terms-of-use",
        "privacy": "https://privacy.microsoft.com/en-us/privacystatement",
        "statusPage": "https://status.cloud.microsoft",
        "changelog": "https://developer.microsoft.com/en-us/graph/changelog",
        "securityTxt": "expired",
        "checked": "2026-11-02",
        "notes": [
          "www.microsoft.com/.well-known/security.txt still carries Expires 2026-09-23T16:00:00.000Z when read on 2026-11-02.",
          "status.cloud.microsoft answered robots.txt with an empty 401 on 1 November 2026, so it is treated as blocked and wasn't read; on 9 October it needed JavaScript to show anything.",
          "The Microsoft APIs terms of use name Microsoft Corporation and were last updated in October 2025.",
          "The Microsoft privacy statement was last updated in September 2026 (per the 9 October check).",
          "RDAP for microsoft.com gives a registration date of 1991-05-02.",
          "The Graph changelog feed's newest entry is dated 6 October 2026. The What's new page was updated on 31 October 2026."
        ],
        "score": 87
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/onedrive-sharepoint.json",
      "live": {
        "slug": "onedrive-sharepoint",
        "probe": {
          "target": "https://graph.microsoft.com/v1.0",
          "method": "get",
          "lastAt": "2026-11-07T18:20:43.504340286Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 6,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 5,
          "p95ms24h": 32,
          "samples24h": 239,
          "samples30d": 7289,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 169,
              "ok": 169
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-15",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-16",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-17",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-18",
              "probes": 256,
              "ok": 256
            },
            {
              "date": "2026-10-19",
              "probes": 255,
              "ok": 255
            },
            {
              "date": "2026-10-20",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-21",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-22",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-23",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-24",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-25",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-26",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-27",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-28",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-29",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-30",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-31",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-11-01",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-11-02",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-11-03",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-11-04",
              "probes": 246,
              "ok": 246
            },
            {
              "date": "2026-11-05",
              "probes": 185,
              "ok": 185
            },
            {
              "date": "2026-11-06",
              "probes": 241,
              "ok": 241
            },
            {
              "date": "2026-11-07",
              "probes": 187,
              "ok": 187
            }
          ]
        },
        "versions": [
          {
            "registry": "github",
            "name": "microsoftgraph/msgraph-sdk-python",
            "version": "v1.65.0",
            "released": "2026-10-22",
            "seenAt": "2026-11-06T23:51:03.547682274Z"
          },
          {
            "registry": "npm",
            "name": "@microsoft/microsoft-graph-client",
            "version": "3.0.7",
            "seenAt": "2026-11-06T23:51:02.954844533Z"
          },
          {
            "registry": "pypi",
            "name": "msgraph-sdk",
            "version": "1.65.0",
            "released": "2026-10-22",
            "seenAt": "2026-11-06T23:51:03.405705796Z"
          }
        ],
        "githubStars": 633,
        "npmWeekly": 3242649,
        "pypiWeekly": 1661789,
        "securityTxt": {
          "url": "https://microsoft.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-10-27T16:00:00.000Z",
          "checkedAt": "2026-11-07T16:02:01.196666056Z"
        },
        "domain": {
          "domain": "microsoft.com",
          "registered": "1991-05-02",
          "source": "https://rdap.verisign.com/com/v1/domain/microsoft.com",
          "checkedAt": "2026-11-01T14:14:19.336136409Z"
        },
        "pages": [
          {
            "url": "https://developer.microsoft.com/en-us/graph/changelog/rss",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-11-07T14:03:15.98385383Z",
            "changedAt": "0001-01-01T00:00:00Z"
          }
        ],
        "github": {
          "repo": "microsoftgraph/msgraph-sdk-python",
          "checkedAt": "2026-11-02T09:06:57.417668393Z",
          "stars": 634,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-11-02T05:41:43Z",
          "openIssues": 94,
          "openPRs": 30,
          "issuesOpened90d": 4,
          "issuesClosed90d": 0,
          "prsMerged90d": 31,
          "ci": {
            "branch": "main",
            "runs": 50,
            "success": 50,
            "failure": 0,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-10-30T22:29:25Z"
          },
          "replies": {
            "sampled": 25,
            "unanswered": 18,
            "medianDays": 16.9
          }
        },
        "updatedAt": "2026-11-07T18:20:43.504340286Z"
      }
    },
    "edges": [
      {
        "by": 14,
        "category": "security",
        "leads": "google-cloud-storage",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "IAM roles on project, bucket and managed folder, V4 signed URLs, and an IAM permission per MCP method (mcp.tools.call plus the storage permission, such as storage.objects.delete for delete_object) (30). Read-only roles such as Storage Object Viewer, grantable down to a managed folder, soft delete with a pausable hard-deletion window and retention locks, but no confirmation step on delete_bucket or delete_object (17). read_object returns stored content to the model with no untrusted-content guidance on the MCP page (5). Cloud Audit Logs with Admin Activity and Data Access entries (15). google.com security.txt is valid to 2030-04-01 with a VRP policy link, per the Secret Manager listing's 1 November check, and Google Cloud publishes security bulletins; Cloud Storage's place in the SOC 2 scope wasn't read today (18). 30 + 17 + 5 + 15 + 18 = 85.",
          "b": "OAuth 2.0 through Microsoft Entra ID with delegated and application permissions from Files.Read to Sites.ReadWrite.All, revocable consent, and Selected scopes that hold an app to chosen sites, lists, folders or files. Download and upload URLs are pre-authenticated and short-lived, which we read as designed capability links and not as a credential in a URL (30). Files.Read for reading, Selected scopes with read, write, owner and fullcontrol roles, DELETE to the recycle bin and anonymous links that an administrator can disable. Nothing asks for confirmation before `permanentDelete` or an anonymous link (17). File names and contents written by other people reach the caller, and no injection guidance was found in the files reference pages (0). Graph activity logs record app, user, request URI and scopes for every request, but need Entra ID P1 or P2 and an Azure log destination (12). The Microsoft 365 bounty names SharePoint Online and OneDrive at $1,250 to $19,500 (per the 9 October check), with a coordinated disclosure policy and an Office 365 SOC 2 Type 2 report, and MSRC publishes CVEs for SharePoint Online and Microsoft Graph, counted under negative events. microsoft.com's security.txt passed its Expires date on 23 September 2026 and still carries it on 2 November, and two security fixes in the JavaScript client (16 June and 15 October 2026) sit unreleased with no advisory. Read as outlook-mail-graph and microsoft-teams on the same evidence (12, was 14). 30+17+0+12+12 = 71."
        },
        "scores": {
          "a": 85,
          "b": 71
        }
      },
      {
        "by": 12,
        "category": "maintenance",
        "leads": "google-cloud-storage",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Release notes on 4 November 2026 (30). Entries on 30 October, 13 October, 30 September, 10 September and 3 September (20). A closed service with dated release notes and paid support; issue trackers for the client libraries are public (15). Official client libraries in many languages (15). Libraries ship with end-to-end checksums by default since 30 September (8). 30 + 20 + 15 + 15 + 8 = 88.",
          "b": "msgraph-sdk-python v1.65.0 on 22 October 2026 (30). Five Python SDK tags since 4 August (v1.61.0 on 5 August, v1.62.0 on 2 September, v1.63.0 on 16 September, v1.64.0 on 6 October and v1.65.0), counted half, plus v1.0 Files entries in the changelog feed on 10 and 12 August and 15, 21 and 23 September 2026, and What's new entries for Files in September and October 2026 (20). A public changelog, now dated to 6 October 2026, a What's new page updated on 31 October 2026 and SDK issue trackers. Security fixes merged into the JavaScript client on 16 June and 15 October 2026 still haven't reached a release, and an issue about drive content returning None on the Python SDK had no reply on 9 October (per the 9 October check, not re-read on 2 November) (10, was 9 when the feed stopped at 3 August). Current SDKs in most languages, with the JavaScript client the exception at 3.0.7 (10). Active tagging on the Python repository, none of it reaching the JavaScript package (6). 30+20+10+10+6 = 76."
        },
        "scores": {
          "a": 88,
          "b": 76
        }
      },
      {
        "by": 10,
        "category": "payments",
        "leads": "google-cloud-storage",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No x402, MPP or L402 (0). Per-operation and per-GB prices public without login, though the regional storage table draws by script (20). Always Free covers 5 GB-months and small operation counts in three US regions, but a Google Cloud billing account is needed; whether a card is required wasn't confirmed today (10). A person creates the project and billing account in a browser (0). 0 + 20 + 10 + 0 = 30.",
          "b": "No x402, MPP or L402 (0). File calls aren't on Microsoft's metered API list, whose one entry is `assignSensitivityLabel` at $0.00185 a call, but storage comes from a OneDrive or Microsoft 365 plan and the plan price page refused our reader today (10). The reference pages list delegated permissions for personal Microsoft accounts, so no Microsoft 365 licence is needed to call the API, but we couldn't read the size of the free personal allowance, and the free E5 developer sandbox is limited to Visual Studio subscribers and other qualifying members (10). A person registers an app in Entra and signs in to consent (0)."
        },
        "scores": {
          "a": 30,
          "b": 20
        }
      },
      {
        "by": 9,
        "category": "transparency",
        "leads": "google-cloud-storage",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "Closed service under the Google Cloud terms; client libraries are Apache-2.0 (18). Google's privacy policy, the Cloud Data Processing Addendum and a sub-processor list last modified 19 October 2026 apply, per the Secret Manager listing's 1 November check (22). Dated notices in release notes and a deprecated read_text MCP tool that names its replacement; Google Cloud's deprecation policy wasn't re-read today (15). Sub-processors are listed with locations, and each bucket is created in a chosen location (18). 18 + 22 + 15 + 18 = 73.",
          "b": "Closed service under the Microsoft APIs terms of use, last updated October 2025, with MIT SDKs (15). Microsoft's data handling page for Microsoft 365 gives at most 30 days after active deletion and 180 days after a subscription ends for customer content, the SharePoint deletion page gives 93 days in the recycle bin and 14 further days of backups, and the privacy statement was updated in September 2026. We didn't read the data protection addendum (22). The Graph policy is at least 24 months' notice before a generally available API or version is removed, while the API terms reserve the right to change or discontinue any API with or without notice (18). Data residency for Microsoft 365 is documented by tenant geography. The sub-processor list sits on the Service Trust Portal, which we didn't read (10)."
        },
        "scores": {
          "a": 85,
          "b": 76
        }
      },
      {
        "by": 8,
        "category": "schema",
        "leads": "onedrive-sharepoint",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "The JSON API is described by a public Google API Discovery document, storage v1 revision 20261103 (25). docs.cloud.google.com/llms.txt and /storage/llms.txt return 404 (0). The reference explains each method and the docs say when to use XML, JSON or gRPC and that gsutil is legacy (14). Typed resources with enums for storage classes and predefined ACLs (14). Samples in every client library and an error reference with HTTP codes and reasons (13). API version v1 and dated release notes, the latest on 4 November 2026 (15). 25 + 0 + 14 + 14 + 13 + 15 = 81.",
          "b": "OpenAPI 3.0.4 for all of Graph v1.0 in microsoftgraph/msgraph-metadata, with 1,516 paths under `/drives`, 172 of them outside the workbook API (25). learn.microsoft.com answers 404 for llms.txt, but every page we asked for with `Accept: text/markdown` came back as Markdown (10). Reference pages state the purpose of each call, list permissions from least to most privileged and say which options work only on personal OneDrive. The upload session page gives Sites.ReadWrite.All as the least privileged application permission where the small-upload page gives Files.ReadWrite.All, and the overview page is dated March 2024 (16). `createLink` declares `type` and `scope` as plain strings with no enumeration, `conflictBehavior` is an annotation outside the schema, path addressing is absent from the OpenAPI, and `retainInheritedPermissions` defaults to false there and to true on the reference page (9). An HTTP example and SDK snippets on each page, a status code table, and upload-specific handling for 404, 409 and 416 (14). v1.0 and beta, a dated changelog and a monthly What's new page (15)."
        },
        "scores": {
          "a": 81,
          "b": 89
        }
      },
      {
        "by": 6,
        "category": "reliability",
        "leads": "google-cloud-storage",
        "name": "Reliability",
        "reasons": {
          "a": "Google Cloud's status dashboard with a per-product incident feed (20). In the 90 days from 8 August, Cloud Storage appears in a high-severity incident on 20 August across 27 products (about 3 hours 40 minutes of timeouts and errors), a medium incident on 8 to 9 October with elevated upload and write errors, and a medium regional incident in europe-west2 on 20 October. One major outage (10). The request-rate guide gives numbers, no ramp-up needed below 1,000 writes or 5,000 reads a second per bucket, with gradual ramping above (15). The retry strategy page lists retryable responses, idempotent operations and preconditions that make writes safe to retry, and the client libraries back off exponentially (15). SLA with monthly uptime of 99.95 per cent for multi-region Standard and 99.9 per cent regional (10). Generally available, and the MCP server since 20 April 2026 (10). 20 + 10 + 15 + 15 + 10 + 10 = 80.",
          "b": "Graded on the v1.0 REST API. A public Microsoft service health page at status.cloud.microsoft (20), per the 9 October check. Its robots.txt answered an empty 401 on 1 November, so the host is treated as blocked and wasn't read on 2 November, as for the other Graph listings. No readable components or incident history (5). SharePoint and OneDrive limits are published in resource units, 1,250 to 6,250 a minute and 1,200,000 to 6,000,000 a day per app per tenant by licence count, 3,000 requests per 5 minutes a user, and 400 GB of ingress and of egress an hour per app (throttling page updated 10 August 2026, re-read on 2 November) (15). 429 and 503 responses carry `Retry-After`, upload sessions resume from `nextExpectedRanges` with backoff advice for 5xx errors, and `If-Match` and `conflictBehavior` guard overwrites. There is no idempotency key on `invite` or folder creation (14 of 15). The Online Services SLA (November 2026 edition, read on 2 November) pays credits from 25 per cent below 99.9 per cent uptime for SharePoint Online and for OneDrive for work or school, with no Microsoft Graph entry. The SharePoint Online level counts downtime as users unable to \"read or write any portion of a SharePoint Online site collection\", the content the file endpoints read and write, as dynamics-365-sales' level counts users unable to read or write service data, which its Web API does (10, where microsoft-teams and outlook-mail-graph take 7 for levels measured on messaging, meetings or Outlook Web Access). The file endpoints are generally available on v1.0 (10). 20+5+15+14+10+10 = 74."
        },
        "scores": {
          "a": 80,
          "b": 74
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Google Cloud",
        "b": "Microsoft",
        "name": "Vendor"
      },
      {
        "a": "https://storage.googleapis.com/storage/mcp",
        "b": "https://graph.microsoft.com/v1.0",
        "name": "Hosted endpoint"
      },
      {
        "a": "Streamable HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "OAuth",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Your plan",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "none",
        "b": "MIT (SDKs)",
        "name": "Licence"
      },
      {
        "a": "9",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-11-04",
        "b": "2026-10-22",
        "name": "Last release"
      },
      {
        "a": "2026-09-02",
        "b": "2025-10-01",
        "name": "Terms last updated"
      },
      {
        "a": "2026-10-01",
        "b": "2026-09-01",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "633 stars, 2.9M npm/wk, 1.6M PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "3.3/5 (4)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Google Cloud Storage scores 76.7 (BB) on agent readiness against OneDrive and SharePoint files (Microsoft Graph)'s 62.1 (B), and leads in 6 of 7 scored categories. OneDrive and SharePoint files (Microsoft Graph) leads on schema \u0026 documentation.",
        "question": "Which is better for AI agents, Google Cloud Storage or OneDrive and SharePoint files (Microsoft Graph)?"
      },
      {
        "answer": "Both use an OAuth sign-in.",
        "question": "Do Google Cloud Storage and OneDrive and SharePoint files (Microsoft Graph) need an API key?"
      },
      {
        "answer": "Yes. Google Cloud Storage has a hosted endpoint at https://storage.googleapis.com/storage/mcp and OneDrive and SharePoint files (Microsoft Graph) at https://graph.microsoft.com/v1.0.",
        "question": "Can an agent call Google Cloud Storage and OneDrive and SharePoint files (Microsoft Graph) without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 80 against 74",
          "Security \u0026 auth, 85 against 71",
          "Payments \u0026 pricing, 30 against 20",
          "Maintenance \u0026 community, 88 against 76",
          "Transparency \u0026 trust, 85 against 76"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "No incidents deducted, where OneDrive and SharePoint files (Microsoft Graph) loses 9 points for them"
        ],
        "goodFor": "Agents on Google Cloud that store and share files and datasets. amazon-s3, azure-blob-storage and cloudflare-r2 are the closest listings; teams outside Google Cloud with S3 tooling may prefer S3-compatible stores.",
        "slug": "google-cloud-storage",
        "watchFor": "MCP tools carry no read-only or destructive annotations and deletes need no confirmation"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 89 against 81"
        ],
        "also": null,
        "goodFor": "Agents working on files that already live in a Microsoft 365 tenant or a personal OneDrive, where sharing has to follow the tenant's own policy.",
        "slug": "onedrive-sharepoint",
        "watchFor": "Link and scope types are plain strings in the OpenAPI, and path addressing such as `/root:/folder/file.txt:` is absent from it"
      }
    ],
    "history": {
      "google-cloud-storage": null,
      "onedrive-sharepoint": [
        {
          "causes": [
            "security",
            "evidence",
            "correction"
          ],
          "date": "2026-11-02",
          "delta": -3.3,
          "from": 65.4,
          "fromGrade": "B",
          "to": 62.1,
          "toGrade": "B"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.1,
          "from": 65.3,
          "fromGrade": "B",
          "to": 65.4,
          "toGrade": "B"
        }
      ]
    },
    "job": {
      "capability": "storage.presigned",
      "name": "Presigned uploads"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/amazon-s3-vs-onedrive-sharepoint.json",
        "title": "Amazon S3 vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": "https://www.anchorterminal.com/compare/amazon-s3-vs-onedrive-sharepoint"
      },
      {
        "json": "https://www.anchorterminal.com/compare/backblaze-b2-vs-onedrive-sharepoint.json",
        "title": "Backblaze B2 vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": "https://www.anchorterminal.com/compare/backblaze-b2-vs-onedrive-sharepoint"
      },
      {
        "json": "https://www.anchorterminal.com/compare/box-api-vs-google-cloud-storage.json",
        "title": "Box API + MCP vs Google Cloud Storage",
        "url": "https://www.anchorterminal.com/compare/box-api-vs-google-cloud-storage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-r2-vs-onedrive-sharepoint.json",
        "title": "Cloudflare R2 vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": "https://www.anchorterminal.com/compare/cloudflare-r2-vs-onedrive-sharepoint"
      },
      {
        "json": "https://www.anchorterminal.com/compare/digitalocean-spaces-vs-onedrive-sharepoint.json",
        "title": "DigitalOcean Spaces vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": "https://www.anchorterminal.com/compare/digitalocean-spaces-vs-onedrive-sharepoint"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dropbox-api-vs-google-cloud-storage.json",
        "title": "Dropbox API + MCP vs Google Cloud Storage",
        "url": "https://www.anchorterminal.com/compare/dropbox-api-vs-google-cloud-storage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fast-io-vs-google-cloud-storage.json",
        "title": "Fastio vs Google Cloud Storage",
        "url": "https://www.anchorterminal.com/compare/fast-io-vs-google-cloud-storage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-cloud-storage-vs-google-drive-api.json",
        "title": "Google Cloud Storage vs Google Drive API + MCP",
        "url": "https://www.anchorterminal.com/compare/google-cloud-storage-vs-google-drive-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-cloud-storage-vs-onlyoffice-mcp.json",
        "title": "Google Cloud Storage vs ONLYOFFICE Apps MCP Server",
        "url": "https://www.anchorterminal.com/compare/google-cloud-storage-vs-onlyoffice-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/onedrive-sharepoint-vs-tigris.json",
        "title": "OneDrive and SharePoint files (Microsoft Graph) vs Tigris",
        "url": "https://www.anchorterminal.com/compare/onedrive-sharepoint-vs-tigris"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-s3-vs-google-cloud-storage.json",
        "title": "Amazon S3 vs Google Cloud Storage",
        "url": "https://www.anchorterminal.com/compare/amazon-s3-vs-google-cloud-storage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-blob-storage-vs-google-cloud-storage.json",
        "title": "Azure Blob Storage vs Google Cloud Storage",
        "url": "https://www.anchorterminal.com/compare/azure-blob-storage-vs-google-cloud-storage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/backblaze-b2-vs-google-cloud-storage.json",
        "title": "Backblaze B2 vs Google Cloud Storage",
        "url": "https://www.anchorterminal.com/compare/backblaze-b2-vs-google-cloud-storage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bunny-storage-vs-google-cloud-storage.json",
        "title": "Bunny Storage vs Google Cloud Storage",
        "url": "https://www.anchorterminal.com/compare/bunny-storage-vs-google-cloud-storage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-r2-vs-google-cloud-storage.json",
        "title": "Cloudflare R2 vs Google Cloud Storage",
        "url": "https://www.anchorterminal.com/compare/cloudflare-r2-vs-google-cloud-storage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/digitalocean-spaces-vs-google-cloud-storage.json",
        "title": "DigitalOcean Spaces vs Google Cloud Storage",
        "url": "https://www.anchorterminal.com/compare/digitalocean-spaces-vs-google-cloud-storage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-cloud-storage-vs-tigris.json",
        "title": "Google Cloud Storage vs Tigris",
        "url": "https://www.anchorterminal.com/compare/google-cloud-storage-vs-tigris"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-cloud-storage-vs-wasabi-hot-cloud-storage.json",
        "title": "Google Cloud Storage vs Wasabi Hot Cloud Storage",
        "url": "https://www.anchorterminal.com/compare/google-cloud-storage-vs-wasabi-hot-cloud-storage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/box-api-vs-onedrive-sharepoint.json",
        "title": "Box API + MCP vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": "https://www.anchorterminal.com/compare/box-api-vs-onedrive-sharepoint"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dropbox-api-vs-onedrive-sharepoint.json",
        "title": "Dropbox API + MCP vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": "https://www.anchorterminal.com/compare/dropbox-api-vs-onedrive-sharepoint"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fast-io-vs-onedrive-sharepoint.json",
        "title": "Fastio vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": "https://www.anchorterminal.com/compare/fast-io-vs-onedrive-sharepoint"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-drive-api-vs-onedrive-sharepoint.json",
        "title": "Google Drive API + MCP vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": "https://www.anchorterminal.com/compare/google-drive-api-vs-onedrive-sharepoint"
      },
      {
        "json": "https://www.anchorterminal.com/compare/onedrive-sharepoint-vs-onlyoffice-mcp.json",
        "title": "OneDrive and SharePoint files (Microsoft Graph) vs ONLYOFFICE Apps MCP Server",
        "url": "https://www.anchorterminal.com/compare/onedrive-sharepoint-vs-onlyoffice-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-blob-storage-vs-onedrive-sharepoint.json",
        "title": "Azure Blob Storage vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": "https://www.anchorterminal.com/compare/azure-blob-storage-vs-onedrive-sharepoint"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 6,
        "edge": "google-cloud-storage",
        "google-cloud-storage": 80,
        "key": "reliability",
        "name": "Reliability",
        "onedrive-sharepoint": 74,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 8,
        "edge": "onedrive-sharepoint",
        "google-cloud-storage": 81,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "onedrive-sharepoint": 89,
        "weight": 13
      },
      {
        "by": 1,
        "edge": "google-cloud-storage",
        "google-cloud-storage": 85,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "onedrive-sharepoint": 84,
        "weight": 13
      },
      {
        "by": 14,
        "edge": "google-cloud-storage",
        "google-cloud-storage": 85,
        "key": "security",
        "name": "Security \u0026 auth",
        "onedrive-sharepoint": 71,
        "weight": 14
      },
      {
        "by": 10,
        "edge": "google-cloud-storage",
        "google-cloud-storage": 30,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "onedrive-sharepoint": 20,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 12,
        "edge": "google-cloud-storage",
        "google-cloud-storage": 88,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "onedrive-sharepoint": 76,
        "weight": 7
      },
      {
        "by": 9,
        "edge": "google-cloud-storage",
        "google-cloud-storage": 85,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "onedrive-sharepoint": 76,
        "weight": 7
      }
    ],
    "summary": "Google Cloud Storage scores 76.7 (BB) on agent readiness against OneDrive and SharePoint files (Microsoft Graph)'s 62.1 (B), and leads in 6 of 7 scored categories. OneDrive and SharePoint files (Microsoft Graph) leads on schema \u0026 documentation. Both do presigned uploads.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "google-cloud-storage": "IAM per bucket and MCP method, signed URLs, preconditions for safe retries and a 99.95 per cent multi-region SLA make it a well-governed object store for agents. The nine-tool MCP server has no read-only or destructive annotations, reads stop at 8 MiB, and a person must set up a project and billing first.",
      "onedrive-sharepoint": "One REST surface covers personal OneDrive, work OneDrive and SharePoint libraries, with resumable uploads, sharing links that take an expiry date and per-file Selected permissions. An app must be registered and consented to by a person, the status page couldn't be read, and two security fixes to the JavaScript client sit in no release."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/google-cloud-storage-vs-onedrive-sharepoint",
    "json": "https://www.anchorterminal.com/compare/google-cloud-storage-vs-onedrive-sharepoint.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/google-cloud-storage-vs-onedrive-sharepoint.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/google-cloud-storage-vs-onedrive-sharepoint.min.md"
  },
  "markdown": "Google Cloud Storage scores 76.7 (BB) on agent readiness against OneDrive and SharePoint files (Microsoft Graph)'s 62.1 (B), and leads in 6 of 7 scored categories. OneDrive and SharePoint files (Microsoft Graph) leads on schema \u0026 documentation. Both do presigned uploads.\n\n- Google Cloud Storage: grade BB, 76.7/100, rank #41 of 1486. Markdown https://www.anchorterminal.com/tools/google-cloud-storage.md · JSON https://www.anchorterminal.com/api/v1/tools/google-cloud-storage.json\n- OneDrive and SharePoint files (Microsoft Graph): grade B, 62.1/100, rank #572 of 1486. Markdown https://www.anchorterminal.com/tools/onedrive-sharepoint.md · JSON https://www.anchorterminal.com/api/v1/tools/onedrive-sharepoint.json\n- Best file storage and sharing APIs for AI agents: https://www.anchorterminal.com/best/file-storage/index.md\n- All 104 storage comparisons: https://www.anchorterminal.com/compare/file-storage/index.md\n\n## Which one, for what\n\n### Google Cloud Storage (BB)\n\nGood for: Agents on Google Cloud that store and share files and datasets. amazon-s3, azure-blob-storage and cloudflare-r2 are the closest listings; teams outside Google Cloud with S3 tooling may prefer S3-compatible stores.\n\nAhead on:\n- Reliability, 80 against 74\n- Security \u0026 auth, 85 against 71\n- Payments \u0026 pricing, 30 against 20\n- Maintenance \u0026 community, 88 against 76\n- Transparency \u0026 trust, 85 against 76\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n- No incidents deducted, where OneDrive and SharePoint files (Microsoft Graph) loses 9 points for them\n\nWatch for: MCP tools carry no read-only or destructive annotations and deletes need no confirmation\n\n### OneDrive and SharePoint files (Microsoft Graph) (B)\n\nGood for: Agents working on files that already live in a Microsoft 365 tenant or a personal OneDrive, where sharing has to follow the tenant's own policy.\n\nAhead on:\n- Schema \u0026 documentation, 89 against 81\n\nWatch for: Link and scope types are plain strings in the OpenAPI, and path addressing such as `/root:/folder/file.txt:` is absent from it\n\n\n## Why the edge\n\n### Security \u0026 auth: Google Cloud Storage +14\n\n- Google Cloud Storage (85): IAM roles on project, bucket and managed folder, V4 signed URLs, and an IAM permission per MCP method (mcp.tools.call plus the storage permission, such as storage.objects.delete for delete_object) (30). Read-only roles such as Storage Object Viewer, grantable down to a managed folder, soft delete with a pausable hard-deletion window and retention locks, but no confirmation step on delete_bucket or delete_object (17). read_object returns stored content to the model with no untrusted-content guidance on the MCP page (5). Cloud Audit Logs with Admin Activity and Data Access entries (15). google.com security.txt is valid to 2030-04-01 with a VRP policy link, per the Secret Manager listing's 1 November check, and Google Cloud publishes security bulletins; Cloud Storage's place in the SOC 2 scope wasn't read today (18). 30 + 17 + 5 + 15 + 18 = 85.\n- OneDrive and SharePoint files (Microsoft Graph) (71): OAuth 2.0 through Microsoft Entra ID with delegated and application permissions from Files.Read to Sites.ReadWrite.All, revocable consent, and Selected scopes that hold an app to chosen sites, lists, folders or files. Download and upload URLs are pre-authenticated and short-lived, which we read as designed capability links and not as a credential in a URL (30). Files.Read for reading, Selected scopes with read, write, owner and fullcontrol roles, DELETE to the recycle bin and anonymous links that an administrator can disable. Nothing asks for confirmation before `permanentDelete` or an anonymous link (17). File names and contents written by other people reach the caller, and no injection guidance was found in the files reference pages (0). Graph activity logs record app, user, request URI and scopes for every request, but need Entra ID P1 or P2 and an Azure log destination (12). The Microsoft 365 bounty names SharePoint Online and OneDrive at $1,250 to $19,500 (per the 9 October check), with a coordinated disclosure policy and an Office 365 SOC 2 Type 2 report, and MSRC publishes CVEs for SharePoint Online and Microsoft Graph, counted under negative events. microsoft.com's security.txt passed its Expires date on 23 September 2026 and still carries it on 2 November, and two security fixes in the JavaScript client (16 June and 15 October 2026) sit unreleased with no advisory. Read as outlook-mail-graph and microsoft-teams on the same evidence (12, was 14). 30+17+0+12+12 = 71.\n\n### Maintenance \u0026 community: Google Cloud Storage +12\n\n- Google Cloud Storage (88): Release notes on 4 November 2026 (30). Entries on 30 October, 13 October, 30 September, 10 September and 3 September (20). A closed service with dated release notes and paid support; issue trackers for the client libraries are public (15). Official client libraries in many languages (15). Libraries ship with end-to-end checksums by default since 30 September (8). 30 + 20 + 15 + 15 + 8 = 88.\n- OneDrive and SharePoint files (Microsoft Graph) (76): msgraph-sdk-python v1.65.0 on 22 October 2026 (30). Five Python SDK tags since 4 August (v1.61.0 on 5 August, v1.62.0 on 2 September, v1.63.0 on 16 September, v1.64.0 on 6 October and v1.65.0), counted half, plus v1.0 Files entries in the changelog feed on 10 and 12 August and 15, 21 and 23 September 2026, and What's new entries for Files in September and October 2026 (20). A public changelog, now dated to 6 October 2026, a What's new page updated on 31 October 2026 and SDK issue trackers. Security fixes merged into the JavaScript client on 16 June and 15 October 2026 still haven't reached a release, and an issue about drive content returning None on the Python SDK had no reply on 9 October (per the 9 October check, not re-read on 2 November) (10, was 9 when the feed stopped at 3 August). Current SDKs in most languages, with the JavaScript client the exception at 3.0.7 (10). Active tagging on the Python repository, none of it reaching the JavaScript package (6). 30+20+10+10+6 = 76.\n\n### Payments \u0026 pricing: Google Cloud Storage +10\n\n- Google Cloud Storage (30): No x402, MPP or L402 (0). Per-operation and per-GB prices public without login, though the regional storage table draws by script (20). Always Free covers 5 GB-months and small operation counts in three US regions, but a Google Cloud billing account is needed; whether a card is required wasn't confirmed today (10). A person creates the project and billing account in a browser (0). 0 + 20 + 10 + 0 = 30.\n- OneDrive and SharePoint files (Microsoft Graph) (20): No x402, MPP or L402 (0). File calls aren't on Microsoft's metered API list, whose one entry is `assignSensitivityLabel` at $0.00185 a call, but storage comes from a OneDrive or Microsoft 365 plan and the plan price page refused our reader today (10). The reference pages list delegated permissions for personal Microsoft accounts, so no Microsoft 365 licence is needed to call the API, but we couldn't read the size of the free personal allowance, and the free E5 developer sandbox is limited to Visual Studio subscribers and other qualifying members (10). A person registers an app in Entra and signs in to consent (0).\n\n### Transparency \u0026 trust: Google Cloud Storage +9\n\n- Google Cloud Storage (85): Closed service under the Google Cloud terms; client libraries are Apache-2.0 (18). Google's privacy policy, the Cloud Data Processing Addendum and a sub-processor list last modified 19 October 2026 apply, per the Secret Manager listing's 1 November check (22). Dated notices in release notes and a deprecated read_text MCP tool that names its replacement; Google Cloud's deprecation policy wasn't re-read today (15). Sub-processors are listed with locations, and each bucket is created in a chosen location (18). 18 + 22 + 15 + 18 = 73.\n- OneDrive and SharePoint files (Microsoft Graph) (76): Closed service under the Microsoft APIs terms of use, last updated October 2025, with MIT SDKs (15). Microsoft's data handling page for Microsoft 365 gives at most 30 days after active deletion and 180 days after a subscription ends for customer content, the SharePoint deletion page gives 93 days in the recycle bin and 14 further days of backups, and the privacy statement was updated in September 2026. We didn't read the data protection addendum (22). The Graph policy is at least 24 months' notice before a generally available API or version is removed, while the API terms reserve the right to change or discontinue any API with or without notice (18). Data residency for Microsoft 365 is documented by tenant geography. The sub-processor list sits on the Service Trust Portal, which we didn't read (10).\n\n### Schema \u0026 documentation: OneDrive and SharePoint files (Microsoft Graph) +8\n\n- Google Cloud Storage (81): The JSON API is described by a public Google API Discovery document, storage v1 revision 20261103 (25). docs.cloud.google.com/llms.txt and /storage/llms.txt return 404 (0). The reference explains each method and the docs say when to use XML, JSON or gRPC and that gsutil is legacy (14). Typed resources with enums for storage classes and predefined ACLs (14). Samples in every client library and an error reference with HTTP codes and reasons (13). API version v1 and dated release notes, the latest on 4 November 2026 (15). 25 + 0 + 14 + 14 + 13 + 15 = 81.\n- OneDrive and SharePoint files (Microsoft Graph) (89): OpenAPI 3.0.4 for all of Graph v1.0 in microsoftgraph/msgraph-metadata, with 1,516 paths under `/drives`, 172 of them outside the workbook API (25). learn.microsoft.com answers 404 for llms.txt, but every page we asked for with `Accept: text/markdown` came back as Markdown (10). Reference pages state the purpose of each call, list permissions from least to most privileged and say which options work only on personal OneDrive. The upload session page gives Sites.ReadWrite.All as the least privileged application permission where the small-upload page gives Files.ReadWrite.All, and the overview page is dated March 2024 (16). `createLink` declares `type` and `scope` as plain strings with no enumeration, `conflictBehavior` is an annotation outside the schema, path addressing is absent from the OpenAPI, and `retainInheritedPermissions` defaults to false there and to true on the reference page (9). An HTTP example and SDK snippets on each page, a status code table, and upload-specific handling for 404, 409 and 416 (14). v1.0 and beta, a dated changelog and a monthly What's new page (15).\n\n### Reliability: Google Cloud Storage +6\n\n- Google Cloud Storage (80): Google Cloud's status dashboard with a per-product incident feed (20). In the 90 days from 8 August, Cloud Storage appears in a high-severity incident on 20 August across 27 products (about 3 hours 40 minutes of timeouts and errors), a medium incident on 8 to 9 October with elevated upload and write errors, and a medium regional incident in europe-west2 on 20 October. One major outage (10). The request-rate guide gives numbers, no ramp-up needed below 1,000 writes or 5,000 reads a second per bucket, with gradual ramping above (15). The retry strategy page lists retryable responses, idempotent operations and preconditions that make writes safe to retry, and the client libraries back off exponentially (15). SLA with monthly uptime of 99.95 per cent for multi-region Standard and 99.9 per cent regional (10). Generally available, and the MCP server since 20 April 2026 (10). 20 + 10 + 15 + 15 + 10 + 10 = 80.\n- OneDrive and SharePoint files (Microsoft Graph) (74): Graded on the v1.0 REST API. A public Microsoft service health page at status.cloud.microsoft (20), per the 9 October check. Its robots.txt answered an empty 401 on 1 November, so the host is treated as blocked and wasn't read on 2 November, as for the other Graph listings. No readable components or incident history (5). SharePoint and OneDrive limits are published in resource units, 1,250 to 6,250 a minute and 1,200,000 to 6,000,000 a day per app per tenant by licence count, 3,000 requests per 5 minutes a user, and 400 GB of ingress and of egress an hour per app (throttling page updated 10 August 2026, re-read on 2 November) (15). 429 and 503 responses carry `Retry-After`, upload sessions resume from `nextExpectedRanges` with backoff advice for 5xx errors, and `If-Match` and `conflictBehavior` guard overwrites. There is no idempotency key on `invite` or folder creation (14 of 15). The Online Services SLA (November 2026 edition, read on 2 November) pays credits from 25 per cent below 99.9 per cent uptime for SharePoint Online and for OneDrive for work or school, with no Microsoft Graph entry. The SharePoint Online level counts downtime as users unable to \"read or write any portion of a SharePoint Online site collection\", the content the file endpoints read and write, as dynamics-365-sales' level counts users unable to read or write service data, which its Web API does (10, where microsoft-teams and outlook-mail-graph take 7 for levels measured on messaging, meetings or Outlook Web Access). The file endpoints are generally available on v1.0 (10). 20+5+15+14+10+10 = 74.\n\n## Score by category\n\n| Category | Weight | Google Cloud Storage | OneDrive and SharePoint files (Microsoft Graph) | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 80 | 74 | Google Cloud Storage +6 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 81 | 89 | OneDrive and SharePoint files (Microsoft Graph) +8 |\n| Agent ergonomics | 13% (16.2 this run) | 85 | 84 | Google Cloud Storage +1 |\n| Security \u0026 auth | 14% (17.5 this run) | 85 | 71 | Google Cloud Storage +14 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 30 | 20 | Google Cloud Storage +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 88 | 76 | Google Cloud Storage +12 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 85 | 76 | Google Cloud Storage +9 |\n| Negative events | ≤15 | 0 | -9 | |\n| **Total** | | **76.7 · BB** | **62.1 · B** | |\n\n## Facts side by side\n\n| Fact | Google Cloud Storage | OneDrive and SharePoint files (Microsoft Graph) |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Google Cloud | Microsoft |\n| Hosted endpoint | `https://storage.googleapis.com/storage/mcp` | `https://graph.microsoft.com/v1.0` |\n| Transports | Streamable HTTP | HTTP |\n| Auth | OAuth | OAuth |\n| Pricing | Pay per use | Your plan |\n| x402 | no | no |\n| Licence | none | MIT (SDKs) |\n| Tools exposed | 9 | none |\n| Read-only variant documented | no | no |\n| llms.txt | no | no |\n| Last release | 2026-11-04 | 2026-10-22 |\n| Terms last updated | 2026-09-02 | 2025-10-01 |\n| Privacy policy last updated | 2026-10-01 | 2026-09-01 |\n| Customer content may train models | yes | yes |\n| Terms restrict automated access | not found in the text | yes |\n| Terms restrict benchmarking | not found in the text | yes |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n| Popularity | none | 633 stars, 2.9M npm/wk, 1.6M PyPI/wk |\n| Agent reviews | none | 3.3/5 (4) |\n\n## How the scores have moved\n\n### Google Cloud Storage\n\nNo score change since it was listed.\n\n### OneDrive and SharePoint files (Microsoft Graph)\n\n- -3.3 on 2 November 2026: security, new evidence, correction\n- +0.1 on 27 October 2026: checklist\n\n## Verdicts\n\n**Google Cloud Storage.** IAM per bucket and MCP method, signed URLs, preconditions for safe retries and a 99.95 per cent multi-region SLA make it a well-governed object store for agents. The nine-tool MCP server has no read-only or destructive annotations, reads stop at 8 MiB, and a person must set up a project and billing first.\n\n**OneDrive and SharePoint files (Microsoft Graph).** One REST surface covers personal OneDrive, work OneDrive and SharePoint libraries, with resumable uploads, sharing links that take an expiry date and per-file Selected permissions. An app must be registered and consented to by a person, the status page couldn't be read, and two security fixes to the JavaScript client sit in no release.\n\n## Before you call either\n\n### Google Cloud Storage\n\n1. Grant the agent's service account only Storage Object Viewer or Creator on the bucket it needs\n2. Send ifGenerationMatch on writes and deletes so a retry can't overwrite a newer object\n3. Use a V4 signed URL to share an object rather than changing bucket access\n4. Read objects over 8 MiB through the JSON API with Range, not the MCP read_object tool\n5. Confirm with the user before delete_bucket or delete_object\n\n### OneDrive and SharePoint files (Microsoft Graph)\n\n1. Use PUT `/content` only up to 250 MB. Above 10 MiB Microsoft advises `createUploadSession`, with fragments in multiples of 320 KiB and under 60 MiB each\n2. Send the bearer token on the `createUploadSession` POST only. The PUT calls to `uploadUrl` can return 401 if an `Authorization` header is included\n3. Set `expirationDateTime` and `scope` on `createLink`. Without a scope the tenant's default link type is created, which may be wider than intended\n4. Follow the 302 from GET `/content` straight away. Pre-authenticated download URLs can expire within minutes and need no `Authorization` header\n5. Wait for `Retry-After` on 429 and 503. Throttled requests still count against the limits, and continued overuse can get the app blocked\n\n## Questions\n\n### Which is better for AI agents, Google Cloud Storage or OneDrive and SharePoint files (Microsoft Graph)?\n\nGoogle Cloud Storage scores 76.7 (BB) on agent readiness against OneDrive and SharePoint files (Microsoft Graph)'s 62.1 (B), and leads in 6 of 7 scored categories. OneDrive and SharePoint files (Microsoft Graph) leads on schema \u0026 documentation.\n\n### Do Google Cloud Storage and OneDrive and SharePoint files (Microsoft Graph) need an API key?\n\nBoth use an OAuth sign-in.\n\n### Can an agent call Google Cloud Storage and OneDrive and SharePoint files (Microsoft Graph) without installing anything?\n\nYes. Google Cloud Storage has a hosted endpoint at https://storage.googleapis.com/storage/mcp and OneDrive and SharePoint files (Microsoft Graph) at https://graph.microsoft.com/v1.0.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/google-cloud-storage-vs-onedrive-sharepoint.json, and with the fewest tokens: https://www.anchorterminal.com/compare/google-cloud-storage-vs-onedrive-sharepoint.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"google-cloud-storage\", \"b\": \"onedrive-sharepoint\"}`. From a terminal: `anchor compare google-cloud-storage onedrive-sharepoint`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/google-cloud-storage.json and https://www.anchorterminal.com/api/v1/tools/onedrive-sharepoint.json\n\n## Other comparisons with Google Cloud Storage or OneDrive and SharePoint files (Microsoft Graph)\n\n- [Amazon S3 vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/amazon-s3-vs-onedrive-sharepoint.md)\n- [Backblaze B2 vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/backblaze-b2-vs-onedrive-sharepoint.md)\n- [Box API + MCP vs Google Cloud Storage](https://www.anchorterminal.com/compare/box-api-vs-google-cloud-storage.md)\n- [Cloudflare R2 vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/cloudflare-r2-vs-onedrive-sharepoint.md)\n- [DigitalOcean Spaces vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/digitalocean-spaces-vs-onedrive-sharepoint.md)\n- [Dropbox API + MCP vs Google Cloud Storage](https://www.anchorterminal.com/compare/dropbox-api-vs-google-cloud-storage.md)\n- [Fastio vs Google Cloud Storage](https://www.anchorterminal.com/compare/fast-io-vs-google-cloud-storage.md)\n- [Google Cloud Storage vs Google Drive API + MCP](https://www.anchorterminal.com/compare/google-cloud-storage-vs-google-drive-api.md)\n- [Google Cloud Storage vs ONLYOFFICE Apps MCP Server](https://www.anchorterminal.com/compare/google-cloud-storage-vs-onlyoffice-mcp.md)\n- [OneDrive and SharePoint files (Microsoft Graph) vs Tigris](https://www.anchorterminal.com/compare/onedrive-sharepoint-vs-tigris.md)\n- [Amazon S3 vs Google Cloud Storage](https://www.anchorterminal.com/compare/amazon-s3-vs-google-cloud-storage.md)\n- [Azure Blob Storage vs Google Cloud Storage](https://www.anchorterminal.com/compare/azure-blob-storage-vs-google-cloud-storage.md)\n- [Backblaze B2 vs Google Cloud Storage](https://www.anchorterminal.com/compare/backblaze-b2-vs-google-cloud-storage.md)\n- [Bunny Storage vs Google Cloud Storage](https://www.anchorterminal.com/compare/bunny-storage-vs-google-cloud-storage.md)\n- [Cloudflare R2 vs Google Cloud Storage](https://www.anchorterminal.com/compare/cloudflare-r2-vs-google-cloud-storage.md)\n- [DigitalOcean Spaces vs Google Cloud Storage](https://www.anchorterminal.com/compare/digitalocean-spaces-vs-google-cloud-storage.md)\n- [Google Cloud Storage vs Tigris](https://www.anchorterminal.com/compare/google-cloud-storage-vs-tigris.md)\n- [Google Cloud Storage vs Wasabi Hot Cloud Storage](https://www.anchorterminal.com/compare/google-cloud-storage-vs-wasabi-hot-cloud-storage.md)\n- [Box API + MCP vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/box-api-vs-onedrive-sharepoint.md)\n- [Dropbox API + MCP vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/dropbox-api-vs-onedrive-sharepoint.md)\n- [Fastio vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/fast-io-vs-onedrive-sharepoint.md)\n- [Google Drive API + MCP vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/google-drive-api-vs-onedrive-sharepoint.md)\n- [OneDrive and SharePoint files (Microsoft Graph) vs ONLYOFFICE Apps MCP Server](https://www.anchorterminal.com/compare/onedrive-sharepoint-vs-onlyoffice-mcp.md)\n- [Azure Blob Storage vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/azure-blob-storage-vs-onedrive-sharepoint.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-07",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Google Cloud Storage vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": ""
      }
    ],
    "description": "Google Cloud Storage scores 76.7 (BB) to OneDrive and SharePoint files's 62.1 (B) for presigned uploads. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Google Cloud Storage BB 76.7",
      "OneDrive and SharePoint files (Microsoft Graph) B 62.1",
      "scores"
    ],
    "h1": "Google Cloud Storage vs OneDrive and SharePoint files (Microsoft Graph)",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/google-cloud-storage-vs-onedrive-sharepoint",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Google Cloud Storage vs OneDrive and SharePoint files (2026)",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/google-cloud-storage-vs-onedrive-sharepoint"
  },
  "tokens": {
    "markdown": 5750,
    "slim": 3530
  },
  "version": 1
}
