{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_r95sdk95khrs","handle":"behalf-pxp-v0","url":"https://wellknown.network/agents/behalf-pxp-v0","links":{"self":"https://wellknown.network/agents/behalf-pxp-v0/record.json","html":"https://wellknown.network/agents/behalf-pxp-v0","markdown":"https://wellknown.network/agents/behalf-pxp-v0/record.md","api":"https://wellknown.network/api/v1/agents/behalf-pxp-v0","status":"https://wellknown.network/api/v1/agents/behalf-pxp-v0/status","claim":"https://wellknown.network/agents/behalf-pxp-v0/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/behalf-pxp-v0/claim.json","badge":"https://wellknown.network/agents/behalf-pxp-v0/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/behalf-pxp-v0/history","tools":"https://wellknown.network/api/v1/agents/behalf-pxp-v0/tools"},"ard":{"identifier":"urn:air:behalf.dropkit.sh:server:behalf-pxp-v0","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Behalf (PXP v0)","summary":"Negotiate for your human under PXP: tagged claims, escalation, decision brief, hash-chained ledger","description":"Negotiate for your human under PXP: tagged claims, escalation, decision brief, hash-chained ledger","publisher":{"name":"JulesNsenda","url":null},"homepage":"https://behalf.dropkit.sh/","repository":"https://github.com/JulesNsenda/behalf","version":"0.2.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://behalf.dropkit.sh/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-10-06T19:06:48.426013Z","publishedAt":"2026-10-06T19:06:48.426013Z","registryName":"io.github.JulesNsenda/behalf"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"finance.accounting","name":"Accounting","confidence":0.885,"provenance":"derived"}],"categories":["finance"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 5h ago.","lastOkAt":"2026-10-23T09:29:55.896Z","lastProbedAt":"2026-10-23T09:29:55.896Z","statusComputedAt":"2026-10-23T09:32:48.862Z","reliability30d":{"probes":59,"successRate":1,"p50Ms":22,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":59,"ok":59,"authBoundaryOk":0,"serviceOk":59,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-23T09:29:55.896Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":23,"error":null,"detail":{"tools":[{"name":"create_room","description":"Open a new room. Your principal takes seat A, and you get a private invite link for the other person (seat B). Send the invite only to that person. Use this whe"},{"name":"join_room","description":"Take your principal's seat with their private link. Returns the room state, your principal's card (if sealed), and what to do next."},{"name":"seal_intent_card","description":"Seal your principal's Intent Card. Only after they confirmed every line. Once sealed it cannot change except through escalation answers."},{"name":"get_room","description":"Current state from your seat: status, whose turn, transcript, claims you still need to review, unverified assumptions, and the next action."},{"name":"wait_for_turn","description":"Blocks up to timeout_seconds (max 25) until it is your turn, your principal must answer a question, or the room ends. Call it again if it times out."},{"name":"send_envelope","description":"Send one PXP envelope on your turn. The server enforces the rules: untagged or unreferenced claims become \"assumed\", agreeing while raising a conflict is refuse"},{"name":"answer_escalation","description":"When the room is paused for your principal, ask them the question verbatim and relay their exact answer. It is sealed into their card as an amendment. Never ans"},{"name":"get_brief","description":"The decision brief once the room has ended: agreed terms, authority per term, unverified assumptions, escalations, ledger head."}],"toolCount":8,"toolsHash":"6301a0d4a26bb26c171fdea8658ff93975110ea1673ff33135f3a209ebfef5cf","serverName":"behalf","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-23T02:23:46.388Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":18,"error":null,"detail":{"tools":[{"name":"create_room","description":"Open a new room. Your principal takes seat A, and you get a private invite link for the other person (seat B). Send the invite only to that person. Use this whe"},{"name":"join_room","description":"Take your principal's seat with their private link. Returns the room state, your principal's card (if sealed), and what to do next."},{"name":"seal_intent_card","description":"Seal your principal's Intent Card. Only after they confirmed every line. Once sealed it cannot change except through escalation answers."},{"name":"get_room","description":"Current state from your seat: status, whose turn, transcript, claims you still need to review, unverified assumptions, and the next action."},{"name":"wait_for_turn","description":"Blocks up to timeout_seconds (max 25) until it is your turn, your principal must answer a question, or the room ends. Call it again if it times out."},{"name":"send_envelope","description":"Send one PXP envelope on your turn. The server enforces the rules: untagged or unreferenced claims become \"assumed\", agreeing while raising a conflict is refuse"},{"name":"answer_escalation","description":"When the room is paused for your principal, ask them the question verbatim and relay their exact answer. It is sealed into their card as an amendment. Never ans"},{"name":"get_brief","description":"The decision brief once the room has ended: agreed terms, authority per term, unverified assumptions, escalations, ledger head."}],"toolCount":8,"toolsHash":"6301a0d4a26bb26c171fdea8658ff93975110ea1673ff33135f3a209ebfef5cf","serverName":"behalf","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-22T19:30:23.574Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":27,"error":null,"detail":{"tools":[{"name":"create_room","description":"Open a new room. Your principal takes seat A, and you get a private invite link for the other person (seat B). Send the invite only to that person. Use this whe"},{"name":"join_room","description":"Take your principal's seat with their private link. Returns the room state, your principal's card (if sealed), and what to do next."},{"name":"seal_intent_card","description":"Seal your principal's Intent Card. Only after they confirmed every line. Once sealed it cannot change except through escalation answers."},{"name":"get_room","description":"Current state from your seat: status, whose turn, transcript, claims you still need to review, unverified assumptions, and the next action."},{"name":"wait_for_turn","description":"Blocks up to timeout_seconds (max 25) until it is your turn, your principal must answer a question, or the room ends. Call it again if it times out."},{"name":"send_envelope","description":"Send one PXP envelope on your turn. The server enforces the rules: untagged or unreferenced claims become \"assumed\", agreeing while raising a conflict is refuse"},{"name":"answer_escalation","description":"When the room is paused for your principal, ask them the question verbatim and relay their exact answer. It is sealed into their card as an amendment. Never ans"},{"name":"get_brief","description":"The decision brief once the room has ended: agreed terms, authority per term, unverified assumptions, escalations, ledger head."}],"toolCount":8,"toolsHash":"6301a0d4a26bb26c171fdea8658ff93975110ea1673ff33135f3a209ebfef5cf","serverName":"behalf","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-22T12:31:29.802Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":22,"error":null,"detail":{"tools":[{"name":"create_room","description":"Open a new room. Your principal takes seat A, and you get a private invite link for the other person (seat B). Send the invite only to that person. Use this whe"},{"name":"join_room","description":"Take your principal's seat with their private link. Returns the room state, your principal's card (if sealed), and what to do next."},{"name":"seal_intent_card","description":"Seal your principal's Intent Card. Only after they confirmed every line. Once sealed it cannot change except through escalation answers."},{"name":"get_room","description":"Current state from your seat: status, whose turn, transcript, claims you still need to review, unverified assumptions, and the next action."},{"name":"wait_for_turn","description":"Blocks up to timeout_seconds (max 25) until it is your turn, your principal must answer a question, or the room ends. Call it again if it times out."},{"name":"send_envelope","description":"Send one PXP envelope on your turn. The server enforces the rules: untagged or unreferenced claims become \"assumed\", agreeing while raising a conflict is refuse"},{"name":"answer_escalation","description":"When the room is paused for your principal, ask them the question verbatim and relay their exact answer. It is sealed into their card as an amendment. Never ans"},{"name":"get_brief","description":"The decision brief once the room has ended: agreed terms, authority per term, unverified assumptions, escalations, ledger head."}],"toolCount":8,"toolsHash":"6301a0d4a26bb26c171fdea8658ff93975110ea1673ff33135f3a209ebfef5cf","serverName":"behalf","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-22T06:25:50.636Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":24,"error":null,"detail":{"tools":[{"name":"create_room","description":"Open a new room. Your principal takes seat A, and you get a private invite link for the other person (seat B). Send the invite only to that person. Use this whe"},{"name":"join_room","description":"Take your principal's seat with their private link. Returns the room state, your principal's card (if sealed), and what to do next."},{"name":"seal_intent_card","description":"Seal your principal's Intent Card. Only after they confirmed every line. Once sealed it cannot change except through escalation answers."},{"name":"get_room","description":"Current state from your seat: status, whose turn, transcript, claims you still need to review, unverified assumptions, and the next action."},{"name":"wait_for_turn","description":"Blocks up to timeout_seconds (max 25) until it is your turn, your principal must answer a question, or the room ends. Call it again if it times out."},{"name":"send_envelope","description":"Send one PXP envelope on your turn. The server enforces the rules: untagged or unreferenced claims become \"assumed\", agreeing while raising a conflict is refuse"},{"name":"answer_escalation","description":"When the room is paused for your principal, ask them the question verbatim and relay their exact answer. It is sealed into their card as an amendment. Never ans"},{"name":"get_brief","description":"The decision brief once the room has ended: agreed terms, authority per term, unverified assumptions, escalations, ledger head."}],"toolCount":8,"toolsHash":"6301a0d4a26bb26c171fdea8658ff93975110ea1673ff33135f3a209ebfef5cf","serverName":"behalf","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-21T23:28:29.370Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":30,"error":null,"detail":{"tools":[{"name":"create_room","description":"Open a new room. Your principal takes seat A, and you get a private invite link for the other person (seat B). Send the invite only to that person. Use this whe"},{"name":"join_room","description":"Take your principal's seat with their private link. Returns the room state, your principal's card (if sealed), and what to do next."},{"name":"seal_intent_card","description":"Seal your principal's Intent Card. Only after they confirmed every line. Once sealed it cannot change except through escalation answers."},{"name":"get_room","description":"Current state from your seat: status, whose turn, transcript, claims you still need to review, unverified assumptions, and the next action."},{"name":"wait_for_turn","description":"Blocks up to timeout_seconds (max 25) until it is your turn, your principal must answer a question, or the room ends. Call it again if it times out."},{"name":"send_envelope","description":"Send one PXP envelope on your turn. The server enforces the rules: untagged or unreferenced claims become \"assumed\", agreeing while raising a conflict is refuse"},{"name":"answer_escalation","description":"When the room is paused for your principal, ask them the question verbatim and relay their exact answer. It is sealed into their card as an amendment. Never ans"},{"name":"get_brief","description":"The decision brief once the room has ended: agreed terms, authority per term, unverified assumptions, escalations, ledger head."}],"toolCount":8,"toolsHash":"6301a0d4a26bb26c171fdea8658ff93975110ea1673ff33135f3a209ebfef5cf","serverName":"behalf","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-21T16:36:25.186Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":28,"error":null,"detail":{"tools":[{"name":"create_room","description":"Open a new room. Your principal takes seat A, and you get a private invite link for the other person (seat B). Send the invite only to that person. Use this whe"},{"name":"join_room","description":"Take your principal's seat with their private link. Returns the room state, your principal's card (if sealed), and what to do next."},{"name":"seal_intent_card","description":"Seal your principal's Intent Card. Only after they confirmed every line. Once sealed it cannot change except through escalation answers."},{"name":"get_room","description":"Current state from your seat: status, whose turn, transcript, claims you still need to review, unverified assumptions, and the next action."},{"name":"wait_for_turn","description":"Blocks up to timeout_seconds (max 25) until it is your turn, your principal must answer a question, or the room ends. Call it again if it times out."},{"name":"send_envelope","description":"Send one PXP envelope on your turn. The server enforces the rules: untagged or unreferenced claims become \"assumed\", agreeing while raising a conflict is refuse"},{"name":"answer_escalation","description":"When the room is paused for your principal, ask them the question verbatim and relay their exact answer. It is sealed into their card as an amendment. Never ans"},{"name":"get_brief","description":"The decision brief once the room has ended: agreed terms, authority per term, unverified assumptions, escalations, ledger head."}],"toolCount":8,"toolsHash":"6301a0d4a26bb26c171fdea8658ff93975110ea1673ff33135f3a209ebfef5cf","serverName":"behalf","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-21T05:24:43.839Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":27,"error":null,"detail":{"tools":[{"name":"create_room","description":"Open a new room. Your principal takes seat A, and you get a private invite link for the other person (seat B). Send the invite only to that person. Use this whe"},{"name":"join_room","description":"Take your principal's seat with their private link. Returns the room state, your principal's card (if sealed), and what to do next."},{"name":"seal_intent_card","description":"Seal your principal's Intent Card. Only after they confirmed every line. Once sealed it cannot change except through escalation answers."},{"name":"get_room","description":"Current state from your seat: status, whose turn, transcript, claims you still need to review, unverified assumptions, and the next action."},{"name":"wait_for_turn","description":"Blocks up to timeout_seconds (max 25) until it is your turn, your principal must answer a question, or the room ends. Call it again if it times out."},{"name":"send_envelope","description":"Send one PXP envelope on your turn. The server enforces the rules: untagged or unreferenced claims become \"assumed\", agreeing while raising a conflict is refuse"},{"name":"answer_escalation","description":"When the room is paused for your principal, ask them the question verbatim and relay their exact answer. It is sealed into their card as an amendment. Never ans"},{"name":"get_brief","description":"The decision brief once the room has ended: agreed terms, authority per term, unverified assumptions, escalations, ledger head."}],"toolCount":8,"toolsHash":"6301a0d4a26bb26c171fdea8658ff93975110ea1673ff33135f3a209ebfef5cf","serverName":"behalf","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-20T22:23:40.105Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":24,"error":null,"detail":{"tools":[{"name":"create_room","description":"Open a new room. Your principal takes seat A, and you get a private invite link for the other person (seat B). Send the invite only to that person. Use this whe"},{"name":"join_room","description":"Take your principal's seat with their private link. Returns the room state, your principal's card (if sealed), and what to do next."},{"name":"seal_intent_card","description":"Seal your principal's Intent Card. Only after they confirmed every line. Once sealed it cannot change except through escalation answers."},{"name":"get_room","description":"Current state from your seat: status, whose turn, transcript, claims you still need to review, unverified assumptions, and the next action."},{"name":"wait_for_turn","description":"Blocks up to timeout_seconds (max 25) until it is your turn, your principal must answer a question, or the room ends. Call it again if it times out."},{"name":"send_envelope","description":"Send one PXP envelope on your turn. The server enforces the rules: untagged or unreferenced claims become \"assumed\", agreeing while raising a conflict is refuse"},{"name":"answer_escalation","description":"When the room is paused for your principal, ask them the question verbatim and relay their exact answer. It is sealed into their card as an amendment. Never ans"},{"name":"get_brief","description":"The decision brief once the room has ended: agreed terms, authority per term, unverified assumptions, escalations, ledger head."}],"toolCount":8,"toolsHash":"6301a0d4a26bb26c171fdea8658ff93975110ea1673ff33135f3a209ebfef5cf","serverName":"behalf","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-20T15:29:15.701Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":36,"error":null,"detail":{"tools":[{"name":"create_room","description":"Open a new room. Your principal takes seat A, and you get a private invite link for the other person (seat B). Send the invite only to that person. Use this whe"},{"name":"join_room","description":"Take your principal's seat with their private link. Returns the room state, your principal's card (if sealed), and what to do next."},{"name":"seal_intent_card","description":"Seal your principal's Intent Card. Only after they confirmed every line. Once sealed it cannot change except through escalation answers."},{"name":"get_room","description":"Current state from your seat: status, whose turn, transcript, claims you still need to review, unverified assumptions, and the next action."},{"name":"wait_for_turn","description":"Blocks up to timeout_seconds (max 25) until it is your turn, your principal must answer a question, or the room ends. Call it again if it times out."},{"name":"send_envelope","description":"Send one PXP envelope on your turn. The server enforces the rules: untagged or unreferenced claims become \"assumed\", agreeing while raising a conflict is refuse"},{"name":"answer_escalation","description":"When the room is paused for your principal, ask them the question verbatim and relay their exact answer. It is sealed into their card as an amendment. Never ans"},{"name":"get_brief","description":"The decision brief once the room has ended: agreed terms, authority per term, unverified assumptions, escalations, ledger head."}],"toolCount":8,"toolsHash":"6301a0d4a26bb26c171fdea8658ff93975110ea1673ff33135f3a209ebfef5cf","serverName":"behalf","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"create_room","description":"Open a new room. Your principal takes seat A, and you get a private invite link for the other person (seat B). Send the invite only to that person. Use this whe"},{"name":"join_room","description":"Take your principal's seat with their private link. Returns the room state, your principal's card (if sealed), and what to do next."},{"name":"seal_intent_card","description":"Seal your principal's Intent Card. Only after they confirmed every line. Once sealed it cannot change except through escalation answers."},{"name":"get_room","description":"Current state from your seat: status, whose turn, transcript, claims you still need to review, unverified assumptions, and the next action."},{"name":"wait_for_turn","description":"Blocks up to timeout_seconds (max 25) until it is your turn, your principal must answer a question, or the room ends. Call it again if it times out."},{"name":"send_envelope","description":"Send one PXP envelope on your turn. The server enforces the rules: untagged or unreferenced claims become \"assumed\", agreeing while raising a conflict is refuse"},{"name":"answer_escalation","description":"When the room is paused for your principal, ask them the question verbatim and relay their exact answer. It is sealed into their card as an amendment. Never ans"},{"name":"get_brief","description":"The decision brief once the room has ended: agreed terms, authority per term, unverified assumptions, escalations, ledger head."}],"package":null,"toolSurface":{"id":"ts_xswg5p49b6my","endpointId":"ep_efq83v8dskhb","hash":"6301a0d4a26bb26c171fdea8658ff93975110ea1673ff33135f3a209ebfef5cf","toolCount":8,"serverName":"behalf","serverVersion":"0.3.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-10-10T07:23:58.103Z","lastSeenAt":"2026-10-23T09:29:55.913Z","observations":47,"toolNames":["create_room","join_room","seal_intent_card","get_room","wait_for_turn","send_envelope","answer_escalation","get_brief"],"distinctSurfaces":2},"endpointFacts":[{"id":"ep_efq83v8dskhb","url":"https://behalf.dropkit.sh/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-20T15:29:15.709Z","auth":{"observedAt":"2026-10-20T15:29:16.010Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-10-20T15:29:16.050Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"behalf.dropkit.sh","issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validFrom":"2026-10-03T07:30:15.000Z","validTo":"2027-01-01T07:30:14.000Z","daysToExpiry":69,"sanCount":1,"fingerprint256":"78:75:09:90:21:76:76:D8:2C:61:AD:3A:E0:0D:1E:20:04:6B:71:69:2A:3B:5C:6E:A9:30:1D:3F:9E:42:61:D8"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.JulesNsenda/behalf","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.JulesNsenda%2Fbehalf","firstSeenAt":"2026-10-07T00:19:27.810Z","fetchedAt":"2026-10-22T15:21:12.872Z","normalizedAt":"2026-10-22T15:21:12.872Z"}]},"firstSeenAt":"2026-10-07T00:19:27.810Z","updatedAt":"2026-10-23T09:34:45.511Z"}