Physical Capability Cloud
network.capability/physical-capability-cloud · v2.19.0 · MCP 2025-11-25
Discover, hire, and verify real-world physical capability through MCP.
Reachability
reachable
checked 2026-07-14 03:29 UTC
Registry status active
Tools pinned 255
90784294d753
Tools last changed
unchanged since first capture 2026-07-14
Provenance
Registry namespace network.capability
(domain verified by the official registry)
Repository
github.com/lamasu/physical-capability-cloud
Website
https://capability.network
Remote endpoints
https://capability.network/mcp (streamable-http)
Observed changes
| When (UTC) | Event | Detail |
|---|---|---|
| 2026-07-14 03:29 | first capture | 255 tools pinned |
Pinned tool definitions (255)
| Tool | Description |
|---|---|
| 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.... |
| 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. |
| 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. |
| 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. |
| 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. |
| setup_validate | Validate a kernel config (20+ checks: JSON structure, device connectivity, adapter compatibility). Returns validation errors and warnings. |
| setup_register_device | Register a device in the database with adapter config and capabilities. Part of Step 3 in the onboarding flow. |
| 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. |
| setup_status | Comprehensive setup status across 6 categories: gateway, database, adapters, chain, storage, identity. Use to confirm everything is green before going live. |
| list_capability_types | List all capability types registered on the network (FDM, SLA, CNC, HPLC, etc.) with metadata. |
| search_capabilities | Search capability templates by type or keyword. Returns templates with pricing, assurance tiers, and availability. |
| get_build_options | Get configuration options for a capability type (materials, dimensions, tolerances, assurance tiers). Use before calling calculate_price. |
| calculate_price | Calculate price for a capability configuration. Returns base price, tier premiums, and estimated total cost. |
| build_contract | Build and submit a capability contract with on-chain milestone escrow. Returns job ID and escrow address. |
| list_kernels | List all Shop Kernels on the network with status and capability types. Optionally filter by status. |
| get_kernel | Get kernel details including full capability objects, devices, and queue. |
| get_kernel_devices | List all devices registered under a specific kernel, including adapter configs and device types. |
| get_kernel_jobs | List all jobs submitted to a specific kernel, including job status and progress. |
| create_kernel | Register a new Shop Kernel (physical site) on the PCC network. Part of Step 2 in the onboarding flow. |
| list_jobs | List all jobs with status. Optionally filter by kernelId or status. |
| get_job | Get job details including progress, evidence bundles, and milestones. |
| update_job_status | Update a job's status and optional progress percentage. Used by kernels to report job progress. |
| list_escrows | List escrow contracts with milestones and bonds. Optionally filter by status. |
| 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. |
| 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. |
| get_escrow_events | Get on-chain event history for an escrow contract. Returns funding, release, dispute, and bond events. |
| get_token_balance | Read an ERC-20 token balance for an account address from the blockchain. |
| get_token_allowance | Read the ERC-20 token allowance granted by an owner to a spender from the blockchain. |
| get_escrow_dispute | Read dispute state for a specific milestone from the blockchain. |
| 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. |
| fund_escrow | Fund an escrow contract on-chain. The payer must have already approved the token transfer (use approve_token first). Returns transaction hash. |
| approve_token | Approve ERC-20 token spending for an escrow contract on-chain. Call this before fund_escrow. Returns transaction hash. |
| release_milestone | Release a milestone payment on-chain after the challenge window has expired. Returns transaction hash. |
| file_escrow_dispute | File a dispute against a milestone on-chain. Challenger must post a bond and provide evidence hash. Returns transaction hash. |
| deposit_bond | Deposit an operator bond for a milestone on-chain. Required for Assurance Tier 3 jobs. Returns transaction hash. |
| 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. |
| 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. |
| archive_evidence | Archive an evidence bundle to IPFS/Storacha for permanent decentralized storage. Returns the content-addressed CID. |
| get_evidence_bundle | Get an encrypted evidence bundle by its bundle ID. Returns the encrypted payload and key capsules. |
| grant_evidence_access | Grant a new recipient access to an encrypted evidence bundle. Creates a re-encrypted key capsule for the recipient. |
| list_evidence_grants | List all evidence access grants for an address. Returns bundles the address has been granted access to. |
| 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. |
| get_bundle_ipfs | Get IPFS CIDs for a bundle — returns the primary CID, metadata CID, and Filecoin deal ID if available. |
| retrieve_ipfs | Retrieve raw data from IPFS by CID. Used to fetch archived evidence bundles from decentralized storage. |
| get_lit_conditions | Get Lit Protocol access conditions for a Lit-encrypted evidence bundle. Returns the conditions that gate decryption. |
| lit_decrypt | Decrypt a Lit Protocol-encrypted evidence bundle using a Lit auth signature. Returns the decrypted bundle payload. |
| verify_evidence_zk | Verify a ZK proof by its proof ID. Checks the proof against its verification key and public inputs. |
| commit_evidence | Create a Merkle commitment for an evidence bundle hash. Used as the first step in ZK proof generation for Tier 3 assurance. |
| get_telemetry_stats | Get aggregate pipeline telemetry statistics including phase timings, success rates, and throughput metrics across all jobs. |
| get_active_telemetry | List currently active jobs with their current pipeline phase and telemetry status. |
| get_job_telemetry | Get full event timeline for a specific job — all pipeline phase transitions with timings and metadata. |
| get_telemetry_logs | Query structured logs with filters for level, source, jobId, kernelId, time range, and full-text search. |
| emit_telemetry | Manually emit a telemetry event for a job pipeline phase. Used by kernels and agents to report execution progress. |
| submit_for_human_verification | Submit an evidence bundle for human verification. Selects a panel of verifiers from the network and returns assigned verifier IDs. |
| get_verification_assignments | Get pending verification assignments for a verifier node. Returns requests this verifier has been assigned but not yet responded to. |
| get_verification_status | Get verification status for a request. Returns vote tally, consensus state, dispute list, and pending response count. |
| respond_to_verification | Submit a verifier's verdict for a verification request. Returns consensus state after this vote. |
| dispute_verification | File a dispute against the consensus verdict. Only verifiers who submitted a response can dispute. Requires additional evidence CID. |
| 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. |
| 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. |
| distribute_royalties | Set revenue splits for an IP asset among stakeholders (designer, operator, verifier, assembler, curator). Splits must sum to 100. |
| pay_ip_royalty | Pay royalties to an IP asset vault. The payer sends tokens that flow to stakeholders via the royalty splits. |
| claim_ip_revenue | Claim earned revenue from an IP asset vault. Returns the claimed amount and transaction hash. |
| get_ip_revenue | Get a revenue snapshot for an IP asset — total earned, pending claims, and recent payments. |
| get_ip_lineage | Get the full IP lineage chain for an asset — parent capabilities and all derivative job registrations. |
| get_capability_ip | Get the Story Protocol IP registration for a capability by its capability ID. |
| raise_ip_dispute | Raise a Story Protocol IP dispute against an asset. Provide evidence hash and reason. |
| list_protocols | List protocol templates in the library. Filter by tags, required capabilities, search query, or status. |
| get_protocol | Get protocol template details by ID. Returns steps, transfers, parameters, and metadata. |
| create_protocol | Create a new protocol template draft. Returns the new template ID. |
| update_protocol | Update an existing protocol template (must be in draft status). Returns updated name and version. |
| publish_protocol | Publish a draft protocol template, making it visible in the protocol library for others to discover and use. |
| fork_protocol | Fork a protocol template to create your own version with parameter overrides. Returns the new fork ID. |
| get_protocol_forks | List all forks of a protocol template. Shows who forked it and what parameters they changed. |
| validate_protocol | Validate a protocol template against a specific kernel — checks capability availability, transfer compatibility, and automation level feasibility. |
| list_protocol_runs | List protocol runs. Filter by status or kernelId. |
| get_protocol_run | Get protocol run status including step progress, transfer status, current phase, and evidence hashes. |
| create_protocol_run | Instantiate a protocol template as a run on a specific kernel with given parameter values. |
| start_protocol_run | Start execution of a protocol run that is in 'ready' or 'binding' state. |
| pause_protocol_run | Pause a running protocol run. Use resume_protocol_run to continue. |
| resume_protocol_run | Resume a paused protocol run from where it stopped. |
| cancel_protocol_run | Cancel a protocol run. Cannot be cancelled once completed or already cancelled. |
| get_workflows | List active instrument workflows in the orchestrator. Optionally filter by status. |
| get_workflow | Get detailed workflow information including steps, node assignments, and progress. |
| get_transfer_graphs | Get resource transfer graphs showing instrument topology, transfer edges, and mechanisms for all kernels. |
| list_automation_status | List automation status for all instrument transfer pairs. Shows current automation level, episode count, and training readiness. Filter by kernelId. |
| get_automation_status | Get automation status for a specific instrument-to-instrument transfer pair. |
| record_episode | Record a transfer episode for a node pair. Increments episode count toward VLA training threshold. |
| advance_automation | Advance the automation level for a transfer pair (manual → teleoperated → pilot_operated → vla_assisted → fully_autonomous). Requires sufficient training episodes. |
| list_transfer_agents | List all transfer agents (robots and human operators) available for instrument-to-instrument transfers. |
| get_logistics_overview | Logistics hub overview: active shipments, pending installations, and upcoming bookings. |
| get_shipments | List equipment shipments with tracking status. Optionally filter by status. |
| create_shipment | Create a new equipment shipment with origin, destination, package details, and provider. |
| get_shipment_quote | Get shipping quotes from logistics providers based on origin, destination, weight, and priority. |
| get_installations | List equipment installation orders with step progress and status. |
| get_space_bookings | List space bookings for hosting equipment. Optionally filter by status or space. |
| search_spaces | Search for lab/workshop hosting spaces. Filter by size, access schedule, and other requirements. |
| get_space | Get detailed information about a hosting space including power, amenities, safety features, and pricing. |
| match_spaces | Find hosting spaces that match specific machine requirements (voltage, area, etc.). Returns scored matches. |
| get_marketplace_overview | Equipment marketplace overview with demand/supply metrics across all capability types. |
| get_equipment_classes | List equipment classes (FDM printers, CNC mills, etc.) with market snapshot data including utilization, demand, and pricing. |
| get_demand_supply | Get network-wide demand vs supply timeline data for capacity planning and market analysis. |
| calculate_roi | Calculate ROI projection for onboarding equipment. Returns month-by-month revenue, cost, and break-even analysis. |
| get_operator_dashboard | Operator dashboard overview: machines, earnings summary, and maintenance alerts. |
| get_operator_machines | List all machines registered under the operator account with utilization and uptime stats. |
| get_operator_earnings | Get operator earnings breakdown over a time period. Includes daily earnings and cumulative totals. |
| get_operator_certs | List operator certifications (OSHA, safety training, PCC network certs) with validity status. |
| get_sensor_channels | List all registered sensor channels across kernels. Returns channel descriptors with units and ranges. |
| get_kernel_sensors | Get sensor channels for a specific kernel. Returns live channel descriptors. |
| get_settlement_status | Get settlement pipeline status including pending operations count, total value queued, and smart account address. |
| get_settlement_epochs | Get settlement epoch history showing past batch settlements with timing and operation counts. |
| get_depin_stats | DePIN treasury, soulbound capability certificates, and current reward epoch stats. |
| 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. |
| onboard_machine | Register a new machine on the PCC network. Provide machine details to create a registration record. |
| analyze_machine_docs | AI analysis of machine documentation. Upload docs to get suggested capabilities, extracted specs, materials, and tolerances. |
| redeem_invite | One-click agent onboarding with an invite code. Provisions wallet, identity, LLM access, and PCC tools in a single call. |
| check_invite | Validate an invite code before redeeming it. Returns whether the code is valid and what it includes. |
| list_batches | List active and completed settlement batches. |
| list_evidence | List encrypted evidence bundles stored in the gateway. |
| 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. |
| list_bounties | List open bounties for capabilities the network needs. Operators can claim these to earn rewards by onboarding new capabilities. |
| claim_bounty | Claim a bounty to onboard a new capability. The operator commits to registering the capability and completing verification. |
| verify_bounty | Verify bounty completion by scoring the delivered capability against requirements. |
| get_top_demand | Get top demand signals aggregated by capability type. Shows which capabilities are most wanted on the network. |
| get_bounty_leaderboard | Get the bounty hunter leaderboard showing top operators by bounties claimed and verified. |
| create_investment_pool | Create an investment pool for a capability bounty. Stakers earn future protocol fees when the capability goes live. |
| stake_in_pool | Stake USDC or credits into a capability investment pool. |
| get_pool_earnings | Check earnings from capability investment pools for a staker address. |
| get_pool | Get details of a specific investment pool including stakes, status, and revenue share terms. |
| list_pools | List all investment pools. Optionally filter by status or capability type. |
| close_pool | Close an investment pool to new stakes. Pool enters sunset phase. |
| claim_pool | Operator claims an investment pool reward after capability verification. |
| convert_bounty_to_pool | Convert an existing bounty into an investment pool. Allows community staking toward the bounty's capability. |
| get_subnet_status | Get Bittensor verification subnet health, agent bridge status, and network connectivity. |
| get_subnet_miners | List verification subnet miners on the Bittensor network. Returns miner addresses, scores, and leaderboard positions. |
| list_conversations | List agent-to-agent conversations showing topic, participants, message count, and status. |
| submit_feedback | Submit a bug report, suggestion, or general feedback about the PCC network. |
| report_anomaly | Report a detected anomaly — protocol failure, evidence mismatch, stuck job, or suspicious behavior. All agents on the network are notified. |
| get_unresolved_anomalies | List all unresolved anomalies on the network. Filter by severity, category, or target agent. |
| get_agent_anomalies | Get anomalies involving a specific agent, plus their trust impact score. |
| resolve_anomaly | Mark an anomaly as resolved with a resolution note. |
| get_anomaly_stats | Get aggregate anomaly statistics — total, unresolved, by severity, by category. |
| report_protocol_failure | Report a protocol failure — when a step in the evidence/escrow/verification pipeline breaks. System may auto-recover. |
| 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. |
| pcc_dht_announce | Announce capabilities to the DHT network. Signs the announcement with your node's Ed25519 key and broadcasts to connected peers. |
| pcc_dht_peers | List known DHT peers and their connection status. Shows which nodes are currently connected to the gossip network. |
| 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,... |
| 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. |
| pcc_scope_audit | Get the audit trail for an execution scope — every tool call made under this scope, with validation results, timestamps, and outcomes. |
| 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. |
| 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. |
| 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. |
| 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. |
| pcc_chat_history | Get chat history with a kernel. Returns messages between agents, operators, and users for a specific kernel. |
| approve_registration | Approve a submitted machine registration. Moves it from 'submitted' to 'approved' status, enabling the operator to activate and start accepting jobs. |
| reject_registration | Reject a machine registration with a reason. The operator can see the rejection reason and resubmit. |
| activate_registration | Activate an approved registration, making the operator's equipment live on the network and ready to accept jobs. |
| 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... |
| list_registrations | List all machine registrations on the network. See pending, approved, active, and rejected registrations. Public endpoint — no auth required. |
| get_registration | Get details of a specific machine registration by ID, including capabilities, pricing, operator info, and current status. |
| 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... |
| 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... |
| 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 —... |
| 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. |
| 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. |
| 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. |
| 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. |
| 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. |
| 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. |
| 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. |
| 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. |
| 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. |
| marketplace_get_listing | Get full details of a specific supplies/materials marketplace listing by ID. Returns pricing, availability, lead time, location, and tags. |
| 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. |
| marketplace_update_listing | Update an existing supplies/materials listing (price, stock status, description, etc.). Pass only the fields you want to change. |
| marketplace_delete_listing | Remove a supplies/materials listing from the marketplace. The listing is immediately hidden from search results. |
| 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. |
| marketplace_list_orders | List marketplace supply orders. Filter by buyerId, sellerId, or status. Returns order history with pricing and status. |
| marketplace_get_order | Get details of a specific supply order including the associated listing details, quantity, total price, status, and optional escrow address. |
| 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. |
| operator_poll_jobs | Operator polls for pending jobs assigned to their kernel. Returns queued jobs ready for execution. Used by pcc-node daemon. |
| operator_push_evidence | Operator pushes evidence bundle from a completed job execution. Contains device ID, execution timestamp, result payload, and event timeline. |
| operator_heartbeat | Operator sends heartbeat with capability re-announcement. Keeps the kernel alive on the network and updates available capabilities. |
| operator_update_job_status | Operator updates job status during execution (in_progress, completed, failed). Called by pcc-node as jobs progress. |
| 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,... |
| 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). |
| pcc_job_settlement | Get settlement status for a completed job: escrow address, evidence hash, milestones with amounts and status, paid amount, currency, and linked negotiation session. |
| 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. |
| 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... |
| 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,... |
| pcc_list_requests | List all capability requests with optional filtering. Shows status, decomposed DAG summary, estimated costs, and timelines. |
| 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. |
| 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. |
| 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. |
| 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. |
| 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. |
| 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. |
| 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. |
| 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. |
| 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'. |
| pcc_generate_ui | Generate a dynamic visual interface and serve it locally via pcc-node's UI server (localhost:3200). Supports built-in templates (plate-layout, protocol-builder, job-status, camera-viewer, device-config) or custom HTML. The UI appears in... |
| pcc_oracle_status | Check if the PCC verification oracle is online. Returns the oracle's EIP-712 signing address and chain ID. The oracle is required for all escrow settlements — no attestation means no fund release. |
| pcc_oracle_verify | Submit evidence for oracle verification. The oracle checks: evidence exists, hash matches, tier requirements met, no replay, operator identity valid. Returns a signed EIP-712 attestation that the escrow contract requires to release... |
| pcc_protocol_fee | Get the current protocol fee rate (2.35%, immutable) and fee recipient address. The fee is hardcoded in the PCCProtocol smart contract — no admin, no governance, no upgrade can change it. |
| create_capability | Register a capability instance for a kernel. Required before submitting jobs — the gateway needs at least one capability per kernel. Creates a liquid-handler, fdm, cnc-3axis, or other capability type. |
| kernel_heartbeat | Send a per-kernel heartbeat to keep the kernel marked online. Used by pcc-node daemons as an alternative to the operator relay heartbeat. |
| kernel_announce_capabilities | Announce capabilities for a kernel. Used by pcc-node daemons after hardware detection to register what the kernel can do. |
| send_diagnostics | Upload an encrypted diagnostic bundle when the operator's node has problems. The bundle is encrypted client-side with a retrieval code the operator must share with support before logs can be read. Use this when the operator reports... |
| send_support_message | Send an operator support message to the PCC team. Creates a new support thread or appends to the operator's existing open thread. Can optionally attach a diagnostic retrieval code (from send_diagnostics) so support staff can decrypt... |
| check_support_replies | Check for admin replies on the operator's support threads. Call this periodically or when the operator asks 'did they respond yet?'. Returns all threads for this kernel and a hasUnreadReplies boolean indicating new admin messages. |
| reply_to_support_thread | Reply to an existing support thread. Use when the operator wants to add information to a thread started earlier. Needs the threadId from check_support_replies or the original send_support_message response. |
| pcc_capture_challenge | Issue a fresh block-anchored CaptureNonceChallenge for a job. The operator's device must render this nonce into the captured media (QR code, audio tone, etc.) before calling pcc_capture_upload. The nonce is derived from (challengeId,... |
| pcc_capture_upload | Upload a capture (photo / video / audio / sensor clip) with its CaptureManifest for G1..G6 verification. Bytes are base64-encoded inline; optional base64 C2PA manifest bytes can be supplied for CC3+ claims. The server runs the 6-gate... |
| pcc_capture_anchor | Anchor a PASS + anchor-candidate capture verdict to CaptureClassRegistry on-chain (Base Sepolia by default). Rejects FAIL/PARTIAL verdicts. Idempotent — re-submitting the same verdictId returns the existing anchor row. Returns 202... |
| pcc_capture_status | Fetch the combined verdict + on-chain anchor view for a single capture. Mirrors the verifier's DB shape plus the anchor tx metadata (txHash, blockNumber, gasUsed, explorerUrl). Anchor is null if the verdict was never anchored. |
| pcc_list_verdicts | List recent capture verdicts, newest first. Optionally filter by jobId. Default limit is 50, capped at 200 server-side. Returns {verdicts, count, limit, jobId}. |
| pcc_capture_class_registry | Look up a capture's on-chain anchor record in CaptureClassRegistry by its 32-byte captureHash. Returns the registry address, captureHash, and decoded anchor tuple (declaredClass, verifiedClass, manifestHash, submittedBy, jobId,... |
| pcc_verifier_health | Report CaptureVerifier health: which adapters are loaded (c2pa, webauthn, appattest, playintegrity), their staleness status, in-memory challenge cache size, whether CaptureClassRegistry is deployed, and the active PCC_NETWORK. Use this... |
| pcc_orchestrator_list_templates | List the orchestrator templates the dashboard's chat console can drive. Each entry includes slug, display_name, description, produces_kind, capability_class (physical | digital), greeting, and api_base (the route prefix that serves the... |
| pcc_orchestrator_match_capabilities | Heuristic template matcher. Pass a free-text description of what you want to onboard (e.g. 'I run a CNC milling shop' or 'I have a Postgres database with a GraphQL endpoint') and the matcher returns all templates ranked by keyword score... |
| pcc_onboard_session_start | Start a new physical-operator onboarding session. Returns a session_id used by every subsequent /api/onboard/* call. Auth-required. |
| pcc_onboard_session_scrape | Scrape a URL into the running physical-operator onboarding session. Triggers a stealth fetch + structured extraction (machines, hours, services, certifications). Returns a small JSON summary; full extraction is appended to the session's... |
| pcc_onboard_session_ingest_docs | Queue documents (datasheets, SOPs, MOPs, certifications) for ingestion into a physical-operator onboarding session. Document URLs may be local:// for files dropped in the chat console or full https:// URLs. Auth-required. |
| pcc_onboard_session_build_agent | Finalise a physical-operator onboarding session: registers the operator on PCC, mints a wallet, writes the SEO mirror, returns the publication payload (capabilities, operator_id, discovery_url). Idempotent — safe to retry inside the... |
| pcc_onboard_session_status | Coarse status snapshot for a physical-operator onboarding session: current state, 0-100 progress, scraped_count, ingested_count, last_event, publication payload (if built). Cheap — designed for polling from the chat header. Auth-required. |
| pcc_onboard_session_live_data | Full event log for a physical-operator onboarding session — feeds the chat console's activity sidebar. Supports incremental polling via ?since=<unix-millis>. Returns the next cursor on every response. Auth-required. |
| pcc_contributor_register | Register a contributor profile binding a wallet address to a role and a published RateSchedule. Body: address (0x40hex), role (10 ContributorRole values from ADR-12 §2.1 + legacy 'designer'), scheduleHash (0x64hex of a previously... |
| pcc_contributor_list | List all contributor profiles for an address across roles. Returns an array of {id, address, role, scheduleHash, ipId, contributorNftTokenId, metadataUri, registeredAt}. Returns empty array when no profiles exist for the address. |
| pcc_schedule_publish | Publish a sealed off-chain RateSchedule. Computes scheduleHash server-side via the canonical sha256-over-canonical-JSON algorithm (matching the on-chain RateScheduleRegistry.publish() invariant). Idempotent: re-publishing the same... |
| pcc_schedule_get | Fetch a published RateSchedule by its content hash. Returns {schedule, publishedBy} with segments re-validated via Zod, or 404 if not found. |
| pcc_schedule_evaluate | Evaluate a published RateSchedule at a moment, returning the effective bps. Inputs: scheduleHash + now (unix seconds) + optional jobValueCents (piecewise-value) + optional jobsPerDay (adoption-indexed). Returns {scheduleHash, bps,... |
| pcc_training_manifest_set | Set (insert-or-replace) the TrainingManifest for a model IP — the dataset weight map the LicensingEngine walks when distributing payouts to a 'model-author' entry in a CompositionManifest. Dataset weightBps must sum to ≤ 10000 (gateway... |
| pcc_training_manifest_get | Fetch the TrainingManifest for a model IP. Returns the parsed datasets array + manifestHash + createdAt, or 404 if no manifest has been set. |
| pcc_trilobio_build_config | Generate a complete KERNEL_CONFIG JSON for a Trilobio (tcode-api) fleet controller. Wraps `buildTrilobioConfig()` from the @pcc/trilobio npm package. Returns a TrilobioKernelConfig with sensible defaults (pollIntervalMs=3000,... |
| pcc_trilobio_validate_options | Sanity-check operator-supplied Trilobio options before generating a KERNEL_CONFIG. Wraps `validateTrilobioOptions()` from @pcc/trilobio. Catches the common mistakes (malformed URL, missing creds, out-of-range timeouts, invalid... |
| pcc_trilobio_validate_script | Quick lint of a tcode-api Python script before submission to a Trilobio fleet controller. Wraps `validateTcodeScript()` from @pcc/trilobio. Surface check only — NOT a sandbox or sanitizer. Looks for: imports of `tcode_api` (presence... |
| pcc_trilobio_capability_template | Return the `TRILOBIO_CAPABILITY` constant from @pcc/trilobio — a default capability template for a Trilobio fleet controller. Pass to POST /api/capabilities to publish a baseline liquid-handling capability for a kernel hosting a... |
| attach_operator_channel | Attach a notification/dispatch channel to an operator so PCC knows how to ping them when a job lands. The operator's onboarding agent calls this AFTER the conversation that produced the channel record. Transport is a small stable enum... |
| list_operator_channels | List every channel attached to an operator. Returns the full channel records (id, transport, direction, endpoint, describe, enabled flags). Useful for an operator's onboarding agent to confirm what is wired up, and for status dashboards. |
| update_operator_channel | Update an existing channel — toggle enabled, rewrite the describe contract, change the endpoint payload, etc. Merges into the existing record. The operator slug, id, and createdAt are immutable. |
| delete_operator_channel | Remove a channel from an operator. Future jobs will not dispatch to it. Use update_operator_channel with enabled=false to silence temporarily without losing the recipe in `describe`. |
| test_operator_channels | Fire a synthetic job at every enabled channel for an operator so the onboarding agent (and the human watching) can confirm the integration end-to-end before a real job lands. Returns per-channel dispatch results (delivered, ref, warnings). |
| suggest_csd_templates | Bidirectional onboarding: the registry talks back. Describe in plain English what you are trying to set up — 'wood-fired pizza shop in SF', 'Opentrons OT-2 liquid handler', 'same-day SF courier' — and the registry returns N candidate... |
| get_popular_csd_templates | Return CSDs sorted by adoption (usage-count descending). Useful for first-time operators who want to see what kind of capabilities others are publishing. Each entry includes the CSD record plus usage attribution: count, recent adopters... |
| get_operator_status | Four-slot substrate view for an operator: kernels, capabilities (with sla + availability), notification channels, and the per-kernel A2A agent-card URLs. Returns totals and a `missing` list naming any of the four onboarding slots that... |
| propose_composition | Propose a composition — a sequenced DAG of capability instances to satisfy a multi-step outcome under a budget + assurance tier. Accepts either a flat `steps` list or an outcome chain. Returns a candidate plan ranked by `optimizeFor`... |
| get_composition | Retrieve a previously-proposed composition by id. Returns 404 if unknown, 410 if the 30-minute proposal window has expired. Use this to inspect a plan before executing, or to recover a plan id after a restart. |
| execute_composition | Commit a proposed composition: drives the DAG through the workflow engine, each step records a reputation outcome, the composition's reputation is finalized when the run ends. When `PCC_COMPOSE_EXECUTE_REAL=true` is set on the gateway,... |
| pcc_report | Report friction, confusion, or bugs you hit while onboarding. Call this when you get stuck and cannot recover from an error, when a tool description was misleading, when an endpoint returned an unexplained 500, or when you abandoned a... |
| save_dashboard | Save a generated dashboard to the network so the user gets a live, shareable URL: https://capability.network/a/<slug>. Pass a `manifest` — a small declarative DashboardManifest (windows + live-data bindings + actions) conforming to the... |
| get_dashboard | Recall a saved dashboard by its id or slug. Returns the full artifact (manifest + metadata). Use this to reload a dashboard the user asks for again ('open my pizza dashboard') instead of regenerating it — a saved dashboard reloads with... |
| search_dashboards | Discover existing public dashboards before you generate a new one (recall-first — the library accrues; adopt > extend > build for UIs too). Filter by `capabilityType` (e.g. 'pizza.order'), free-text `q` over name/description/types, and... |
| fork_dashboard | Fork an existing dashboard into a new artifact you own, preserving lineage back to the original (the social remix verb). Use this to adapt a popular dashboard rather than build from scratch — e.g. fork a 'watch pizza' dashboard and... |
| update_dashboard | Modify a dashboard you own (owner-only). Replace the manifest or any metadata field; the version increments. Use this to edit a saved surface meaningfully — 'raise budgetUSD to 40', 'add a receipt window', 'make it public'. A replaced... |
| render_pcc_dashboard | Compose a live PCC dashboard for a physical-capability task — pass a DashboardManifest (windows + live data bindings + actions) and it renders as an interactive MCP App. |
Status badge
[](https://toolpin.dev/servers/network.capability/physical-capability-cloud)
Maintain this server? Add the badge to your README — it links your users to this live status page.