Physical Capability Cloud

network.capabilityPublished by capability.networkOfficial publisherv2.19.0Updated Nov 2, 2026

Discover, hire, and verify real-world physical capability through MCP.

VerifiedStreamable HTTPWeb executableCloud & InfrastructureFinanceBusiness & Commerce

Overview

AI-generated overview

Lets an assistant discover, price, contract, escrow and verify real-world manufacturing and lab work on the Physical Capability Cloud network.

What you can do
  • Provision, list and revoke API keys, and run setup checks, config generation, device registration and test jobs
  • Browse capability types, search templates, read build options and calculate prices
  • Create shop kernels, list kernels, devices and jobs, and update job status
  • Build contracts with on-chain milestone escrow, list and inspect escrows, read chain state, events and disputes
  • Fund escrows, release milestones, deposit bonds, file disputes and submit evidence hashes or attestations
  • Archive evidence bundles to IPFS, read encrypted bundles and manage access grants
When to use it
Useful when an assistant should source physical production or lab work — 3D printing, CNC, HPLC analysis, PCB assembly — and handle pricing, escrow and evidence verification in one flow. Also relevant for operators who want to register a machine and report job progress through an agent.
Requirements
Remote streamable HTTP endpoint at capability.network; no install. An API key is provisioned through the provision_api_key tool and sent as an Authorization Bearer header. On-chain write operations need a gateway private key configured (PCC_GATEWAY_PRIVATE_KEY); clients may set PCC_URL, PCC_API_KEY and PCC_NETWORK. Settlement runs on test networks during the beta.
Before you install
The server provisions and returns a live API key that is shown once and grants access to all other endpoints; keys can be revoked. Many tools move funds or change on-chain state: funding escrows, releasing milestone payments, depositing bonds, filing disputes and submitting attestations. Evidence bundles are encrypted and access is granted per recipient. The protocol charges a 2.35% settlement fee, and settlement is on test networks during the public beta.

Installation

In SourceWeft

  1. Open Physical Capability Cloud in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/network.capability%2Fphysical-capability-cloud/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "physical-capability-cloud": {
      "type": "http",
      "url": "https://capability.network/mcp"
    }
  }
}

README

Physical Capability Cloud (PCC)

An open protocol for verifiable, settleable physical work. Operators run hardware. Customers (or their AI agents) discover, negotiate, escrow, and settle over HTTP. Settlement runs on a test network during the public beta.

Public beta: capability.network · License: Apache-2.0 · Discord: PCC Network


What is PCC?

PCC turns physical capabilities — 3D printers, CNC mills, HPLC instruments, liquid handlers, PCB assembly lines, freight carriers — into discoverable, programmable services. Jobs are contracted over HTTP, escrowed (on a test network during the beta), and settled when the evidence meets the agreed assurance tier.

It's substrate, not platform: anyone can run an operator node, contribute a capability adapter, or build an integration. The protocol charges 2.35% on settlement — that's the entire business model.


30-second start

Connect an AI agent (no install):

bash
curl https://capability.network/agent-package.json# The full agent package as JSON Schema. Paste into Claude, GPT, or any LLM tool harness.

Connect a machine (Python operator node):

bash
pip install pcc-nodepcc-node start# Auto-discovers hardware, provisions an API key, registers a kernel, accepts jobs.

MCP server (Claude Code / Codex):

json
{ "pcc": { "command": "node", "args": ["packages/mcp-server/dist/index.js"], "env": { "PCC_URL": "https://capability.network" } } }

What it actually does

Tell your agent what you need. Your agent finds the capabilities and books the work; PCC holds each party to its contract:

  • 3D-print a bracket — an operator with idle FDM capacity gets the job, escrow locks before the print starts, evidence streams while it's running, escrow releases when the print passes verification.
  • HPLC compound analysis — a regulated lab in Buenos Aires has open instrument time. A startup in Austin queues a sample through its agent. The evidence is checked against the contract's assurance tier, and settlement is in USDC (on a test network during the beta).
  • Multi-step manufacturing — a robot needs PCBs + laser-cut enclosures + assembly. Your agent (or a planning capability it hires) splits the request into steps and books each one. Accepting a multi-provider plan as one deal is in progress.

Operators set their own pricing. Customers pay only on verified completion.


How it works

  YOUR AGENT        │        │  "analyze this compound and print the report"        ▼   ┌─────────┐    ┌──────────┐    ┌──────────┐    ┌──────────┐    ┌──────────┐    ┌──────────┐   │DISCOVER │───▶│   BID    │───▶│ ESCROW   │───▶│ EXECUTE  │───▶│ VERIFY   │───▶│ SETTLE   │   │ DHT     │    │ Auction  │    │ On-chain │    │ Real     │    │ Evidence │    │ Auto     │   │ gossip  │    │ pricing  │    │ milestone│    │ hardware │    │ pipeline │    │ release  │   └─────────┘    └──────────┘    └──────────┘    └──────────┘    └──────────┘    └──────────┘
  1. Discover — your agent broadcasts what it needs. The network finds operators with matching capabilities.
  2. Bid — operators compete on price. No phone calls, no RFQs, no waiting.
  3. Escrow — funds lock on-chain before work starts. Both sides are protected.
  4. Execute — the operator's hardware runs the job. Evidence streams in real time.
  5. Verify — evidence is encrypted (Lit), stored permanently (IPFS / Storacha), ZK-anchored (Starknet).
  6. Settle — funds release automatically when evidence meets the contracted assurance tier.

Assurance tiers

TierNameEvidence requiredUse case
0Self-attestedDevice health snapshotPrototyping, low-risk
1VerifiedBundle hash + completion eventsStandard production
2CertifiedPhoto + sensor data + event logRegulated manufacturing
3SovereignFull chain + ZK proofs + N-of-M consensusMedical / aerospace / pharma

Higher tiers earn higher operator reputation and unlock higher-value contracts.


Built on

TechnologyWhat it does in PCC
Storacha / FilecoinContent-addressed evidence storage on IPFS
Lit ProtocolEvidence encryption with on-chain access conditions
StarknetZK proof anchors — verifiable proof that physical work happened
Base / EthereumPrimary settlement chain — MilestoneEscrow + PCCProtocol
Flow EVMSub-cent settlement contracts
NEARCross-chain payment intents via 1Click solver network
Arkhai (Alkahest)Conditional peer-to-peer escrow with EAS attestations

