{"servers":[{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.1.0","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.1.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","name":"VERAX_STATE_DIR"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-16T10:50:08.633298Z","publishedAt":"2026-09-16T10:50:08.633298Z","updatedAt":"2026-09-16T10:50:08.633298Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.1.1","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.1.1","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-16T12:49:02.124898Z","publishedAt":"2026-09-16T12:49:02.124898Z","updatedAt":"2026-09-16T12:49:02.124898Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.1.2","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.1.2","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-17T23:40:39.837722Z","publishedAt":"2026-09-17T23:40:39.837722Z","updatedAt":"2026-09-17T23:40:39.837722Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.1.3","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.1.3","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-19T12:19:23.906669Z","publishedAt":"2026-09-19T12:19:23.906669Z","updatedAt":"2026-09-19T12:19:23.906669Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.1.4","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.1.4","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-19T14:11:17.678577Z","publishedAt":"2026-09-19T14:11:17.678577Z","updatedAt":"2026-09-19T14:11:17.678577Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.2.0","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.2.0","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-19T18:24:04.107204Z","publishedAt":"2026-09-19T18:24:04.107204Z","updatedAt":"2026-09-19T18:24:04.107204Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.2.1","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.2.1","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-21T13:16:02.453559Z","publishedAt":"2026-09-21T13:16:02.453559Z","updatedAt":"2026-09-21T13:16:02.453559Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.2.2","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.2.2","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-21T18:57:29.346372Z","publishedAt":"2026-09-21T18:57:29.346372Z","updatedAt":"2026-09-21T18:57:29.346372Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.3.0","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.3.0","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-24T19:31:43.14751Z","publishedAt":"2026-09-24T19:31:43.14751Z","updatedAt":"2026-09-24T19:31:43.14751Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.4.0","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.4.0","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-27T23:16:00.437252Z","publishedAt":"2026-09-27T23:16:00.437252Z","updatedAt":"2026-09-27T23:16:00.437252Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.4.1","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.4.1","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-30T20:15:34.516803Z","publishedAt":"2026-09-30T20:15:34.516803Z","updatedAt":"2026-09-30T20:15:34.516803Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.4.2","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.4.2","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-02T16:03:28.666862Z","publishedAt":"2026-10-02T16:03:28.666862Z","updatedAt":"2026-10-02T16:03:28.666862Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.4.3","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.4.3","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-03T08:03:04.351981Z","publishedAt":"2026-10-03T08:03:04.351981Z","updatedAt":"2026-10-03T08:03:04.351981Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.4.4","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.4.4","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-05T21:50:47.227895Z","publishedAt":"2026-10-05T21:50:47.227895Z","updatedAt":"2026-10-05T21:50:47.227895Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.4.5","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.4.5","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-06T21:53:19.675027Z","publishedAt":"2026-10-06T21:53:19.675027Z","updatedAt":"2026-10-06T21:53:19.675027Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.4.6","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.4.6","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-07T19:12:26.934851Z","publishedAt":"2026-10-07T19:12:26.934851Z","updatedAt":"2026-10-07T19:12:26.934851Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.4.7","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.4.7","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-09T15:32:47.965651Z","publishedAt":"2026-10-09T15:32:47.965651Z","updatedAt":"2026-10-09T15:32:47.965651Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.4.8","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.4.8","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-11T00:12:44.701036Z","publishedAt":"2026-10-11T00:12:44.701036Z","updatedAt":"2026-10-11T00:12:44.701036Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.5.0","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.5.0","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-12T00:38:20.484568Z","publishedAt":"2026-10-12T00:38:20.484568Z","updatedAt":"2026-10-12T00:38:20.484568Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.5.1","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.5.1","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-12T02:56:25.319228Z","publishedAt":"2026-10-12T02:56:25.319228Z","updatedAt":"2026-10-12T02:56:25.319228Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.6.0","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.6.0","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-16T15:04:48.252588Z","publishedAt":"2026-10-16T15:04:48.252588Z","updatedAt":"2026-10-16T15:04:48.252588Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.6.1","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.6.1","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-17T16:24:22.328539Z","publishedAt":"2026-10-17T16:24:22.328539Z","updatedAt":"2026-10-17T16:24:22.328539Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.7.0","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.7.0","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-23T13:24:21.18966Z","publishedAt":"2026-10-23T13:24:21.18966Z","updatedAt":"2026-10-23T13:24:21.18966Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.verax-ai/verax","description":"The body an agent asks before it acts: decide, approve, and keep a signed record on your machine.","title":"VERAX","repository":{"url":"https://github.com/verax-ai/verax","source":"github"},"version":"0.8.0","websiteUrl":"https://verax-ai.com","packages":[{"registryType":"npm","identifier":"@verax-ai/body","version":"0.8.0","transport":{"type":"streamable-http","url":"http://{VERAX_BIND}/mcp"},"environmentVariables":[{"description":"Issuer the agent's token must carry. The body refuses to start without one; `verax doctor` names what is missing.","isRequired":true,"name":"VERAX_ISSUER"},{"description":"Where the body fetches the keys that verify that token.","isRequired":true,"name":"VERAX_JWKS_URL"},{"description":"Audience the token must name, so a token minted for something else is refused.","isRequired":true,"name":"VERAX_AUDIENCE"},{"description":"Directory the ledger, keys and approvals live in. It stays on this machine.","isRequired":true,"format":"filepath","name":"VERAX_STATE_DIR"},{"description":"Policy the gate applies. @verax-ai/proxy ships policy/default.json, which denies what it does not name.","isRequired":true,"format":"filepath","name":"VERAX_POLICY_FILE"},{"description":"host:port the body listens on. Anything but loopback needs VERAX_TLS_TERMINATED=1.","default":"127.0.0.1:8787","name":"VERAX_BIND"},{"description":"Roster document the body serves; the format is @verax-ai/inventory.","format":"filepath","name":"VERAX_INVENTORY_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-29T18:18:22.656837Z","publishedAt":"2026-10-29T18:18:22.656837Z","updatedAt":"2026-10-29T18:18:22.656837Z","isLatest":true}}}],"metadata":{"count":24}}
