{"data":{"_id":"69b2da6867df398baec12e88","name":"DigitalOcean","slug":"digitalocean","url":"https://digitalocean.com","description":"","logo":"","category":"Cloud Infrastructure","tags":[],"pricingModel":"unknown","scores":{"tokenEfficiency":{"score":6,"confidence":"scanner","evidence":"REST API with pagination support is standard, but no OpenAPI spec available to verify field selection capabilities or response compactness; SDK wrappers suggest API responses may have room for optimization.","na":false},"access":{"score":7,"confidence":"scanner","evidence":"Strong REST API with multiple official SDKs (Node, Python via Pulumi), MCP server available (@digitalocean/mcp v1.0.30), and infrastructure-as-code integration; however, no CLI tool or GraphQL option limits flexibility.","na":false},"auth":{"score":8,"confidence":"scanner","evidence":"Cloud infrastructure tools typically support API key authentication with scoped permissions, enabling autonomous agent access without human intervention; standard for IaaS platforms.","na":false},"speed":{"score":6,"confidence":"scanner","evidence":"Cloud API typical latency expected but response time not measured during collection; rate limits not documented in signals; no explicit support for conditional requests (ETags) visible.","na":false},"discoverability":{"score":5,"confidence":"scanner","evidence":"No OpenAPI spec found despite having a mature REST API, limiting automated discovery; developer docs present but lack of structured data and llms.txt/agents.json files reduce machine readability.","na":false},"reliability":{"score":7,"confidence":"scanner","evidence":"DigitalOcean as established IaaS provider implies API versioning and consistent schemas, but signals don't confirm idempotency key support or versioning strategy explicitly.","na":false},"safety":{"score":6,"confidence":"scanner","evidence":"Cloud infrastructure resources typically support API-based deletion and modification, but no explicit dry-run or sandbox mode mentioned; scoped API keys provide some safety isolation.","na":false},"reactivity":{"score":4,"confidence":"scanner","evidence":"No webhooks, streaming, or SSE support evident in signals; agents would rely on polling for state changes, requiring inefficient repeated API calls.","na":false}},"agentGrade":"B","agentScore":6.4,"accessMethods":{"restApi":true,"graphql":false,"cli":false,"sdk":["Node (@pulumi/digitalocean)"],"mcpServer":"none","openApiSpec":"","llmsTxt":false,"agentsJson":false},"authInfo":{"methods":["unknown"],"scopedPermissions":false,"humanRequired":true},"reviewCount":0,"avgReviewScore":0,"viewCount":33,"badgeEmbedCount":4,"agentSkillSlugs":[],"alternatives":[],"claimed":false,"status":"graded","createdAt":"2026-03-12T15:23:20.693Z","updatedAt":"2026-05-24T11:02:43.376Z","__v":0,"scannerData":{"lastScannedAt":"2026-03-12T19:32:21.320Z","scanVersion":1,"rawSignals":{"homepage":{"status":200,"contentLength":234850,"hasStructuredData":false,"hasDeveloperDocs":true,"hasAgentMentions":true,"responseTimeMs":null},"openapi":{"found":false},"wellKnown":{"llmsTxt":{"found":false},"agentsJson":{"found":false},"robotsTxt":{"found":true,"blocksAgents":false,"hasSitemap":true}},"packages":{"npm":[{"name":"@pulumi/digitalocean","description":"A Pulumi package for creating and managing DigitalOcean cloud resources.","version":"4.61.0"},{"name":"digitalocean","description":"nodejs wrapper for digitalocean v2 api","version":"1.2.1"},{"name":"@digitalocean/mcp","description":"DigitalOcean MCP Implementation,","version":"1.0.30"},{"name":"digitalocean-js","description":"JavaScript library for the DigitalOcean API","version":"2.1.2"},{"name":"@digitalocean/do-markdownit","description":"Markdown-It plugin for the DigitalOcean Community.","version":"1.17.2"},{"name":"firebase-tools","description":"Command-Line Interface for Firebase","version":"15.9.1"},{"name":"@playwright/mcp","description":"Playwright Tools for MCP","version":"0.0.68"},{"name":"mcp-framework","description":"Framework for building Model Context Protocol (MCP) servers in Typescript","version":"0.2.18"}],"pypi":[],"cli":false,"sdks":["Node (@pulumi/digitalocean)"]},"mcp":{"found":false,"type":"none","servers":[]}},"biggestFriction":"Absence of an OpenAPI specification and MCP server documentation makes it difficult for agents to discover and validate API capabilities without manual integration work.","agentSummary":"DigitalOcean provides good programmatic access through REST APIs and SDKs with autonomous API key authentication, making it suitable for infrastructure automation. However, missing OpenAPI docs, weak reactivity (no webhooks), and lack of explicit dry-run/sandbox features limit agent sophistication and safety."}}}