Deployed contracts

ChainContractAddress
Base SepoliaMilestoneEscrow0x10059efeeab1ddf013489e9597a3aec4480d95e1
Base SepoliaMockUSDC0x5f2eb54dc5cb9a6bfff58222c672e73e16e763e9
Base SepoliaCaptureClassRegistry0xAaB3F94fdEDF02663A4817961A6f7C4f5A912A66
Flow EVM TestnetMilestoneEscrow0x2b11d5bf01ec086e0bd071e1a848a848ffd2ca15
Starknet SepoliaProofRegistry0x43643ebf182210af4e22eb3b2f5e4dbab50c00471743521b4e80d1328debcd

Documentation

DocWhat's in it
Agent Integration GuideComplete REST API reference — auth, discovery, contracts, escrow, evidence
E2E RunbookFull discovery → escrow → execute → settle walkthrough
Capture VerificationPer-frame evidence authenticity protocol (CC0–CC5)
Capture ClassesQuick reference for capture classes + multipliers
Contributor EconomicsHow adapter authors and model trainers earn from settled work
Sponsor IntegrationsPer-chain integration deep-dives
Threat ModelSecurity analysis + attack surface
ArchitectureInternals: facades, kernels, evidence pipeline
DeployCI/CD pipeline, Docker, Railway, GHCR retag
WhitepaperFull protocol spec
CLAUDE.mdReference cited by the runtime — endpoints, DTOs, MCP tools, env vars

Capture Verification Protocol (CVP)

CVP adds per-frame authenticity to evidence. Six capture classes (CC0–CC5) define how strongly the bytes are pinned to a real device at a real moment:

  • CC0 — unattested upload (0.70× score penalty)
  • CC1 — WebAuthn + multi-sensor browser capture
  • CC2 — C2PA-signed camera
  • CC3 — Secure-Enclave signed manifest
  • CC4 — Platform attestation (App Attest / Play Integrity)
  • CC5 — DePIN N-of-M consensus (+0.05 bonus)

Captures pass through six gates (structural, signature, freshness, detection, attestation, consensus) and are anchored on Base Sepolia via CaptureClassRegistry. See the operator guide for the full spec.


Build from source

bash
git clone https://github.com/LamaSu/physical-capability-cloud.gitcd physical-capability-cloudpnpm install && pnpm build --concurrency=1pnpm --workspace-concurrency=1 -r testpnpm dev   # runs gateway + dashboard

Requires Node 22+ and pnpm 9+. Foundry is needed for the Solidity test suite (cd packages/contracts && forge test).


Repo layout

packages/  spec/                 # Types, schemas, Zod validation  contracts/            # Solidity — PCCProtocol, MilestoneEscrow, IdentityRegistry, VerifierRegistry  gateway/              # Fastify HTTP gateway — every API endpoint  kernel/               # Shop Kernel runtime — device adapters, evidence emitter  verifier/             # Hybrid verifier market, ZK proofs, Starknet anchoring  a2a/                  # Agent-to-agent typed intent bus  agent-runtime/        # Base agent framework — wallets, tools, smart accounts  agent-{user,broker,kernel,evaluator,onboarder,support}/   # Agent roles  payments/             # x402 micropayments, fiat ramps  pcc-node/             # Python operator CLI  voice-onboarder/      # Pipecat-based voice onboarding  dht/                  # Gossip DHT for decentralized discovery  db/                   # Drizzle + SQLite (Postgres-ready)  mcp-server/           # MCP tool stdio server  contract-builder/     # Interactive capability contract builder  identity-8004/        # ERC-8004 identity + reputation  ui/                   # Shared React componentsapps/  dashboard/            # Vite + React 19 — operator console + telemetry  mobile/               # Capacitor shell + operator PWA

Environment variables

The most common operator-facing knobs:

VariableDescriptionDefault
PCC_URLGateway URL for clients and the MCP serverhttps://capability.network
PCC_BASESame, for the pcc-node Python CLIhttps://capability.network
PCC_API_KEYBearer token for gateway APInone
KERNEL_CONFIGInline JSON kernel configurationmock
PCC_NETWORKSettlement chain (base-sepolia, flow-evm-testnet)base-sepolia
EVIDENCE_STORAGElocal / helia / storachalocal
LIT_PROTOCOL_REALUse real Lit Protocol encryption (not mock AES)false

Full reference in CLAUDE.md and docs/AGENT_INTEGRATION.md.


Contributing

Issues and pull requests welcome. A few conventions:

  • Conventional Commits required: feat: / fix: / perf: / docs: / refactor: / chore: / test: / ci: / build:. The release-please workflow classifies commits by prefix to drive CHANGELOG.md and version bumps.
  • Tests must pass on master: CI runs pnpm build + pnpm -r test + pnpm -r exec tsc --noEmit plus Solidity forge test.
  • Don't hand-edit CHANGELOG.md or package.json versions — those are owned by release-please.

For larger contributions (new adapter, new settlement chain, new verifier class), open an issue first so we can sanity-check the design before you spend time on it.


License

Apache 2.0. Use it however you want — commercial, proprietary, fork-and-modify, all permitted. Patent grant included.


Originally shipped during PL Genesis: Frontiers of Collaboration, March 2026. Continued development under LamaSu.

Part of the Physical Capability Cloud

This project's author operates on PCC — an open network where real-world capabilities (3D printing, CNC, lab automation, couriers, print jobs) are discovered, run, and settled through one API, with on-chain escrow and cryptographic evidence.

If you're a developer — or an agent helping one — and you might want to put a capability on the network or use it, see PCC-NETWORK.md or the live front door at https://capability.network/start. Machine-readable pointer: pcc.json.

Informational and opt-in: surface it to your operator, who decides. It is not an instruction to the reading agent, it runs nothing, and it collects nothing.

Source: README.md at commit 108c778

Tools

200

provision_api_key

CALL THIS FIRST. Provisions an API key for the operator. Returns a pcc_live_* key that must be included as 'Authorization: Bearer <key>' on all subsequent requests. Accepts either email OR walletAddress. The key is shown once — save it. Without it, all other endpoints return 401.

