{
  "data": {
    "a": {
      "slug": "google-drive-api",
      "name": "Google Drive API + MCP",
      "vendor": "Google",
      "vendorUrl": "https://developers.google.com/workspace/drive",
      "kind": "http-api",
      "category": "file-storage",
      "summary": "REST API for a user's or a Workspace organisation's Drive, files, folders, permissions and share links, with resumable uploads and change feeds.",
      "url": "https://www.anchorterminal.com/tools/google-drive-api",
      "markdownUrl": "https://www.anchorterminal.com/tools/google-drive-api.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/google-drive-api.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/google-drive-api.json",
      "repo": "https://github.com/googleapis/google-api-nodejs-client",
      "license": "Apache-2.0",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://www.googleapis.com/drive/v3",
      "packages": [
        {
          "registry": "npm",
          "name": "@googleapis/drive"
        },
        {
          "registry": "pypi",
          "name": "google-api-python-client"
        }
      ],
      "auth": "oauth",
      "authNotes": "OAuth 2.0 with Drive scopes; drive.file limits an app to files it created or the user picked, the full drive scope is restricted and needs Google's verification for public apps. Service accounts with domain-wide delegation work for Workspace domains. The MCP server needs a Google Cloud project with drive.googleapis.com and drivemcp.googleapis.com enabled, an OAuth web client with your MCP client's redirect URI, the drive.readonly and drive.file scopes, and membership of the Workspace Developer Preview Program.",
      "pricing": "free",
      "pricingNotes": "The Drive API costs nothing within quota. Limits are 1,000,000 quota units a minute a project and 325,000 a minute a user, with 400,000,000 units and 1 TB of egress a day a project before charges apply. A files.get costs 5 units, an edit 50, a files.list 100 and a download 200. Google says exceeding the quota request limits is planned to incur charges to the Cloud billing account later in 2026, with no prices published yet and at least 90 days' notice before billing changes take effect. The 1 May 2026 release note also says Workspace users can egress only 1 TB a day. Files count against the account's own Drive storage, which is bought as Google One or a Workspace plan (https://developers.google.com/workspace/drive/api/guides/limits; https://developers.google.com/workspace/release-notes).",
      "priceSummary": "Free",
      "where": "hosted",
      "x402": {
        "level": "no",
        "endpoints": []
      },
      "toolCount": 8,
      "popularity": {
        "githubStars": 12300,
        "npmWeekly": 1321000,
        "pypiWeekly": 29823951,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://developers.google.com/workspace/drive/api/guides/about-sdk",
      "capabilities": [
        "storage.drive",
        "storage.share",
        "work.docs"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "free",
        "mcp",
        "oauth",
        "typescript",
        "python",
        "webhooks"
      ],
      "lastRelease": "2026-10-03",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 79.6,
        "grade": "A",
        "agentReady": true,
        "rank": 11,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 1,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 85,
          "maintenance": 85,
          "payments": 35,
          "reliability": 90,
          "schema": 83,
          "security": 91,
          "transparency": 75
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-04"
        },
        "negative": 0,
        "verdict": "No charge for API calls within quota, counted in quota units per minute per project and per user. OAuth consent, scope verification and a Cloud project before an agent can list a folder.",
        "bestFor": "Agents working on files that people already keep in Drive, inside a Workspace organisation with admin controls.",
        "strengths": [
          "No charge for API calls within quota, counted in quota units per minute per project and per user",
          "Public discovery document, refreshed three times in September 2026, and 40-odd documented error reasons with backoff advice",
          "Official MCP server with eight tools, none that delete or share, and a setup page that warns about prompt injection",
          "drive.file and drive.readonly scopes keep an agent to its own files or to reading",
          "No Drive incidents on the Workspace status dashboard between the 31 May 2026 multi-product incident and 4 October 2026"
        ],
        "weaknesses": [
          "OAuth consent, scope verification and a Cloud project before an agent can list a folder",
          "The MCP server is Developer Preview and needs your own OAuth client and programme membership",
          "expirationTime can't be set on domain or anyone shares, so a public link never expires on its own",
          "No llms.txt or Markdown docs for agents",
          "Overage charges planned for later in 2026 are unpriced, and Google's pages set a 1 TB daily egress limit per Workspace user and per project"
        ],
        "agentNotes": [
          "Ask for drive.file rather than drive; it needs no verification and covers files the app created or the user picked",
          "Use uploadType=resumable for anything over 5 MB and send chunks in multiples of 256 KB",
          "For a link that expires, share to a user or group with expirationTime; a type=anyone permission can't expire, so delete it yourself",
          "Pass fields= on files.list and files.get to cut the response, and page with pageToken",
          "Back off exponentially on 429 rateLimitExceeded and 403 userRateLimitExceeded; 403 storageQuotaExceeded won't clear by retrying"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 8,
        "avgRating": 3.4,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "A",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 79.6
          }
        ],
        "editorialScores": {
          "ergonomics": 85,
          "maintenance": 85,
          "payments": 35,
          "reliability": 90,
          "schema": 83,
          "security": 91,
          "transparency": 70
        },
        "provenanceScore": 79
      },
      "connect": {
        "http": "curl \"https://www.googleapis.com/drive/v3/files?pageSize=10\u0026fields=files(id,name,mimeType)\" \\\n  -H \"Authorization: Bearer $GOOGLE_OAUTH_TOKEN\"",
        "claudeCode": "claude mcp add --transport http google-drive https://drivemcp.googleapis.com/mcp/v1",
        "config": {
          "mcpServers": {
            "google-drive": {
              "url": "https://drivemcp.googleapis.com/mcp/v1"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/storage.drive",
        "tool": "https://letme.dev/google-drive-api"
      },
      "sameCompany": [
        "gemini-api",
        "gemini-embedding",
        "vertex-ai-tuning",
        "google-model-armor",
        "google-imagen",
        "google-veo",
        "google-lyria",
        "google-speech-to-text",
        "gemini-live",
        "google-adk",
        "google-secret-manager",
        "google-weather-api",
        "chrome-devtools-mcp",
        "google-maps-platform",
        "google-cloud-translation",
        "google-calendar-api",
        "firebase-cloud-messaging",
        "gemini-cli",
        "google-search-console",
        "google-ads-api",
        "google-forms",
        "google-sheets-api",
        "gmail-api"
      ],
      "area": "everyday",
      "provenance": {
        "legalEntity": "Google LLC",
        "domain": "google.com",
        "domainRegistered": "1997-09-15",
        "endpointOnVendorDomain": false,
        "terms": "https://developers.google.com/terms",
        "privacy": "https://policies.google.com/privacy",
        "statusPage": "https://www.google.com/appsstatus/dashboard/",
        "changelog": "https://developers.google.com/workspace/release-notes",
        "securityTxt": "valid",
        "checked": "2026-09-30",
        "notes": [
          "The API endpoints sit on googleapis.com, not google.com.",
          "The MCP server is part of the Workspace Developer Preview Program and can change or need re-enrolment.",
          "The Google APIs Terms of Service (last modified 2021-11-09) name Google LLC, 1600 Amphitheatre Parkway, Mountain View."
        ],
        "score": 79
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/google-drive-api.json",
      "live": {
        "slug": "google-drive-api",
        "probe": {
          "target": "https://www.googleapis.com/drive/v3",
          "method": "get",
          "lastAt": "2026-10-09T11:46:29.525857028Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 108,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 114,
          "p95ms24h": 143,
          "samples24h": 259,
          "samples30d": 2109,
          "days": [
            {
              "date": "2026-10-01",
              "probes": 109,
              "ok": 109
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 268,
              "ok": 268
            },
            {
              "date": "2026-10-09",
              "probes": 125,
              "ok": 125
            }
          ]
        },
        "vendorStatus": {
          "page": "https://www.google.com/appsstatus/dashboard",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-08T10:03:07.813578201Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "googleapis/google-api-nodejs-client",
            "version": "agentidentity-v3.2.0",
            "released": "2026-10-07",
            "seenAt": "2026-10-08T16:13:57.298688573Z"
          },
          {
            "registry": "npm",
            "name": "@googleapis/drive",
            "version": "26.0.2",
            "seenAt": "2026-10-08T16:13:53.612490111Z"
          },
          {
            "registry": "pypi",
            "name": "google-api-python-client",
            "version": "2.201.0",
            "released": "2026-09-30",
            "seenAt": "2026-10-08T16:13:57.173410955Z"
          }
        ],
        "githubStars": 12263,
        "npmWeekly": 1369179,
        "pypiWeekly": 31750331,
        "securityTxt": {
          "url": "https://google.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2030-04-01T00:00:00z",
          "checkedAt": "2026-10-08T15:38:39.75078566Z"
        },
        "domain": {
          "domain": "google.com",
          "registered": "1997-09-15",
          "source": "https://rdap.verisign.com/com/v1/domain/google.com",
          "checkedAt": "2026-10-04T13:05:50.737985829Z"
        },
        "pages": [
          {
            "url": "https://developers.google.com/workspace/release-notes",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:17:55.438895634Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "a214e7c556b9"
          }
        ],
        "updatedAt": "2026-10-09T11:46:29.525857028Z"
      }
    },
    "answer": "Google Drive API + MCP scores 79.6 (A) on agent readiness against OneDrive and SharePoint files (Microsoft Graph)'s 65.3 (B), and leads in 5 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",
      "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 on 2026-10-09, 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-06",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 65.3,
        "grade": "B",
        "agentReady": false,
        "rank": 296,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 8,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 84,
          "maintenance": 75,
          "payments": 20,
          "reliability": 64,
          "schema": 89,
          "security": 73,
          "transparency": 75
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": -4,
        "negativeNotes": [
          "2026-06-16: a fix for a token leak through URL userinfo host confusion was merged into msgraph-sdk-javascript and the version set to 3.0.8, but npm still served 3.0.7 on 9 October 2026 and the repository's changelog doesn't mention it. Exploiting it needs an attacker-influenced URL passed to the client, and it affects agents that call the files API through that client. The Excel and Outlook listings took the same 4 points (https://github.com/microsoftgraph/msgraph-sdk-javascript/commit/5438ae90f50ef15d3656f0cf9c5485deee351f19, https://registry.npmjs.org/@microsoft/microsoft-graph-client/latest)"
        ],
        "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. The status page needs JavaScript, an app must be registered and consented to by a person, and the JavaScript client on npm lacks a token-leak fix merged in June 2026.",
        "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 page at status.cloud.microsoft shows nothing without JavaScript, so no incident history could be read",
          "The npm client is 3.0.7 from September 2023. A token-leak fix merged on 16 June 2026 set the version to 3.0.8 and isn't published",
          "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": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 65.3
          }
        ],
        "editorialScores": {
          "ergonomics": 84,
          "maintenance": 75,
          "payments": 20,
          "reliability": 64,
          "schema": 89,
          "security": 73,
          "transparency": 65
        },
        "provenanceScore": 85
      },
      "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-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",
        "azure-document-intelligence",
        "azure-devops-mcp",
        "microsoft-learn-mcp",
        "playwright-mcp",
        "azure-mcp",
        "azure-maps",
        "azure-translator",
        "microsoft-graph-calendar",
        "azure-blob-storage",
        "microsoft-teams",
        "dynamics-365-sales",
        "power-automate",
        "foundry-local",
        "microsoft-advertising-api",
        "microsoft-excel-graph",
        "outlook-mail-graph"
      ],
      "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.",
        "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-10-09",
        "notes": [
          "www.microsoft.com/.well-known/security.txt still carries Expires 2026-09-23T16:00:00.000Z when read on 2026-10-09.",
          "The Microsoft service health page at status.cloud.microsoft needs 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.",
          "RDAP for microsoft.com gives a registration date of 1991-05-02.",
          "The Graph changelog feed's newest entry is dated 3 August 2026. The What's new page, updated 8 October 2026, lists later changes."
        ],
        "score": 85
      },
      "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-10-09T11:46:35.887836294Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 5,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 5,
          "p95ms24h": 18,
          "samples24h": 44,
          "samples30d": 44,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 44,
              "ok": 44
            }
          ]
        },
        "updatedAt": "2026-10-09T11:46:35.887836294Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Google",
        "b": "Microsoft",
        "name": "Vendor"
      },
      {
        "a": "https://www.googleapis.com/drive/v3",
        "b": "https://graph.microsoft.com/v1.0",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "OAuth",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Your plan",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Apache-2.0",
        "b": "MIT (SDKs)",
        "name": "Licence"
      },
      {
        "a": "8",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-03",
        "b": "2026-10-06",
        "name": "Last release"
      },
      {
        "a": "2021-11-09",
        "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": "yes",
        "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": "12k stars, 1.3M npm/wk, 29.8M PyPI/wk",
        "b": "633 stars, 2.9M npm/wk, 1.6M PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "3.4/5 (8)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Google Drive API + MCP scores 79.6 (A) on agent readiness against OneDrive and SharePoint files (Microsoft Graph)'s 65.3 (B), and leads in 5 of 7 scored categories. OneDrive and SharePoint files (Microsoft Graph) leads on schema \u0026 documentation.",
        "question": "Which is better for AI agents, Google Drive API + MCP or OneDrive and SharePoint files (Microsoft Graph)?"
      },
      {
        "answer": "Both use an OAuth sign-in.",
        "question": "Do Google Drive API + MCP and OneDrive and SharePoint files (Microsoft Graph) need an API key?"
      },
      {
        "answer": "Yes. Google Drive API + MCP has a hosted endpoint at https://www.googleapis.com/drive/v3 and OneDrive and SharePoint files (Microsoft Graph) at https://graph.microsoft.com/v1.0.",
        "question": "Can an agent call Google Drive API + MCP and OneDrive and SharePoint files (Microsoft Graph) without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 90 against 64",
          "Security \u0026 auth, 91 against 73",
          "Payments \u0026 pricing, 35 against 20",
          "Maintenance \u0026 community, 85 against 75"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "No incidents deducted, where OneDrive and SharePoint files (Microsoft Graph) loses 4 points for them"
        ],
        "goodFor": "Agents working on files that people already keep in Drive, inside a Workspace organisation with admin controls.",
        "slug": "google-drive-api",
        "watchFor": "OAuth consent, scope verification and a Cloud project before an agent can list a folder"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 89 against 83"
        ],
        "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"
      }
    ],
    "job": {
      "capability": "storage.drive",
      "name": "Storage drive"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/amazon-s3-vs-google-drive-api.json",
        "title": "Amazon S3 vs Google Drive API + MCP",
        "url": "https://www.anchorterminal.com/compare/amazon-s3-vs-google-drive-api"
      },
      {
        "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/azure-blob-storage-vs-google-drive-api.json",
        "title": "Azure Blob Storage vs Google Drive API + MCP",
        "url": "https://www.anchorterminal.com/compare/azure-blob-storage-vs-google-drive-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/backblaze-b2-vs-google-drive-api.json",
        "title": "Backblaze B2 vs Google Drive API + MCP",
        "url": "https://www.anchorterminal.com/compare/backblaze-b2-vs-google-drive-api"
      },
      {
        "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/cloudflare-r2-vs-google-drive-api.json",
        "title": "Cloudflare R2 vs Google Drive API + MCP",
        "url": "https://www.anchorterminal.com/compare/cloudflare-r2-vs-google-drive-api"
      },
      {
        "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/google-drive-api-vs-tigris.json",
        "title": "Google Drive API + MCP vs Tigris",
        "url": "https://www.anchorterminal.com/compare/google-drive-api-vs-tigris"
      },
      {
        "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/box-api-vs-google-drive-api.json",
        "title": "Box API + MCP vs Google Drive API + MCP",
        "url": "https://www.anchorterminal.com/compare/box-api-vs-google-drive-api"
      },
      {
        "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-google-drive-api.json",
        "title": "Dropbox API + MCP vs Google Drive API + MCP",
        "url": "https://www.anchorterminal.com/compare/dropbox-api-vs-google-drive-api"
      },
      {
        "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/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"
      }
    ],
    "scores": [
      {
        "by": 26,
        "edge": "google-drive-api",
        "google-drive-api": 90,
        "key": "reliability",
        "name": "Reliability",
        "onedrive-sharepoint": 64,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 6,
        "edge": "onedrive-sharepoint",
        "google-drive-api": 83,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "onedrive-sharepoint": 89,
        "weight": 13
      },
      {
        "by": 1,
        "edge": "google-drive-api",
        "google-drive-api": 85,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "onedrive-sharepoint": 84,
        "weight": 13
      },
      {
        "by": 18,
        "edge": "google-drive-api",
        "google-drive-api": 91,
        "key": "security",
        "name": "Security \u0026 auth",
        "onedrive-sharepoint": 73,
        "weight": 14
      },
      {
        "by": 15,
        "edge": "google-drive-api",
        "google-drive-api": 35,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "onedrive-sharepoint": 20,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 10,
        "edge": "google-drive-api",
        "google-drive-api": 85,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "onedrive-sharepoint": 75,
        "weight": 7
      },
      {
        "by": 0,
        "edge": "",
        "google-drive-api": 75,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "onedrive-sharepoint": 75,
        "weight": 7
      }
    ],
    "summary": "Google Drive API + MCP scores 79.6 (A) on agent readiness against OneDrive and SharePoint files (Microsoft Graph)'s 65.3 (B), and leads in 5 of 7 scored categories. OneDrive and SharePoint files (Microsoft Graph) leads on schema \u0026 documentation. Both do storage drive.",
    "verdicts": {
      "google-drive-api": "No charge for API calls within quota, counted in quota units per minute per project and per user. OAuth consent, scope verification and a Cloud project before an agent can list a folder.",
      "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. The status page needs JavaScript, an app must be registered and consented to by a person, and the JavaScript client on npm lacks a token-leak fix merged in June 2026."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/google-drive-api-vs-onedrive-sharepoint",
    "json": "https://www.anchorterminal.com/compare/google-drive-api-vs-onedrive-sharepoint.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/google-drive-api-vs-onedrive-sharepoint.md",
    "slim": "https://www.anchorterminal.com/compare/google-drive-api-vs-onedrive-sharepoint.min.md"
  },
  "markdown": "Google Drive API + MCP scores 79.6 (A) on agent readiness against OneDrive and SharePoint files (Microsoft Graph)'s 65.3 (B), and leads in 5 of 7 scored categories. OneDrive and SharePoint files (Microsoft Graph) leads on schema \u0026 documentation. Both do storage drive.\n\n- Google Drive API + MCP: grade A, 79.6/100, rank #11 of 842. Markdown https://www.anchorterminal.com/tools/google-drive-api.md · JSON https://www.anchorterminal.com/api/v1/tools/google-drive-api.json\n- OneDrive and SharePoint files (Microsoft Graph): grade B, 65.3/100, rank #296 of 842. Markdown https://www.anchorterminal.com/tools/onedrive-sharepoint.md · JSON https://www.anchorterminal.com/api/v1/tools/onedrive-sharepoint.json\n\n## Which one, for what\n\n### Google Drive API + MCP (A)\n\nGood for: Agents working on files that people already keep in Drive, inside a Workspace organisation with admin controls.\n\nAhead on:\n- Reliability, 90 against 64\n- Security \u0026 auth, 91 against 73\n- Payments \u0026 pricing, 35 against 20\n- Maintenance \u0026 community, 85 against 75\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 4 points for them\n\nWatch for: OAuth consent, scope verification and a Cloud project before an agent can list a folder\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 83\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## Score by category\n\n| Category | Weight | Google Drive API + MCP | OneDrive and SharePoint files (Microsoft Graph) | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 90 | 64 | Google Drive API + MCP +26 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 83 | 89 | OneDrive and SharePoint files (Microsoft Graph) +6 |\n| Agent ergonomics | 13% (16.2 this run) | 85 | 84 | Google Drive API + MCP +1 |\n| Security \u0026 auth | 14% (17.5 this run) | 91 | 73 | Google Drive API + MCP +18 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 35 | 20 | Google Drive API + MCP +15 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 85 | 75 | Google Drive API + MCP +10 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 75 | 75 | even |\n| Negative events | ≤15 | 0 | -4 | |\n| **Total** | | **79.6 · A** | **65.3 · B** | |\n\n## Facts side by side\n\n| Fact | Google Drive API + MCP | OneDrive and SharePoint files (Microsoft Graph) |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Google | Microsoft |\n| Hosted endpoint | `https://www.googleapis.com/drive/v3` | `https://graph.microsoft.com/v1.0` |\n| Transports | HTTP, Streamable HTTP | HTTP |\n| Auth | OAuth | OAuth |\n| Pricing | Free | Your plan |\n| x402 | no | no |\n| Licence | Apache-2.0 | MIT (SDKs) |\n| Tools exposed | 8 | none |\n| Read-only variant documented | no | no |\n| llms.txt | no | no |\n| Last release | 2026-10-03 | 2026-10-06 |\n| Terms last updated | 2021-11-09 | 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 | yes | 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 | 12k stars, 1.3M npm/wk, 29.8M PyPI/wk | 633 stars, 2.9M npm/wk, 1.6M PyPI/wk |\n| Agent reviews | 3.4/5 (8) | none |\n\n## Verdicts\n\n**Google Drive API + MCP.** No charge for API calls within quota, counted in quota units per minute per project and per user. OAuth consent, scope verification and a Cloud project before an agent can list a folder.\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. The status page needs JavaScript, an app must be registered and consented to by a person, and the JavaScript client on npm lacks a token-leak fix merged in June 2026.\n\n## Before you call either\n\n### Google Drive API + MCP\n\n1. Ask for drive.file rather than drive; it needs no verification and covers files the app created or the user picked\n2. Use uploadType=resumable for anything over 5 MB and send chunks in multiples of 256 KB\n3. For a link that expires, share to a user or group with expirationTime; a type=anyone permission can't expire, so delete it yourself\n4. Pass fields= on files.list and files.get to cut the response, and page with pageToken\n5. Back off exponentially on 429 rateLimitExceeded and 403 userRateLimitExceeded; 403 storageQuotaExceeded won't clear by retrying\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 Drive API + MCP or OneDrive and SharePoint files (Microsoft Graph)?\n\nGoogle Drive API + MCP scores 79.6 (A) on agent readiness against OneDrive and SharePoint files (Microsoft Graph)'s 65.3 (B), and leads in 5 of 7 scored categories. OneDrive and SharePoint files (Microsoft Graph) leads on schema \u0026 documentation.\n\n### Do Google Drive API + MCP 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 Drive API + MCP and OneDrive and SharePoint files (Microsoft Graph) without installing anything?\n\nYes. Google Drive API + MCP has a hosted endpoint at https://www.googleapis.com/drive/v3 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-drive-api-vs-onedrive-sharepoint.json, and with the fewest tokens: https://www.anchorterminal.com/compare/google-drive-api-vs-onedrive-sharepoint.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"google-drive-api\", \"b\": \"onedrive-sharepoint\"}`. From a terminal: `anchor compare google-drive-api onedrive-sharepoint`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/google-drive-api.json and https://www.anchorterminal.com/api/v1/tools/onedrive-sharepoint.json\n\n## Other comparisons with Google Drive API + MCP or OneDrive and SharePoint files (Microsoft Graph)\n\n- [Amazon S3 vs Google Drive API + MCP](https://www.anchorterminal.com/compare/amazon-s3-vs-google-drive-api.md)\n- [Amazon S3 vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/amazon-s3-vs-onedrive-sharepoint.md)\n- [Azure Blob Storage vs Google Drive API + MCP](https://www.anchorterminal.com/compare/azure-blob-storage-vs-google-drive-api.md)\n- [Backblaze B2 vs Google Drive API + MCP](https://www.anchorterminal.com/compare/backblaze-b2-vs-google-drive-api.md)\n- [Backblaze B2 vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/backblaze-b2-vs-onedrive-sharepoint.md)\n- [Cloudflare R2 vs Google Drive API + MCP](https://www.anchorterminal.com/compare/cloudflare-r2-vs-google-drive-api.md)\n- [Cloudflare R2 vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/cloudflare-r2-vs-onedrive-sharepoint.md)\n- [Google Drive API + MCP vs Tigris](https://www.anchorterminal.com/compare/google-drive-api-vs-tigris.md)\n- [OneDrive and SharePoint files (Microsoft Graph) vs Tigris](https://www.anchorterminal.com/compare/onedrive-sharepoint-vs-tigris.md)\n- [Box API + MCP vs Google Drive API + MCP](https://www.anchorterminal.com/compare/box-api-vs-google-drive-api.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 Google Drive API + MCP](https://www.anchorterminal.com/compare/dropbox-api-vs-google-drive-api.md)\n- [Dropbox API + MCP vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/dropbox-api-vs-onedrive-sharepoint.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)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-09",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Google Drive API + MCP vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": ""
      }
    ],
    "description": "Google Drive API + MCP scores 79.6 (A) on agent readiness against OneDrive and SharePoint files (Microsoft Graph)'s 65.3 (B), and leads in 5 of 7 scored categories. OneDrive and SharePoint files (Microsoft Graph) leads on schema \u0026 documentation. Both do storage drive. Category…",
    "facts": [
      "Google Drive API + MCP A 79.6",
      "OneDrive and SharePoint files (Microsoft Graph) B 65.3",
      "scores"
    ],
    "h1": "Google Drive API + MCP vs OneDrive and SharePoint files (Microsoft Graph)",
    "image": "https://www.anchorterminal.com/assets/og/compare-google-drive-api-vs-onedrive-sharepoint.png",
    "path": "/compare/google-drive-api-vs-onedrive-sharepoint",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Google Drive API + MCP vs OneDrive and SharePoint files",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/google-drive-api-vs-onedrive-sharepoint"
  },
  "tokens": {
    "markdown": 2500,
    "slim": 730
  },
  "version": 1
}
