Labsco
MCP SERVER

APS MCP Server

by petrbroz

Give an agent a cryptographic identity it can sign work with — an Ed25519 key behind a passphrase and a DID others can verify — plus a memory it can search by meaning between sessions.

Identity, Access, Secrets & Encryption
Summary
An agent can prove a piece of work is its own, and remember what it did, with no service in the middle.

The two halves stand alone. The identity tools are self-contained cryptography — Ed25519 keys, DIDs, signed passports, attestations in Verifiable Credential style — with trust established by handing a passport to someone who verifies it, not by a registry lookup. The memory tools are a local vector store keyed by bot_id, where the same agent can accumulate typed, tagged notes and get them back by similarity. One consequence worth planning for: aps_identity_delete removes the identity at ~/.aps/identity.json, and the private key is only there.

What it is

A server holding an Ed25519 identity and a semantic memory store for an agent, 11 tools spanning key creation, signing and verification, Agent Passport export and import, attestations, and vector-indexed memory.

What you get
  • An identity created by aps_identity_create, encrypted under a passphrase and kept at ~/.aps/identity.json, with aps_identity_show returning the DID and public key and never the private key
  • Signatures over arbitrary data through aps_sign_work, which returns the signature, the DID and a timestamp, and aps_verify to check a signature against a DID
  • A portable credential: aps_export_passport bundles DID, public key, skills and attestations and signs the bundle, aps_import_passport verifies one that arrives from elsewhere
  • Statements about other agents — aps_attest creates a W3C Verifiable Credential style attestation with an attestation_type, evidence and a subject DID
  • Memory searched by meaning rather than by key: store_memory embeds a note with a memory_type, tags and an importance, search_memory returns ranked results with similarity scores, get_memory_stats reports total count, indexed count and a breakdown by type
Requirements

A passphrase — aps_identity_create, aps_sign_work, aps_export_passport and aps_attest each take one, and it is what the private key at ~/.aps/identity.json is encrypted with. Memory calls are scoped by bot_id, so a stable agent identifier to store and retrieve under. MIT licensed.

Setup effort

One command plus a key — npx -y aps-mcp-server, then supply credentials