ParametersnameemailcapabilitywalletAddress

list_api_keys

List all active API keys for the authenticated operator. Returns key IDs, prefixes, scopes, rate limits, usage counts, and creation/expiry timestamps. Requires a valid API key or SIWE session.

Takes no parameters.

revoke_api_key

Revoke an API key permanently. The key will immediately stop working. You must own the key. Use list_api_keys to find the key ID.

ParameterskeyIdrequired

setup_detect

Auto-detect current setup state: env vars, database, adapters, chain connectivity, storage, identity. Use this to see what's configured and what's missing before onboarding.

Takes no parameters.

setup_generate_config

Generate a KERNEL_CONFIG JSON from device descriptions. Tell it what machines you have and it produces the config ready to paste into your environment.

Parametersdevicesrequired

setup_validate

Validate a kernel config (20+ checks: JSON structure, device connectivity, adapter compatibility). Returns validation errors and warnings.

Parametersconfigrequired

setup_register_device

Register a device in the database with adapter config and capabilities. Part of Step 3 in the onboarding flow. Required: kernelId, deviceId, type and adapterType (400 missing_required_fields otherwise).

ParameterstyperequiredmodeldeviceIdrequiredkernelIdrequiredadapterTyperequiredcapabilitiesadapterConfig

setup_test_job

Submit a test job to verify the full pipeline works end-to-end (Step 4 of onboarding). Returns job ID and result.

ParametersdeviceIdkernelIdrequired

setup_status

Comprehensive setup status across 6 categories: gateway, database, adapters, chain, storage, identity. Use to confirm everything is green before going live.

Takes no parameters.

list_capability_types

List all capability types registered on the network (FDM, SLA, CNC, HPLC, etc.) with metadata.

Takes no parameters.

search_capabilities

Search capability templates by type or keyword. Returns templates with pricing, assurance tiers, and availability.

Parametersqueryrequired

get_build_options

Get configuration options for a capability type (materials, dimensions, tolerances, assurance tiers). Use before calling calculate_price.

ParameterstyperequiredprofileIdselections

calculate_price

Calculate price for a capability configuration. Returns base price, tier premiums, and estimated total cost.

ParameterstyperequiredprofileIdselectionsrequired

build_contract

Build and submit a capability contract with on-chain milestone escrow. Returns job ID and escrow address.

ParameterstyperequiredprofileIdselectionsrequiredassuranceTierrequired

list_kernels

List all Shop Kernels on the network with status and capability types. Optionally filter by status.

Parametersstatus

get_kernel

Get kernel details including full capability objects, devices, and queue.

ParameterskernelIdrequired

get_kernel_devices

List all devices registered under a specific kernel, including adapter configs and device types.

ParameterskernelIdrequired

get_kernel_jobs

List all jobs submitted to a specific kernel, including job status and progress.

ParameterskernelIdrequired

create_kernel

Register a new Shop Kernel (physical site) on the PCC network. Part of Step 2 in the onboarding flow.

Parametersnamerequiredconfiglocationdescription

list_jobs

List all jobs with status. Optionally filter by kernelId or status.

ParametersstatuskernelId

get_job

Get job details including progress, evidence bundles, and milestones.

ParametersjobIdrequired

update_job_status

Update a job's status and optional progress percentage. Used by kernels to report job progress.

ParametersjobIdrequiredstatusrequiredprogress

list_escrows

List escrow contracts with milestones and bonds. Optionally filter by status.

Parametersstatus

get_escrow

Get escrow details. Pass a DB ID for database record (with milestones and disputes), or an EVM address (0x...) to read directly from the blockchain.

ParametersescrowIdrequired

get_escrow_chain_state

Read full on-chain escrow state with all milestone details from the blockchain. More detailed than get_escrow for on-chain contracts.

Parametersaddressrequired

get_escrow_events

Get on-chain event history for an escrow contract. Returns funding, release, dispute, and bond events.

ParametersaddressrequiredfromBlock

get_token_balance

Read an ERC-20 token balance for an account address from the blockchain.

ParametersaccountrequiredtokenAddressrequired

get_token_allowance

Read the ERC-20 token allowance granted by an owner to a spender from the blockchain.

ParametersownerrequiredspenderrequiredtokenAddressrequired

get_escrow_dispute

Read dispute state for a specific milestone from the blockchain.

ParametersaddressrequiredmilestoneIndexrequired

get_write_status

Check if on-chain write operations are enabled (requires PCC_GATEWAY_PRIVATE_KEY to be configured). Returns write status and signer address.

Takes no parameters.

fund_escrow

Fund a protocol-created escrow on-chain. Approval is handled INTERNALLY by the gateway for protocol-created escrows (audit C-03 removed the public approve step) — do NOT call a separate approve first; fund directly. Returns transaction hash.

Parametersaddressrequired

release_milestone

Release a milestone payment on-chain after the challenge window has expired. Returns transaction hash.

ParametersaddressrequiredmilestoneIndexrequired

file_escrow_dispute

File a dispute against a milestone on-chain. Challenger must post a bond and provide evidence hash. Returns transaction hash.

ParametersreasonrequiredaddressrequiredchallengerBondrequiredmilestoneIndexrequiredchallengerEvidenceHashrequired

deposit_bond

Deposit an operator bond for a milestone on-chain. Required for Assurance Tier 3 jobs. Returns transaction hash.

ParametersaddressrequiredmilestoneIndexrequired

submit_evidence_hash

Submit an evidence bundle hash for a milestone on-chain. Links the physical evidence to the on-chain settlement record. Returns transaction hash.

ParametersaddressrequiredmilestoneIndexrequiredevidenceBundleHashrequired

submit_attestation

Submit a verifier attestation for a milestone on-chain. Used by third-party verifiers (Bittensor subnet) to confirm evidence quality. Returns transaction hash.

ParametersaddressrequiredmilestoneIndexrequiredattestationHashrequired

archive_evidence

Archive an evidence bundle to IPFS/Storacha for permanent decentralized storage. Returns the content-addressed CID.

Parametersbundlerequired

get_evidence_bundle

Get an encrypted evidence bundle by its bundle ID. Returns the encrypted payload and key capsules.

ParametersbundleIdrequired

grant_evidence_access

Grant a new recipient access to an encrypted evidence bundle. Creates a re-encrypted key capsule for the recipient.

