{"slug": "mcp-and-a2a-are-not-solving-one-crucial-challenge-in-the-post-agi-world-trust", "title": "MCP and A2A are not solving one crucial challenge in the post-AGI world – Trust", "summary": "The VACT-P protocol, a decentralized, model-independent standard for secure coordination among autonomous agents, has been released as a reference implementation (VACT-P-RFC-0001, Core 0.1) to address trust challenges in the post-AGI world. It provides cryptographic accountability, fine-grained delegation, and tamper-evident auditing using DIDs, RFC 8785, and Ed25519 signatures, with SDKs for Python and TypeScript and a three-agent demo. The protocol aims to ensure every agent action is provable and tied to a human or organizational principal, addressing the insufficiency of raw API keys or OAuth tokens for autonomous agents.", "body_md": "Every agent action, provable.VACT is a decentralized, model-independent protocol for secure coordination, delegation, audit, and economic exchange among autonomous agents.\n\nThis repository is the reference implementation of ** VACT-P-RFC-0001**\n(Core 0.1). It implements the Phase 1 roadmap: signed envelopes, Agent Passports, Mandates,\nDelegations, the task state machine, receipts, revocation, and Python + TypeScript SDKs —\nplus a reference HTTP gateway and a runnable three-agent end-to-end demo (spec §32).\n\nAs autonomous agents begin to act independently—hiring other agents, spending money, executing business processes, and reading sensitive files—they transition from tools to autonomous actors. In this environment, raw API keys or standard OAuth tokens are insufficient because they do not verify *context* or *provenance* of actions.\n\nVACT-P introduces a standard, cryptographic, fail-closed trust model that solves these key challenges:\n\n-\n**Accountability & Non-Repudiation**:- Every action can be mathematically tied back to a human or organizational\n**Principal** who authorized it. - You can verify the exact chain of authorization (DIDs and signatures) from the principal down through each intermediary agent.\n\n- Every action can be mathematically tied back to a human or organizational\n-\n**Fine-Grained Dynamic Authorization (Delegation)**:- Instead of sharing master API keys, agents delegate\n*restricted*authority using**Delegations**. - These constraints (actions, resources, budget limit, time bounds) are evaluated and narrowed at each hop. Any attempt to expand authority fails closed automatically.\n\n- Instead of sharing master API keys, agents delegate\n-\n**Tamper-Evident Auditing**:- The protocol produces a sequence of signed\n**Receipts**(Policy, Execution, Evaluation, Settlement) linked via a cryptographic hash-chain. - If an agent tampers with a single byte of execution data or violates a policy, the verification chain breaks.\n\n- The protocol produces a sequence of signed\n-\n**Decentralized & Multi-Agent Standard**:- Built entirely on open standards:\n**DIDs (Decentralized Identifiers)**,** JSON Canonicalization Scheme (RFC 8785)**, and** Ed25519**signatures. - No central database or broker required. Works across different model providers, hosting infrastructure, and programming languages.\n\n- Built entirely on open standards:\n\n```\nMandate → Delegation → Offer/Quote → Task Contract → Policy Decision\n        → Execution Receipt → Evaluation Receipt → Settlement Receipt\n```\n\nVACT-P is designed to be overlayed on top of your existing software, identity, and payment systems without requiring a rewrite:\n\n**did:web**: Bind agent identities to DNS domains you already control (e.g.`did:web:agent.yourcompany.com`\n\n). The public key is served under`/.well-known/did.json`\n\n.**did:key / did:ion**: Integrate with other decentralized identity standards.** Service Mesh / SPIFFE**: Map your internal Kubernetes SPIFFE IDs to DIDs to bridge internal cluster authentication with VACT-P's agent authorization framework.\n\n**API Gateways**: Deploy the reference HTTP gateway (or build custom middleware) behind API gateways like Kong, Traefik, or AWS API Gateway.**Envelope Wrapping**: Intercept incoming HTTPS requests, unpack the VACT-P envelope, verify the signature, and map the headers (e.g.`X-VACT-P-Task-Id`\n\n) to downstream trace headers.\n\n**LangChain / AutoGen / CrewAI**: Integrate the Python or TypeScript SDK into the tools and action hooks of your agent frameworks. Before executing an external tool (e.g., database write), wrap the action in a signed VACT-P task request envelope.\n\n**Stripe / Payment Rails**: Map the** Settlement Receipt**schema to payment processors. When a task evaluates to`PASS`\n\n, trigger Stripe/ACH charges programmatically using the captured task budget.\n\n```\nvact-p/\n├── spec/                  # VACT-P-RFC-0001, JSON Schemas, signed test vectors\n├── sdk-python/            # vact-p-sdk (Python ≥3.10)\n├── sdk-typescript/        # @vact-p-protocol/sdk (Node ≥18, zero runtime deps)\n├── gateway/               # Reference HTTP gateway (spec §25) — stdlib only\n├── examples/              # Three-agent reference flow (spec §32)\n└── Makefile\ncd sdk-python && pip install -e \".[dev]\" && pytest\npython\nfrom vact_p_sdk import Keypair, sign_object, verify_object, make_envelope\n\ncontroller = Keypair.generate(kid=\"did:web:example.com#key-1\")\n\nenv = make_envelope(\n    type=\"vact_p.task.request\",\n    mode=\"async\",\n    sender=\"did:web:client.example\",\n    recipients=[\"did:web:provider.example\"],\n    payload={\"task\": \"summarize\", \"input\": \"urn:sha256:...\"},\n    ttl_seconds=300,\n)\nsigned = sign_object(env, controller)          # JCS + Ed25519 (spec §9.2)\nassert verify_object(signed, controller.public_key)\ncd sdk-typescript && npm install && npm test\njs\nimport { generateKeypair, signObject, verifyObject, makeEnvelope } from \"@vact-p-protocol/sdk\";\n\nconst kp = generateKeypair(\"did:web:example.com#key-1\");\nconst env = makeEnvelope({\n  type: \"vact_p.task.request\", mode: \"sync\",\n  sender: \"did:web:client.example\", recipients: [\"did:web:provider.example\"],\n  payload: { hello: \"world\" }, ttlSeconds: 300,\n});\nconst signed = signObject(env, kp);\nverifyObject(signed, kp.publicKey); // true\n```\n\nBoth SDKs produce byte-identical canonical forms — see `spec/test-vectors/`\n\n, which are\ngenerated by the Python SDK and verified by the TypeScript test suite.\n\n```\nmake demo\n```\n\nPrincipal → Requester → Research Agent → Evaluator → Settlement, with a fully reconstructable audit chain printed at the end. Every step is a signed VACT-P object; tampering with any byte breaks the chain.\n\n```\nmake demo-langchain\n```\n\nDemonstrates how to wrap standard LangChain tools with cryptographic VACT-P validation. The agent reads data and publishes summaries if allowed by the delegation chain, and is blocked automatically with `PERMISSION DENIED`\n\nif it attempts unauthorized tool execution.\n\n```\nmake gateway     # serves http://localhost:8402\ncurl http://localhost:8402/.well-known/vact-agent.json\n```\n\nEndpoints: `/.well-known/vact-agent.json`\n\n, `POST /vact-p/v0.1/messages`\n\n,\n`GET /vact-p/v0.1/tasks/{id}`\n\n, `POST /vact-p/v0.1/tasks/{id}/cancel`\n\n,\n`GET /vact-p/v0.1/receipts/{id}`\n\n, `GET /vact-p/v0.1/revocations/{id}`\n\n.\n\n**Signing**— RFC 8785 JCS canonicalization + Ed25519, top-level`proof`\n\n(§9.2)**Envelope**— required fields, expiry, nonce, replay defense (§9.5, §10)** Authority**— effective-authority intersection; delegation can never expand actions, resources, time, budget, or depth; fails closed (§11)**State machine**— the 17 task states with transition validation (§15)** Receipts**— execution / policy / evaluation / settlement / revocation builders (§21)** Revocation**— objects + priority semantics;`indeterminate ⇒ deny`\n\nfor material actions (§24)\n\n`0.1.0-draft`\n\n— tracks VACT-P-RFC-0001 Public Design Draft. Not production audited.\nContributions via VACT-P Enhancement Proposals (VEPs) — see [CONTRIBUTING.md](/mindify-ai/VACT-P/blob/main/CONTRIBUTING.md).\n\nMIT License", "url": "https://wpnews.pro/news/mcp-and-a2a-are-not-solving-one-crucial-challenge-in-the-post-agi-world-trust", "canonical_source": "https://github.com/mindify-ai/VACT-P", "published_at": "2026-08-02 08:10:37+00:00", "updated_at": "2026-08-02 08:22:20.958742+00:00", "lang": "en", "topics": ["ai-agents", "ai-safety", "ai-infrastructure", "ai-policy", "ai-ethics"], "entities": ["VACT-P", "VACT-P-RFC-0001", "DIDs", "Ed25519", "LangChain", "AutoGen", "CrewAI", "Stripe"], "alternates": {"html": "https://wpnews.pro/news/mcp-and-a2a-are-not-solving-one-crucial-challenge-in-the-post-agi-world-trust", "markdown": "https://wpnews.pro/news/mcp-and-a2a-are-not-solving-one-crucial-challenge-in-the-post-agi-world-trust.md", "text": "https://wpnews.pro/news/mcp-and-a2a-are-not-solving-one-crucial-challenge-in-the-post-agi-world-trust.txt", "jsonld": "https://wpnews.pro/news/mcp-and-a2a-are-not-solving-one-crucial-challenge-in-the-post-agi-world-trust.jsonld"}}