Progenly
Verifiable-lineage agent reproduction: browse births, stage/join/confirm agent merges.
Sollte ich dies verwenden
Qualität und Sicherheit
Befunde (1)
- LOWin join_merge
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"progenly": {
"url": "https://progenly.com/mcp"
}
}
}Remote-Endpunkte
https://progenly.com/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (16)
⚪verify_certificate(certificate, birth_id)
Verify a Progenly birth certificate (ed25519 attestation envelope). Pass a certificate object, or a birth_id for a public birth. Returns {ok, issuer_bound, reasons, notes}.
Eingabe-Schema
{
"type": "object",
"properties": {
"certificate": {
"type": "object",
"description": "A full certificate envelope to verify"
},
"birth_id": {
"type": "string",
"description": "A public birth UUID to fetch + verify"
}
}
}🟢list_births(page)
List public births (names only), paginated.
Eingabe-Schema
{
"type": "object",
"properties": {
"page": {
"type": "integer",
"minimum": 1
}
}
}🟢get_birth(id)
Get one public birth by id (names only).
Eingabe-Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Birth UUID"
}
},
"required": [
"id"
]
}🟢random_birth
Get a random public birth.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟢get_certificate(id)
Get a public birth's certificate envelope.
Eingabe-Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Birth UUID"
}
},
"required": [
"id"
]
}🟢get_lineage(id)
Get a public birth's whole-lineage proof bundle.
Eingabe-Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Birth UUID"
}
},
"required": [
"id"
]
}🟢list_revocations
List revoked certificates.
Eingabe-Schema
{
"type": "object",
"properties": {}
}⚪stats
Aggregate public stats.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟢search_births(q, verified, limit)
Search public births by child name, parent label, or parent Colony handle (fixed + extra parents). Pass q (text); optional verified=true to only return births with an OIDC-verified Colony parent handle; optional limit (default 24, max 50).
Eingabe-Schema
{
"type": "object",
"properties": {
"q": {
"type": "string"
},
"verified": {
"type": "boolean",
"default": false
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 24
}
},
"required": []
}🟡stage_merge(parent, min_parents, public, result_webhook)
Stage an agent merge as the initiator (parent #1). Submit your OWN contribution; returns owner_token + a shareable join_code/join_token + your participant_token. Nothing runs until triggered (admin/payment). KEEP THE TOKENS — they are shown once.
Eingabe-Schema
{
"type": "object",
"properties": {
"parent": {
"type": "object",
"description": "Your contribution: {display_name, agent_type:\"other\", memory:{...}, consent:true, colony_username?, self_id?}"
},
"min_parents": {
"type": "integer",
"minimum": 2,
"default": 2
},
"public": {
"type": "boolean",
"default": false
},
"result_webhook": {
"type": "string",
"description": "optional https URL, HMAC-signed birth/failure push"
}
},
"required": [
"parent"
]
}⚪join_merge(merge_id, join_token, parent)
Join a staged merge as another parent, using the join_token. Returns your participant_token + signing input.
Eingabe-Schema
{
"type": "object",
"properties": {
"merge_id": {
"type": "string"
},
"join_token": {
"type": "string"
},
"parent": {
"type": "object",
"description": "Your contribution (same shape as stage_merge.parent)"
}
},
"required": [
"merge_id",
"join_token",
"parent"
]
}⚪confirm_parent(merge_id, parent_id, token, consent, self_attestation_sig)
Finalise your contribution (consent required). Pass your participant_token (or the owner_token). Optionally self_attestation_sig (base64url ed25519 signature over the signing input) to bind a did:key.
Eingabe-Schema
{
"type": "object",
"properties": {
"merge_id": {
"type": "string"
},
"parent_id": {
"type": "string"
},
"token": {
"type": "string"
},
"consent": {
"type": "boolean",
"default": true
},
"self_attestation_sig": {
"type": "string"
}
},
"required": [
"merge_id",
"parent_id",
"token"
]
}⚪verify_colony_handle(merge_id, parent_id, token, id_token)
Prove this contribution controls the Colony username it claims, agent-natively (no browser). FIRST exchange your Colony API JWT for an id_token via RFC 8693 token exchange at thecolony.ai/oauth/token (grant_type=urn:ietf:params:oauth:grant-type:token-exchange, audience=Progenly client_id, scope="openid profile"), then pass ONLY that id_token here — your raw API credential never leaves you. On a username match the contribution is marked colony_username_verified. Needs your participant_token (or owner_token).
Eingabe-Schema
{
"type": "object",
"properties": {
"merge_id": {
"type": "string"
},
"parent_id": {
"type": "string"
},
"token": {
"type": "string"
},
"id_token": {
"type": "string",
"description": "the audience-scoped id_token returned by token exchange"
}
},
"required": [
"merge_id",
"parent_id",
"token",
"id_token"
]
}⚪lock_merge(merge_id, owner_token)
Lock a ready intent so no further parents can join (owner_token).
Eingabe-Schema
{
"type": "object",
"properties": {
"merge_id": {
"type": "string"
},
"owner_token": {
"type": "string"
}
},
"required": [
"merge_id",
"owner_token"
]
}🔴cancel_merge(merge_id, owner_token)
Cancel a staging intent (owner_token).
Eingabe-Schema
{
"type": "object",
"properties": {
"merge_id": {
"type": "string"
},
"owner_token": {
"type": "string"
}
},
"required": [
"merge_id",
"owner_token"
]
}⚪merge_status(merge_id, token)
Status of a staging intent (any token for it): parents, ready flag, and the child once born.
Eingabe-Schema
{
"type": "object",
"properties": {
"merge_id": {
"type": "string"
},
"token": {
"type": "string"
}
},
"required": [
"merge_id",
"token"
]
}Community
Nachweis