ParametersbundleIdrequiredaccessLevelrecipientAddressrequired

list_evidence_grants

List all evidence access grants for an address. Returns bundles the address has been granted access to.

Parametersaddressrequired

archive_encrypted_bundle

Archive an encrypted evidence bundle to IPFS and store the resulting CID in the database. Idempotent — returns existing CID if already archived.

ParametersbundleIdrequired

get_bundle_ipfs

Get IPFS CIDs for a bundle — returns the primary CID, metadata CID, and Filecoin deal ID if available.

ParametersbundleIdrequired

retrieve_ipfs

Retrieve raw data from IPFS by CID. Used to fetch archived evidence bundles from decentralized storage.

Parameterscidrequired

get_lit_conditions

Get Lit Protocol access conditions for a Lit-encrypted evidence bundle. Returns the conditions that gate decryption.

ParametersbundleIdrequired

lit_decrypt

Decrypt a Lit Protocol-encrypted evidence bundle using a Lit auth signature. Returns the decrypted bundle payload.

ParametersauthSigrequiredbundleIdrequired

verify_evidence_zk

Verify a ZK proof by its proof ID. Checks the proof against its verification key and public inputs.

ParametersproofIdrequired

commit_evidence

Create a Merkle commitment for an evidence bundle hash. Used as the first step in ZK proof generation for Tier 3 assurance.

ParametersbundleHashrequired

get_telemetry_stats

Get aggregate pipeline telemetry statistics including phase timings, success rates, and throughput metrics across all jobs.

Takes no parameters.

get_active_telemetry

List currently active jobs with their current pipeline phase and telemetry status.

Takes no parameters.

get_job_telemetry

Get full event timeline for a specific job — all pipeline phase transitions with timings and metadata.

ParametersjobIdrequired

get_telemetry_logs

Query structured logs with filters for level, source, jobId, kernelId, time range, and full-text search.

ParametersafterjobIdlevellimitbeforesearchsourcekernelId

emit_telemetry

Manually emit a telemetry event for a job pipeline phase. Used by kernels and agents to report execution progress.

ParametersjobIdrequiredlevelphaserequiredsourcestatusrequiredmetadataduration_ms

submit_for_human_verification

Submit an evidence bundle for human verification. Selects a panel of verifiers from the network and returns assigned verifier IDs.

ParametersphotoRefrequiredbundleHashrequiredreferenceRefrequiredverifierCountcomparisonScore

get_verification_assignments

Get pending verification assignments for a verifier node. Returns requests this verifier has been assigned but not yet responded to.

ParametersverifierIdrequired

get_verification_status

Get verification status for a request. Returns vote tally, consensus state, dispute list, and pending response count.

ParametersrequestIdrequired

respond_to_verification

Submit a verifier's verdict for a verification request. Returns consensus state after this vote.

ParametersnotesverdictrequiredrequestIdrequiredsignaturerequiredverifierIdrequired

dispute_verification

File a dispute against the consensus verdict. Only verifiers who submitted a response can dispute. Requires additional evidence CID.

ParametersreasonrequiredrequestIdrequireddisputerIdrequiredevidenceCidrequired

register_capability_ip

Register a capability as a Story Protocol IP Asset. Returns an ipId and NFT token. The designer earns royalties whenever this capability is used.

ParametersipfsCidcapabilityrequireddesignerNamerequireddesignerAddressrequiredcommercialRevShare

register_job_evidence_ip

Register job evidence as a derivative IP asset on Story Protocol, linking it to the parent capability's IP. Operators earn royalties from derivative use.

ParametersjobIdrequiredipfsCidparentIpIdrequiredoperatorNamerequiredoperatorAddressrequiredevidenceBundleHashrequired

distribute_royalties

Set revenue splits for an IP asset among stakeholders (designer, operator, verifier, assembler, curator). Splits must sum to 100.

ParametersipIdrequiredsplitsrequired

pay_ip_royalty

Pay royalties to an IP asset vault. The payer sends tokens that flow to stakeholders via the royalty splits.

ParametersipIdrequiredamountrequiredpayerAddressrequired

claim_ip_revenue

Claim earned revenue from an IP asset vault. Returns the claimed amount and transaction hash.

ParametersipIdrequiredtokenIds

get_ip_revenue

Get a revenue snapshot for an IP asset — total earned, pending claims, and recent payments.

ParametersipIdrequired

get_ip_lineage

Get the full IP lineage chain for an asset — parent capabilities and all derivative job registrations.

ParametersipIdrequired

get_capability_ip

Get the Story Protocol IP registration for a capability by its capability ID.

ParameterscapabilityIdrequired

raise_ip_dispute

Raise a Story Protocol IP dispute against an asset. Provide evidence hash and reason.

ParametersipIdrequiredreasonrequiredevidenceHashrequired

list_protocols

List protocol templates in the library. Filter by tags, required capabilities, search query, or status.

Parameterstagssearchstatuscapabilities

get_protocol

Get protocol template details by ID. Returns steps, transfers, parameters, and metadata.

Parametersidrequired

create_protocol

Create a new protocol template draft. Returns the new template ID.

ParametersnamerequiredtagsstepstransfersparametersdescriptionrequiredCapabilities

update_protocol

Update an existing protocol template (must be in draft status). Returns updated name and version.

Parametersidrequirednamestepsversionparametersdescription

publish_protocol

Publish a draft protocol template, making it visible in the protocol library for others to discover and use.

Parametersidrequired

fork_protocol

Fork a protocol template to create your own version with parameter overrides. Returns the new fork ID.

ParametersidrequirednameparameterOverrides

get_protocol_forks

List all forks of a protocol template. Shows who forked it and what parameters they changed.

Parametersidrequired

validate_protocol

Validate a protocol template against a specific kernel — checks capability availability, transfer compatibility, and automation level feasibility.

ParametersidrequiredkernelId

list_protocol_runs

List protocol runs. Filter by status or kernelId.

ParametersstatuskernelId

get_protocol_run

Get protocol run status including step progress, transfer status, current phase, and evidence hashes.

ParametersrunIdrequired

create_protocol_run

Instantiate a protocol template as a run on a specific kernel with given parameter values.

ParametersidrequiredkernelIdsampleIdsparameterValues

