Skip to content
Back to search
100
MCP live MCP 2025-11-25 streamable-http

Physical Capability Cloud

network.capability/physical-capability-cloud

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

Watch this dependency

Get before/after evidence when observed tools, schemas, authentication access, availability or the endpoint changes.

Inspect evidence and set up a watch Share public evidence report
Uptime
100.0%
5 direct probes · 30d
Response
936ms
last probe
Tools
256
callable
Resources
4
readable
Prompts
0
available
Score: 100/100
Handshake verified by our own probe.
why this score
pass Answers the MCP handshake 50/50
The handshake and the list calls succeeded on the primary URL.
pass Lists tools, resources or prompts 30/30
256 tools, 4 resources, 0 prompts returned.
pass 3 or more catalogue items 10/10
260 items in total; 3 or more earns these points.
pass Describes itself 10/10
70 characters; more than 30 earns these points.

Tools · 256

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 walletAddre…

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. Required: kernelId, deviceId, type and adapterType (400 missing_required_fields otherwise…

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 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;…

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

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.

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.

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.

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 chec…

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. Include `operator` ({walletAddress, displayName, email}): without it the registration is recorded as…

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 W…

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 bun…

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. U…

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 suppor…

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 typi…

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…

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 hea…

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, …

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 tru…

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 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 tha…

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 ope…

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 i…

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 ope…

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, qu…

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…

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 confi…

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 to…

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 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,…

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 plann…

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 deta…

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…

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_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 ca…

pcc_oracle_verify

Not served by the PCC gateway: POST /api/oracle/verify returns 404 there. PCC's verification oracle runs as a separate service, and this route answers only where a deployment fronts it. Agents never c…

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. NOTE: the gateway currently acknowledges this call but stores nothing, so it does not put any capability on the network. To publish a capability, use create_capabil…

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…

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_diagnosti…

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 …

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 resp…

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 no…

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+ c…

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 ex…

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 v…

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, manife…

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, a…

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_bas…

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 a…

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 ext…

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://…

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). Idemp…

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 pollin…

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.…

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'), schedule…

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 pr…

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). Idem…

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…

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 wei…

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 defau…

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-…

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: …

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 capab…

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…

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…

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 dispa…

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…

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 …

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…

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 candi…

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…

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_EXECUT…

pcc_report

Report a bug, friction, or dead-end you hit while using PCC. Call this the moment you get stuck and cannot recover: a 5xx (its response carries a `report_hint` with pre-filled fields), a 4xx you canno…

pcc_report_attempt

Report one phase of an onboarding attempt, success or failure (attempt reporting contract v1). Send one report when each runbook phase ends, and a final report with phase "session" (with the `phases` …

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 bi…

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 …

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 `…

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. for…

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 win…

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.

render_pcc_dashboard_ir

Compose a live PCC dashboard rendered through the closed, PCC-owned IR (read-only). Pass a DashboardManifest; it renders as an interactive MCP App via the audited closed-IR render path.

pcc.op.capability.request_quote

Price a configured PCC capability (typed operation). Returns the itemized quote for the given capability type + selections. Pure calculation — no funds move and nothing is created. Maps to POST /api/b…

Resources · 4

pcc-dashboard-render

Interactive MCP App view for render_pcc_dashboard. Renders the composed DashboardManifest delivered in the tool result's structuredContent, using the shipped On-Ramp pcc-ui kit.

ui://pcc/dashboard/render
pcc-dashboard-render-ir

Read-only closed-IR MCP App view. Renders the projected DashboardManifest from the tool result's structuredContent through the audited dashboard-ir adapter + validator + renderer (pcc-ir-kit.js, deter…

ui://pcc/dashboard/render-ir
pcc-dashboard-saved

MCP App view for save/get/fork/update_dashboard. Renders the artifact's DashboardManifest delivered in the AUTHENTICATED tool result's structuredContent (never a second anonymous lookup).

ui://pcc/dashboard/saved
pcc-dashboard-gallery

MCP App view for search_dashboards. Renders the list of matching dashboards delivered in the tool result's structuredContent.

ui://pcc/dashboard/gallery

How to use

Add to your Claude Desktop / Cursor / Cline MCP config:

{
  "mcpServers": {
    "physical_capability_cloud": {
      "url": "https://capability.network/mcp",
      "transport": "streamable-http"
    }
  }
}