
MCP-сервер Ocean Network
Какие MCP-серверы принадлежат Ocean Network, из официального реестра и найденные запросом к его домену, отвечают ли они и что умеют. Всё это проверила программа, а не переписал человек со страницы продукта.
прочитано 2026-10-09
- Адресhttps://mcp.oncompute.ai/mcpнет в официальном реестре: ответил на запрос
Ни одна запись официального реестра MCP не называет этот сервер. Он ответил, когда Атлас запросил oncompute.ai по одному из обычных для MCP-серверов адресов, значит, сервер принадлежит самому вендору. Клиенты и каталоги, которые берут серверы из реестра, его не показывают.
- Состояниеотвечаетпроверено 2026-10-28
- Инструменты93
- Сервер называет себяocean-mcp
- Версия сервера0.1.0
- Версия протокола2025-06-18
2026-10-28 сервер ответил на initialize и tools/list без входа. Первый ответ за 193 мс.
- Делают ли инструменты работу продукта, ещё не проверено.
- Проверок пока 6 из 7, нужных, чтобы судить о надёжности.
После подключения
- createPersistentStorageBucket, deletePersistentStorageFile, create_auth_token, upload_persistent_storage_file меняют данные без входа: вызвать их может любой, у кого есть адрес.
- Описания занимают около 65427 токенов контекста: включайте только нужные задаче инструменты.
Вывод сделан правилами по замерам выше. Вероятный первый вызов выбрала модель по списку инструментов: прочитайте описание, прежде чем на него полагаться.
- Оценка INITE MCPчерез неделюдля оценки нужно 7 ежедневных проверок, пока 6
- Отвечалидёт замерпроверок пока 6, долю покажем после 7
- Медиана первого ответа315 мс
- Место в контексте агента≈ 65 427 токеновописания всех инструментов (93), они занимают контекст агента на каждом ходу
- Описания инструментовB · 80 из 100
- Типизированные ответы0 из 93 инструментовобъявлен outputSchema: ответ приходит с типами и читается сразу
- Параметры без описания: в 20 из 93
- Не сказано, только читает инструмент или может удалять: 93 из 93
Что агент может с ним сделать
- может · Run open-source language models on dedicated GPUs by the hour
- не ясно · Generate images and videos using templates on rented hardware
- не ясно · Earn income from idle GPUs by renting them to others
Каждый сценарий продукта мы задали Jev вместе со списком инструментов сервера: может ли агент сделать это этими инструментами?
На что посмотреть
- Инструменты, которые меняют данные, на сервере, который отвечает без входа: createPersistentStorageBucket, deletePersistentStorageFile, create_auth_token, upload_persistent_storage_file
Программа проверяет сервер раз в день: initialize и tools/list, без модели. Токены - это длина описаний из расчёта примерно четыре символа на токен. Оценка - среднее шести проверок имени, описания, схемы и аннотаций каждого инструмента. Она говорит, насколько понятно описаны инструменты, а не о том, работают ли они. Оценка складывается только из замеренного: отвечает ли сервер (25%), делает ли работу продукта (25%), описания (20%), контекст (10%), использование (10%) и насколько просто подключиться (10%). Незамеренная часть не учитывается, а скрытая инструкция ограничивает оценку 40 баллами. Состояние MCP-серверов вендоров: методика и цифры →
mcp_server_peersGets all peers connected to this MCP Server (libp2p peer store).
node_statusGets ocean-node status via the P2P **status** command. Use **nodeId** and/or **multiaddress** to target the peer. The payload may include **persistentStorage** (object, optionally with **accessLists**) only when the node has persistent…
find_compute_providersTyped compute-provider discovery over the DHT (`ProviderInstance.findComputeProviders`). Pass ordinary resource values — no hand-built search string, no bucket math. Provide **free** (true = free tier, false = paid) and one or more…
find_providerDHT lookup: hashes content (SHA-256) and returns peers that provided that exact string (e.g. a DID). Results are `{ id, multiaddrs, partial?, error? }` per peer — `partial` marks a walk that ended early. For compute (C2D) capacity…
getComputeEnvironmentsCalls P2pProvider.getComputeEnvironments — lists compute environments exposed by the target node (no auth). ## Default node targets If the user has not specified a `nodeId` / `multiaddress`, default to Ocean's recommended compute nodes by…
get_node_metricsLive per-node resource snapshot (`getNodeMetrics`): CPU, memory, storage, GPU and per-environment usage collected at `collectedAt`. No auth. **Returns:** a `NodeMetricsSnapshot`, or `null` if the target node does not expose this feature…
get_node_metrics_historyHourly-averaged node resource metrics over a time window (`getNodeMetricsHistory`). No auth. **Returns:** a `NodeMetricsHistoryResult` with an `buckets` array, or `null` if the target node does not expose this feature (older ocean-node).
resolveDdoFetches a DDO by DID from a target ocean-node over libp2p (`P2pProvider.resolveDdo`). No consumer signature. **Returns:** Raw node response for `getDDO` (typically the DDO JSON object or node-specific envelope).
validateDdoRuns `validateDDO` on the node with a full DDO payload. Requires auth. ## Identity modes for an agent An agent acting for a user proves identity in one of two ways: (1) it **holds a private key** and signs locally (mint a token via…
getNodeJobsCalls `jobs` on the node (`P2pProvider.getNodeJobs`). No auth. **Inputs:** optional `fromTimestamp` filters jobs (Unix ms) when supported by the node. **Returns:** Array of `NodeComputeJob` objects (jobId, status, environment, payment…
getNonceReturns the node’s current nonce for an address (`P2pProvider.getNonce`). **No auth.** Use this before building a `completeSignature`: the value you sign with must use **nonce = String(returnedNonce + 1)** (see auth guide). **Returns:**…
getFileInfoResolves file metadata via `fileInfo` (`P2pProvider.getFileInfo`). No consumer signature. ## fileObject shape (required fields per `type`) - `{ "type": "url", "url": "...", "method": "get" | "post", "headers"?: {...} }` — **`method` is…
initializeComputePricing/validation for compute (`initializeCompute`). No auth required. **Always call before `computeStart` to learn the real cost.** ## Duration vs escrow lock — different things - **maxJobDuration** / **validUntil**: container run time…
computeStartStarts a paid compute job (`startCompute`). Requires auth. **Paid jobs need on-chain escrow deposit + authorization.** This tool runs an escrow **preflight gate**: it resolves your consumer address (from `authToken` /…
freeComputeStartStarts a free compute job (`freeStartCompute`). Requires auth. **Need auth?** Pass an existing JWT as `authToken`, or call `create_auth_token` first (ephemeral or own key) and pass the returned JWT. Ephemeral works on open free envs…
computeStopStops a running job (`stopCompute`). Requires auth. ## Identity modes for an agent An agent acting for a user proves identity in one of two ways: (1) it **holds a private key** and signs locally (mint a token via create_auth_token, or…
computeStatusQueries job status (`getComputeStatus`). Requires auth. ## After starting: poll to completion, fetch output — do NOT ask between polls Call **computeStatus** every ~5–10s until terminal, then fetch the result without asking. Status…
getComputeResultStreams a compute result file and returns it as base64 (`getComputeResult`). Requires auth. ## Identity modes for an agent An agent acting for a user proves identity in one of two ways: (1) it **holds a private key** and signs locally…
downloadNodeLogsFetches operator logs from the node (`getLogs`). Requires auth. ## Identity modes for an agent An agent acting for a user proves identity in one of two ways: (1) it **holds a private key** and signs locally (mint a token via…
createPersistentStorageBucketCreates a bucket (`persistentStorageCreateBucket`). Requires auth. ## Node capability check (required first) Before **createPersistentStorageBucket**, **getPersistentStorageBuckets**, **listPersistentStorageFiles**…
getPersistentStorageBucketsLists buckets for an owner (`persistentStorageGetBuckets`). Requires auth. ## Node capability check (required first) Before **createPersistentStorageBucket**, **getPersistentStorageBuckets**, **listPersistentStorageFiles**…
listPersistentStorageFilesLists files in a bucket (`persistentStorageListFiles`). Requires auth. ## Node capability check (required first) Before **createPersistentStorageBucket**, **getPersistentStorageBuckets**, **listPersistentStorageFiles**…
getPersistentStorageFileObjectReturns the node's `PersistentStorageObject` descriptor for a bucket file (`persistentStorageGetFileObject`). Requires auth. **This is the intended way to obtain the `fileObject` for a persistent-storage dataset in a compute job:** call…
deletePersistentStorageFileDeletes a file from a bucket (`persistentStorageDeleteFile`). Requires auth. ## Node capability check (required first) Before **createPersistentStorageBucket**, **getPersistentStorageBuckets**, **listPersistentStorageFiles**…
get_download_feesRuns `initialize` / `getFees` for a dataset service file. **No auth.** Returns provider pricing / validation (`ProviderInitialize`) before download. **Returns:** Node-dependent fee / initialization object.
download_asset_fileStreams a file over P2P (`download` / `getDownloadUrl`). Requires auth. Returns **base64** of file bytes plus length (large assets → large JSON). ## Identity modes for an agent An agent acting for a user proves identity in one of two…
p2p_encryptEncrypts data via the node (`encrypt`). Requires auth. ## Identity modes for an agent An agent acting for a user proves identity in one of two ways: (1) it **holds a private key** and signs locally (mint a token via create_auth_token, or…
check_did_filesLists file entries for a DID + service (`checkDidFiles` / `fileInfo`). **No auth.** **Returns:** `FileInfo[]`.
create_auth_tokenMints a node JWT via `createAuthToken`. The token's identity is the **consumer** for later compute calls. **Mint once per session, reuse the JWT.** Buckets/jobs/results are owned by the consumer address; re-minting (especially…
policy_server_passthroughForwards a policy-server request over P2P (`PolicyServerPassthrough`). Shape is node- and integration-specific. **Returns:** Node response object.
policy_server_initialize_verificationInitializes policy-server verification (`initializePSVerification`, `PolicyServerPassthrough`). **Returns:** Node response object.
compute_streamable_logsFetches streamable job logs (`getComputeStreamableLogs`) and returns **base64** of the collected bytes (same framing as compute result streaming). ## Identity modes for an agent An agent acting for a user proves identity in one of two…
upload_persistent_storage_fileUploads file bytes to a bucket (`persistentStorageUploadFile`). Requires auth. Body is sent as one LP chunk from **contentBase64**. ## Node capability check (required first) Before **createPersistentStorageBucket**…
fetch_node_configCalls `fetchConfig`. **Operator-only:** Misuse can break or leak node configuration. Payload must match ocean-node signing expectations for `fetchConfig` / `pushConfig`. **Returns:** Node-dependent (often encrypted or signed config blob).
push_node_configCalls `pushConfig`. **Operator-only:** Misuse can break or leak node configuration. Payload must match ocean-node signing expectations for `fetchConfig` / `pushConfig`.
is_valid_providerReturns whether the peer responds to STATUS with a provider address (`isValidProvider`). **No auth.**
resolve_peer_multiaddrLooks up a dialable multiaddr for a libp2p peer id (connections, peer store, then DHT). Uses the MCP server’s local P2P stack — **not** a remote ocean-node call.
list_discovered_peersReturns peers from the local peer store (`getDiscoveredNodes`). **No remote node target.** Requires P2P initialized on this MCP process.
cid_from_raw_stringSHA-256 raw CID for a UTF-8 string (`cidFromRawString`) — same hashing as **find_provider** content keys. **No network call.**
findServiceEnvironmentsLists a node's compute environments and reports which can actually host a **service** (`getComputeEnvironments` → `features.services !== false`, plus the practical filters that turn "advertised" into "startable"). **No auth.** Beyond the…
findServiceNodesFans `findServiceEnvironments` out across several peers and returns those with at least one service-capable environment. **No auth.** Use this to answer "which node can run my service?". #1408 adds **no DHT advertise string for…
getServiceTemplatesReturns the node's service template catalogue (`serviceGetTemplates`). **No auth.** **These are informational.** The catalogue is **curated by the node owner** — a suggested, explicitly **non-exhaustive** set of services known to run…
estimateServiceCostClient-side cost **estimate** for a service, plus a ready-made `payment` object you can hand straight to **escrow_preflight**. **No auth**, no chain writes. **There is no server-side quote for services** (no `initializeService`), so this…
serviceStartStarts a **paid, long-running container service** (`serviceStart`). Requires auth. **This returns before the service is up.** You get a `serviceId` and status `Starting (10)` immediately; escrow lock → image pull/build + vulnerability…
serviceStatusOwner-scoped status for one service or all of yours (`serviceGetStatus`). Requires auth. Omit `serviceId` for every service you own on this node. Decorates each job with a human `statusLabel` (including `45 Restarting`), `expiresAtIso`…
getServicesLists services on the node (`serviceList`). Requires auth. 🚩 **This is authenticated but NOT owner-scoped.** Any consumer identity sees **every owner's** services. **Do not present these as the user's own services** — use `serviceStatus`…
serviceExtendExtends a service's paid window (`serviceExtend`). Requires auth. Takes a **new escrow lock + claim** for the additional window. **Pricing matches the node exactly:** it bills `additionalDuration` **alone** (not the new total), priced off…
serviceRestartRestarts a service (`serviceRestart`). Requires auth. **Free** — no new escrow lock — but needs a **claimed** start payment (check `paymentClaimed` on `serviceStatus`; a service whose start payment was never claimed cannot be restarted…
serviceStopStops a service's container (`serviceStop`). Requires auth, owner-gated. ⚠️ **This does not save money and does not free capacity.** The cpu/ram/gpu and host ports stay **reserved until `expiresAt`**; only `Expired (75)` releases them…
serviceLogsCollects a service container's logs (`serviceGetStreamableLogs`). Requires auth, owner-scoped. Only available while the service is `Running (40)` or `Error (99)` — otherwise the node returns `404`. Returns **decoded text** when the…
get_balanceGets the native ETH balance of an EVM account.
get_transaction_countGets the transaction count (nonce) for an EVM account.
get_transactionGets an EVM transaction by hash (if available on the connected RPC).
get_transaction_receiptGets an EVM transaction receipt by hash (if mined).
broadcast_transactionBroadcasts a raw signed EVM transaction to the configured chain provider and returns the resulting transaction response.
get_erc20_token_infoReads `decimals`, `symbol`, and `name` from an ERC-20 token contract (read-only). Use this to denominate raw amounts (e.g. `payment.amount` from initializeCompute, `escrow_get_user_funds`) into human-readable units before showing them to…
escrow_get_fundsReads total escrowed funds for a payment token from an Escrow contract (read-only).
escrow_get_user_fundsReads escrowed funds for a payer and token from Escrow.getUserFunds (read-only).
escrow_get_user_tokensReads payment token addresses for which the payer has escrow records via Escrow.getUserTokens (read-only).
escrow_get_locksReads escrow locks for token + payer + payee via Escrow.getLocks (read-only).
Первые 60 из 93, в порядке сервера.
Как подключить
Добавьте сервер в конфиг MCP-клиента. Claude Desktop, Cursor и большинство других клиентов понимают такой вид:
{
"mcpServers": {
"oncompute": {
"type": "http",
"url": "https://mcp.oncompute.ai/mcp"
}
}
}Подключить
Claude Code, в терминале
claude mcp add --transport http oncompute https://mcp.oncompute.ai/mcpДобавить в CursorДобавить в VS Code
claude.ai, ChatGPT и другие клиенты: добавьте https://mcp.oncompute.ai/mcp как свой коннектор в настройках.
Каждую строку нашла программа: запись в реестре, ответ самого сервера, разобранная спецификация. Если строки нет, мы этого не нашли; это не значит, что этого нет.
Cookie
Прежде чем засчитать визит
Аналитика и измерение рекламы показывают, какие страницы работают и какая наша реклама приносит результат: Google Analytics и Google Ads, пиксель Meta, Яндекс Метрика и один наш собственный идентификатор. До вашего ответа ничего не сохраняется, а после отказа сайт работает так же.