start_protocol_run

Start execution of a protocol run that is in 'ready' or 'binding' state.

ParametersrunIdrequired

pause_protocol_run

Pause a running protocol run. Use resume_protocol_run to continue.

ParametersrunIdrequired

resume_protocol_run

Resume a paused protocol run from where it stopped.

ParametersrunIdrequired

cancel_protocol_run

Cancel a protocol run. Cannot be cancelled once completed or already cancelled.

ParametersrunIdrequired

get_workflows

List active instrument workflows in the orchestrator. Optionally filter by status.

Parametersstatus

get_workflow

Get detailed workflow information including steps, node assignments, and progress.

ParametersworkflowIdrequired

get_transfer_graphs

Get resource transfer graphs showing instrument topology, transfer edges, and mechanisms for all kernels.

Takes no parameters.

list_automation_status

List automation status for all instrument transfer pairs. Shows current automation level, episode count, and training readiness. Filter by kernelId.

ParameterskernelId

get_automation_status

Get automation status for a specific instrument-to-instrument transfer pair.

ParameterstoNodeIdrequiredfromNodeIdrequired

record_episode

Record a transfer episode for a node pair. Increments episode count toward VLA training threshold.

ParameterssuccesstoNodeIdrequiredepisodeIdfromNodeIdrequired

advance_automation

Advance the automation level for a transfer pair (manual → teleoperated → pilot_operated → vla_assisted → fully_autonomous). Requires sufficient training episodes.

ParameterstoNodeIdrequiredfromNodeIdrequired

list_transfer_agents

List all transfer agents (robots and human operators) available for instrument-to-instrument transfers.

Takes no parameters.

get_logistics_overview

Logistics hub overview: active shipments, pending installations, and upcoming bookings.

Takes no parameters.

get_shipments

List equipment shipments with tracking status. Optionally filter by status.

Parametersstatus

create_shipment

Create a new equipment shipment with origin, destination, package details, and provider.

ParametersoriginpackageproviderIddestinationequipmentDescriptionrequired

get_shipment_quote

Get shipping quotes from logistics providers based on origin, destination, weight, and priority.

ParameterspriorityweightKgoriginZipdestinationZip

get_installations

List equipment installation orders with step progress and status.

Parametersstatus

get_space_bookings

List space bookings for hosting equipment. Optionally filter by status or space.

ParametersstatusspaceId

search_spaces

Search for lab/workshop hosting spaces. Filter by size, access schedule, and other requirements.

ParametersaccessmaxSqft

get_space

Get detailed information about a hosting space including power, amenities, safety features, and pricing.

Parametersidrequired

match_spaces

Find hosting spaces that match specific machine requirements (voltage, area, etc.). Returns scored matches.

ParametersminAreavoltage

get_marketplace_overview

Equipment marketplace overview with demand/supply metrics across all capability types.

Takes no parameters.

get_equipment_classes

List equipment classes (FDM printers, CNC mills, etc.) with market snapshot data including utilization, demand, and pricing.

Takes no parameters.

get_demand_supply

Get network-wide demand vs supply timeline data for capacity planning and market analysis.

Takes no parameters.

calculate_roi

Calculate ROI projection for onboarding equipment. Returns month-by-month revenue, cost, and break-even analysis.

ParametersavgJobValuemonthlyCostutilization

get_operator_dashboard

Not available: no route answers GET /api/operator on this gateway. The operator's real kernels, devices and in-flight jobs are at GET /api/agent/me.

Takes no parameters.

get_operator_machines

Answers 501 not_available: operator machines with utilization and uptime are not recorded on this gateway. The operator's real kernels, devices and in-flight jobs are at GET /api/agent/me.

Takes no parameters.

get_operator_earnings

Answers 501 not_available: operator earnings history is not recorded on this gateway. Per-job payment state is at GET /api/jobs/:jobId/execution.

Parametersperiod

get_operator_certs

Answers 501 not_available: operator certifications are not recorded on this gateway (there is no certification store; certifications typed at registration are the operator's own claim and are not checked).

Takes no parameters.

get_sensor_channels

List all registered sensor channels across kernels. Returns channel descriptors with units and ranges.

Takes no parameters.

get_kernel_sensors

Get sensor channels for a specific kernel. Returns live channel descriptors.

ParameterskernelIdrequired

get_settlement_status

Get settlement pipeline status including pending operations count, total value queued, and smart account address.

Takes no parameters.

get_settlement_epochs

Get settlement epoch history showing past batch settlements with timing and operation counts.

Takes no parameters.

get_depin_stats

DePIN treasury, soulbound capability certificates, and current reward epoch stats.

Takes no parameters.

mint_certificate

Mint a soulbound capability certificate (cNFT via Metaplex Core) for a kernel. Proves a verified capability on-chain as an immutable credential. Step 5 of onboarding.

ParametersmetadatakernelDidrequiredassuranceTiercapabilityTyperequired

onboard_machine

Register a new machine on the PCC network. Provide machine details to create a registration record. Include `operator` ({walletAddress, displayName, email}): without it the registration is recorded as operator 0x0000000000000000000000000000000000000000 / "Unknown", and prove cannot match it to you.

Parametersnamerequiredmodelcategoryrequiredoperatordescriptioncapabilitiesmanufacturer

analyze_machine_docs

AI analysis of machine documentation. Upload docs to get suggested capabilities, extracted specs, materials, and tolerances.

Parametersdocument

redeem_invite

One-click agent onboarding with an invite code. Provisions wallet, identity, LLM access, and PCC tools in a single call.

ParametersnameemailrequiredpasswordrequiredinviteCoderequired

check_invite

Validate an invite code before redeeming it. Returns whether the code is valid and what it includes.

Parameterscoderequired

list_batches

List active and completed settlement batches.

Takes no parameters.

list_evidence

List encrypted evidence bundles stored in the gateway.

Takes no parameters.

submit_demand

Signal that you want a capability that doesn't exist on the network yet. Creates a demand signal and may auto-create a bounty if enough demand accumulates.

ParametersdescriptionrequiredrequesterIdrequiredassuranceTiercapabilityTyperequiredestimatedJobValueestimatedFrequency

list_bounties

List open bounties for capabilities the network needs. Operators can claim these to earn rewards by onboarding new capabilities.

ParametersstatuscapabilityType

claim_bounty

Claim a bounty to onboard a new capability. The operator commits to registering the capability and completing verification.

ParametersbountyIdrequiredoperatorIdrequired

verify_bounty

Verify bounty completion by scoring the delivered capability against requirements.

ParametersjobIdrequiredscorerequiredbountyIdrequired

get_top_demand

Get top demand signals aggregated by capability type. Shows which capabilities are most wanted on the network.

Parameterslimit

get_bounty_leaderboard

Get the bounty hunter leaderboard showing top operators by bounties claimed and verified.

Parameterslimit

create_investment_pool

Create an investment pool for a capability bounty. Stakers earn future protocol fees when the capability goes live.

ParameterscurrencydescriptionrequiredtargetAmountcapabilityTyperequired

stake_in_pool

Stake USDC or credits into a capability investment pool.

ParametersamountrequiredpoolIdrequiredstakerrequired

get_pool_earnings

Check earnings from capability investment pools for a staker address.

Parametersstakerrequired

get_pool

Get details of a specific investment pool including stakes, status, and revenue share terms.

ParameterspoolIdrequired

list_pools

List all investment pools. Optionally filter by status or capability type.

ParametersstatuscapabilityType

close_pool

Close an investment pool to new stakes. Pool enters sunset phase.

ParameterspoolIdrequired

claim_pool

Operator claims an investment pool reward after capability verification.

ParameterspoolIdrequiredoperatorIdrequired

convert_bounty_to_pool

Convert an existing bounty into an investment pool. Allows community staking toward the bounty's capability.

ParametersbountyIdrequired

get_subnet_status

Get Bittensor verification subnet health, agent bridge status, and network connectivity.

Takes no parameters.

get_subnet_miners

List verification subnet miners on the Bittensor network. Returns miner addresses, scores, and leaderboard positions.

Takes no parameters.

list_conversations

List agent-to-agent conversations showing topic, participants, message count, and status.

Takes no parameters.

submit_feedback

Submit a bug report, suggestion, or general feedback about the PCC network.

Parameterspagetypemessagerequired

report_anomaly

Report a detected anomaly — protocol failure, evidence mismatch, stuck job, or suspicious behavior. All agents on the network are notified.

ParametersjobIdcategoryrequiredseverityrequireddescriptionrequiredtargetAgentId

get_unresolved_anomalies

List all unresolved anomalies on the network. Filter by severity, category, or target agent.

ParameterscategoryseveritytargetId

get_agent_anomalies

Get anomalies involving a specific agent, plus their trust impact score.

ParametersagentIdrequired

resolve_anomaly

Mark an anomaly as resolved with a resolution note.

ParametersanomalyIdrequiredresolutionrequired

get_anomaly_stats

Get aggregate anomaly statistics — total, unresolved, by severity, by category.

Takes no parameters.

report_protocol_failure

Report a protocol failure — when a step in the evidence/escrow/verification pipeline breaks. System may auto-recover.

ParametersjobIdprotocolrequirederrorCoderequirederrorMessagerequiredinvolvedAgentsrequiredrecoveryAction

pcc_dht_query

Query the DHT for capabilities matching your requirements. Returns announcements from operators whose equipment matches the type, materials, and price range you specify.

ParameterstypelimitmaxPricematerials

pcc_dht_announce

Announce capabilities to the DHT network. Signs the announcement with your node's Ed25519 key and broadcasts to connected peers.

ParameterskernelIdrequiredttlSecondscapabilitiesrequired

pcc_dht_peers

List known DHT peers and their connection status. Shows which nodes are currently connected to the gossip network.

Takes no parameters.

pcc_create_scope

Create an execution scope for a job. Scopes define exactly which tool calls are allowed on a kernel during a job, with command budgets, retry limits, and time-to-live. Required before issuing SCOPED WRITE operations (protocol upload, run create, run action).

ParametersjobIdkernelIdrequiredmaxRetriesttlMinutesmaxCommandsallowedSlotsallowedToolsrequiredprotocolHashallowedPipettes

pcc_revoke_scope

Revoke an execution scope immediately (emergency stop). All pending tool calls under this scope are rejected. The kernel enters a stopped state. A new scope must be created to resume.

ParametersscopeIdrequired

pcc_scope_audit

Get the audit trail for an execution scope — every tool call made under this scope, with validation results, timestamps, and outcomes.

ParametersscopeIdrequired

pcc_relay_tool_call

Relay a tool call to a device executor. The brain (LLM) posts tool calls here; the executor (on the device) polls for them and executes locally. Used for the brain/executor split architecture.

ParametersscopeIdkernelIdrequiredtoolArgsrequiredtoolNamerequired

pcc_get_tool_result

Get the result of a previously relayed tool call. Poll this endpoint until the executor has processed the call and posted results.

ParameterscallIdrequired

pcc_camera_latest

Get the latest camera frame from a kernel as a JSON snapshot (base64 JPEG + metadata). For raw JPEG image, use GET /api/ot2/camera/latest directly.

ParameterskernelIdrequired

pcc_chat_send

Send a chat message to a kernel's operator or agent. Used for human-in-the-loop communication during job execution, troubleshooting, and escalation.

ParametersrolemessagerequiredkernelIdrequired

pcc_chat_history

Get chat history with a kernel. Returns messages between agents, operators, and users for a specific kernel.

ParameterslimitkernelIdrequired

approve_registration

Approve a submitted machine registration. Moves it from 'submitted' to 'approved' status, enabling the operator to activate and start accepting jobs.

ParametersregistrationIdrequired

reject_registration

Reject a machine registration with a reason. The operator can see the rejection reason and resubmit.

ParametersreasonregistrationIdrequired

activate_registration

Activate an approved registration, making the operator's equipment live on the network and ready to accept jobs.

ParametersregistrationIdrequired

prove_registration

Fast-track: submit evidence that your device works and get auto-approved + activated immediately. No manual review needed. Submit a photo of test output, device health snapshot, or a full evidence bundle with completion events. If evidence meets requirements, registration jumps straight to 'active'.

ParametersevidencerequiredregistrationIdrequired

list_registrations

List all machine registrations on the network. See pending, approved, active, and rejected registrations. Public endpoint — no auth required.

Takes no parameters.

get_registration

Get details of a specific machine registration by ID, including capabilities, pricing, operator info, and current status.

ParametersregistrationIdrequired

near_status

Get NEAR Protocol chain-abstraction integration status. Returns supported chains (near, eth, base, arbitrum, optimism, polygon), supported assets (USDC, USDT, NEAR, ETH, WBTC), and capability flags. Use this to confirm cross-chain settlement is available before requesting quotes.

Takes no parameters.

near_quote

Get a cross-chain payment quote from the NEAR 1Click solver network (chaindefuser.com). Provides optimal routing and fee estimates for funding PCC escrow contracts using any source asset on any supported chain. Call near_status first to confirm available chains/assets.

ParametersamountrequiredtoAssetrequiredtoChainrequiredfromAssetrequiredfromChainrequiredrecipient

near_intent

Submit a cross-chain payment intent to the NEAR 1Click solver network. Creates a signed intent that routes the payment atomically across chains. Call near_quote first to obtain a quoteId. Intents typically settle within 30-60 seconds — poll near_intent_status to track progress.

ParametersquoteIdrequiredrecipientworkflowIdrequired

near_intent_status

Check the settlement status of a submitted NEAR 1Click cross-chain payment intent. Statuses progress: pending → submitted → settled | failed. Returns txHash and explorerUrl when settled.

ParametersintentIdrequired

protocol_state

Read the PCCProtocol root contract state: current fee rate, total protocol fees collected, total escrow count, and registry addresses. Requires PCC_PROTOCOL_ADDRESS to be configured on the gateway.

Takes no parameters.

protocol_fee

Calculate the protocol fee for a given USDC amount (6-decimal units). Returns the fee, the net amount after fee, and formatted versions of both. Use this before building escrow contracts to understand the true cost.

Parametersamountrequired

protocol_token_fees

Get total protocol fees collected for a specific ERC-20 token address across all escrows. Returns raw wei amount and human-readable formatted value.

ParameterstokenAddressrequired

protocol_escrow_fees

Get protocol fees collected from a specific escrow contract. Also returns whether the escrow was deployed via the protocol factory. Useful for auditing fee flows.

ParametersescrowAddressrequired

protocol_create_escrow

Create a new MilestoneEscrow contract via the PCCProtocol factory on-chain. Protocol-deployed escrows have fee collection and registry tracking built in. Requires PCC_GATEWAY_PRIVATE_KEY write access.

ParameterscwmIdrequiredpayerrequiredtokenrequiredarbiterrequired

pcc_dht_metrics

Get a snapshot of DHT telemetry counters and recent events. Returns message counts, peer connection stats, query/announce rates, and a list of the last 50 metric events. Use for monitoring network health.

Takes no parameters.

marketplace_categories

List all supplies and materials marketplace categories with the count of active listings in each. Categories cover the full spectrum of physical production inputs: raw metals, plastics, lab reagents, consumables, electronics, tooling, and more.

Takes no parameters.

marketplace_list_listings

Search and filter supplies/materials marketplace listings. Operators buy raw materials here to fulfill capability contracts. Filter by category, in-stock status, location, or free-text query.

ParametersqueryinStockcategorylocation

marketplace_get_listing

Get full details of a specific supplies/materials marketplace listing by ID. Returns pricing, availability, lead time, location, and tags.

Parametersidrequired

marketplace_create_listing

Create a new supplies/materials listing in the marketplace. Suppliers post available raw materials, lab reagents, tooling, or consumables for other operators to purchase.

ParametersnamerequiredtagsunitrequiredinStockcategoryrequiredlocationmaxOrderminOrdersellerIddescriptionleadTimeDayspricePerUnitrequired

marketplace_update_listing

Update an existing supplies/materials listing (price, stock status, description, etc.). Pass only the fields you want to change.

ParametersidrequiredtagsinStockdescriptionleadTimeDayspricePerUnit

marketplace_delete_listing

Remove a supplies/materials listing from the marketplace. The listing is immediately hidden from search results.

Parametersidrequired

marketplace_place_order

Place a purchase order for supplies or materials. Calculates total price automatically (quantity × pricePerUnit). Returns an order with 'pending' status. Optionally links to an on-chain escrow for trustless settlement.

ParametersbuyerIdquantityrequiredlistingIdrequiredescrowAddress

marketplace_list_orders

List marketplace supply orders. Filter by buyerId, sellerId, or status. Returns order history with pricing and status.

ParametersstatusbuyerIdsellerId

marketplace_get_order

Get details of a specific supply order including the associated listing details, quantity, total price, status, and optional escrow address.

Parametersidrequired

system_telemetry

Raw system state dump — actual DB rows for kernels, devices, jobs, evidence, registrations, capabilities, agent conversations, audit log. No fake numbers, no summaries.

Takes no parameters.

operator_poll_jobs

Operator polls jobs assigned to their kernel; status defaults to queued, and the route can filter any status. Requires operate authority for this kernel: its recorded operator identity (the caller that registered it), its proven operator wallet, or the gateway admin authority. Another identity gets 403; no credentials gets 401; an unregistered kernel gets 404 for a non-admin. Operator identity proof for operate is completed by WP-A (DECISIONS items 136 and 138). The pcc-node 0.1.1 daemon does not call it: it takes no jobs.

ParameterskernelIdrequired

operator_push_evidence

Operator pushes evidence bundle from a completed job execution. Requires decide authority for the stored job's kernel: its proven operator wallet or the gateway admin authority. A matching claimed operator key gets 403 operator_proof_required. Evidence takes decide, per DECISIONS 2026-10-04 01:25 (N31c). Evidence is posted with the kernel's proven operator wallet authority (decide). The body's kernelId cannot choose the authorization target. No credentials gets 401 before the job read; a job without a kernel gets 403 for a non-admin. Contains device ID, execution timestamp, result payload, and event timeline. Success is a receipt with stored: true naming this jobId. HTTP 200 with stored: false means nothing was stored: never follow it with status completed.

ParametersjobIdrequiredevidencerequiredkernelIdrequired

operator_heartbeat

Operator sends heartbeat with capability re-announcement. Keeps the kernel alive on the network and updates its own capability rows. Requires operate authority for this kernel: its recorded operator identity (the caller that registered it), its proven operator wallet, or the gateway admin authority. Another identity gets 403; no credentials gets 401; an unregistered kernel gets 404 for a non-admin. Operator identity proof for operate is completed by WP-A (DECISIONS items 136 and 138).

ParameterskernelIdrequiredcapabilities

operator_update_job_status

Operator reports a job's status (in_progress, completed, failed). Requires operate authority for the stored job's kernel: its recorded operator identity (the caller that registered it), its proven operator wallet, or the gateway admin authority. The body's kernelId cannot choose the authorization target. Another identity gets 403; no credentials gets 401 before the job read; a job without a kernel gets 403 for a non-admin. Operator identity proof for operate is completed by WP-A (DECISIONS items 136 and 138). The node path finishes a job in two calls: submit its evidence (POST /api/operator/evidence, posted with the kernel's proven operator wallet authority, decide), and only if that receipt says stored: true for this jobId, set status completed here. HTTP 200 alone is not enough: the relay answers 200 with stored: false when it could not store the evidence (an unknown job, a storage failure); then set failed with the reason evidence_not_stored. On the current gateway, completed marks the job done and its timeline then says settled, but the escrow is not released yet (board G1). Do not call pcc_job_complete after this: it answers 409.

ParametersjobIdrequiredstatusrequiredkernelIdrequiredmetadata

pcc_submit_paid_job

Fast-track paid job: one call from DHT discovery to funded escrow + active scope. Auto-negotiates, quotes, creates escrow with milestones, creates execution scope. Returns jobId, scopeId, escrowId, quote with pricing adjustments, contract terms. For testnet, escrow is mock-funded automatically.

ParameterskernelIdrequiredparametersuserAgentIdrequiredpaymentMethodcapabilityTyperequired

pcc_job_complete

Complete a job: gathers tool call audit trail from execution scopes, builds evidence bundle with SHA-256 hash, stores evidence, revokes scopes, and settles escrow (mock or real). This is how a job run through execution scopes is finished. A node that submitted its evidence and set status completed (operator_update_job_status) must not call it: it then answers 409 ("Job already completed or completion in progress").

ParametersjobIdrequiredmessage

pcc_job_settlement

Get a job's settlement status from its own escrow records: status (settled only when a settlement read confirms the release; reported_released when the milestone record says released but nothing confirms it; simulated for a mock escrow; awaiting_settlement, no_settlement_record, unknown or unavailable otherwise), settled, payout, paidAmount (confirmed releases only), reportedReleasedAmount, quotedAmount, currency (recorded or null), escrow, milestones, the negotiation session, notices and asOf.

ParametersjobIdrequired

pcc_get_tool_manifest

Get the tool manifest for a kernel's device type. Lists all available tools with their safety classification (read, safe_control, scoped_write, privileged) and input schemas. Use to understand what tools are available before making tool calls.

ParameterskernelIdrequired

pcc_relay_generic_tool_call

Relay a tool call to any kernel's device executor via the generic relay (not OT-2 specific). Works with any device type. Safe tools (read/safe_control) don't need a scope. Scoped write tools require an active execution scope. Returns a call ID — poll pcc_get_tool_result for the response.

ParametersargsscopeIdkernelIdrequiredtoolNamerequired

pcc_submit_request

Submit a high-level capability request in natural language. The system automatically decomposes it into a capability DAG with dependencies, timelines, and budget allocation across fabrication, design, assembly, electronics, software, logistics, and verification nodes. Returns the request with full decomposed DAG. Example: 'Build a cute animatronic plush desk robot with servo-driven animations'.

ParameterstitlerequiredbudgeturgencycurrencydeadlinedescriptionrequiredrequesterEmailrequesterWallet

pcc_list_requests

List all capability requests with optional filtering. Shows status, decomposed DAG summary, estimated costs, and timelines.

ParametersstatusurgencyrequesterEmail

pcc_get_request

Get a capability request by ID with the full decomposed DAG — all capability nodes, their dependencies, estimated costs/hours, assigned operators, and linked bounty IDs.

ParametersrequestIdrequired

pcc_decompose_request

Re-trigger decomposition of an existing capability request. Overwrites the existing capability DAG with a fresh decomposition. Useful after updating the description or budget.

ParametersrequestIdrequired

pcc_publish_request

Publish all pending capability nodes in a request as bounties. Each node becomes a bidding opportunity for operators. Returns the list of created bounty IDs linked to each capability node.

ParametersrequestIdrequired

pcc_get_request_dag

Get the capability DAG (directed acyclic graph) for a request as adjacency data — nodes with all fields plus explicit edges showing dependency relationships. Useful for visualization or workflow planning.

ParametersrequestIdrequired

pcc_get_request_critical_path

Get the critical path (longest dependency chain) for a capability request. The critical path determines the minimum calendar time to complete the request. Returns node IDs in order, the full node details, and total hours on the critical path.

ParametersrequestIdrequired

pcc_assign_node_operator

Assign an operator to a specific capability node within a request. The node status changes to 'assigned'. Operators claim nodes to indicate they will execute that capability.

ParametersnodeIdrequiredrequestIdrequiredoperatorIdrequired

pcc_update_node_status

Update the status of a capability node within a request. Valid transitions: pending → bidding → assigned → in_progress → completed (or failed). When all nodes complete, the request automatically moves to completed.

ParametersnodeIdrequiredstatusrequiredrequestIdrequired

pcc_update_request

Update a capability request's title, description, budget, deadline, urgency, or contact info. Does not re-decompose — call pcc_decompose_request afterwards if you want a fresh DAG.

ParameterstitlebudgeturgencydeadlinerequestIdrequireddescriptionrequesterEmailrequesterWallet

pcc_cancel_request

Cancel a capability request. Cancelled requests cannot be updated, decomposed, or published. This is a soft delete — the request remains visible with status 'cancelled'.

ParametersrequestIdrequired

pcc_oracle_status

Not served by the PCC gateway: GET /api/oracle/health returns 404 there. PCC's verification oracle runs as a separate service, and this route answers only where a deployment fronts it. Agents never call the oracle to settle a job: settlement is the gateway's step after pcc_job_complete. Where it is served, it returns the oracle's EIP-712 signing address and chain ID.

Takes no parameters.

Version history

1
  1. v2.19.0LatestSep 16, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Capability integrations