# addUserPublicKey

Add a public encryption key for a user chat messages.

Agent View of the PolicyLayer registry record for `addUserPublicKey`. HTML page: https://policylayer.com/tools/xdevplatform-xmcp/adduserpublickey

## Facts

- Tool: `addUserPublicKey`
- Server: Xdevplatform/xmcp (`xdevplatform/xmcp`) — https://policylayer.com/tools/xdevplatform-xmcp.md
- Homepage: https://github.com/xdevplatform/xmcp
- Risk category: Write (Medium risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "addUserPublicKey",
    "arguments": {}
  }
}
```

## Why addUserPublicKey is rated Medium

This tool creates or modifies user security settings (public key infrastructure for encryption). It is reversible (keys can be updated or removed) and has side effects limited to data modification rather than deletion or code execution. The medium severity reflects that misuse could enable unauthorized message interception or impersonation, but the impact is bounded to that user's encryption key state.

From the tool's own definition: "Tool name 'addUserPublicKey' and description 'Add a public encryption key for a user chat messages' indicate creation/addition of cryptographic material to user accounts."

## Use case

AI agents use addUserPublicKey to create or update resources in Xdevplatform/xmcp, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Xdevplatform/xmcp environment.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Xdevplatform/xmcp:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "addUserPublicKey": {
      "limits": [
        {
          "counter": "adduserpublickey_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Xdevplatform/xmcp (134)

- `deleteAccountActivitySubscription` — Destructive — https://policylayer.com/tools/xdevplatform-xmcp/deleteaccountactivitysubscription.md
- `deleteActivitySubscription` — Destructive — https://policylayer.com/tools/xdevplatform-xmcp/deleteactivitysubscription.md
- `deleteAllConnections` — Destructive — https://policylayer.com/tools/xdevplatform-xmcp/deleteallconnections.md
- `deleteCommunityNotes` — Destructive — https://policylayer.com/tools/xdevplatform-xmcp/deletecommunitynotes.md
- `deleteConnectionsByEndpoint` — Destructive — https://policylayer.com/tools/xdevplatform-xmcp/deleteconnectionsbyendpoint.md
- `deleteConnectionsByUuids` — Destructive — https://policylayer.com/tools/xdevplatform-xmcp/deleteconnectionsbyuuids.md
- `deleteDirectMessagesEvents` — Destructive — https://policylayer.com/tools/xdevplatform-xmcp/deletedirectmessagesevents.md
- `deleteLists` — Destructive — https://policylayer.com/tools/xdevplatform-xmcp/deletelists.md
- `deleteMediaSubtitles` — Destructive — https://policylayer.com/tools/xdevplatform-xmcp/deletemediasubtitles.md
- `deletePosts` — Destructive — https://policylayer.com/tools/xdevplatform-xmcp/deleteposts.md
- `deleteUsersBookmark` — Destructive — https://policylayer.com/tools/xdevplatform-xmcp/deleteusersbookmark.md
- `removeListsMemberByUserId` — Destructive — https://policylayer.com/tools/xdevplatform-xmcp/removelistsmemberbyuserid.md
- `createComplianceJobs` — Execute — https://policylayer.com/tools/xdevplatform-xmcp/createcompliancejobs.md
- `sendChatTypingIndicator` — Execute — https://policylayer.com/tools/xdevplatform-xmcp/sendchattypingindicator.md
- `chatMediaDownload` — Read — https://policylayer.com/tools/xdevplatform-xmcp/chatmediadownload.md
- `dmConversationsMediaDownload` — Read — https://policylayer.com/tools/xdevplatform-xmcp/dmconversationsmediadownload.md
- `getAccountActivitySubscriptionCount` — Read — https://policylayer.com/tools/xdevplatform-xmcp/getaccountactivitysubscriptioncount.md
- `getAccountActivitySubscriptions` — Read — https://policylayer.com/tools/xdevplatform-xmcp/getaccountactivitysubscriptions.md
- `getActivitySubscriptions` — Read — https://policylayer.com/tools/xdevplatform-xmcp/getactivitysubscriptions.md
- `getChatConversation` — Read — https://policylayer.com/tools/xdevplatform-xmcp/getchatconversation.md
- `getChatConversations` — Read — https://policylayer.com/tools/xdevplatform-xmcp/getchatconversations.md
- `getCommunitiesById` — Read — https://policylayer.com/tools/xdevplatform-xmcp/getcommunitiesbyid.md
- `getComplianceJobs` — Read — https://policylayer.com/tools/xdevplatform-xmcp/getcompliancejobs.md
- `getComplianceJobsById` — Read — https://policylayer.com/tools/xdevplatform-xmcp/getcompliancejobsbyid.md
- `getConnectionHistory` — Read — https://policylayer.com/tools/xdevplatform-xmcp/getconnectionhistory.md
- `getDirectMessagesEvents` — Read — https://policylayer.com/tools/xdevplatform-xmcp/getdirectmessagesevents.md
- `getDirectMessagesEventsByConversationId` — Read — https://policylayer.com/tools/xdevplatform-xmcp/getdirectmessageseventsbyconversationid.md
- `getDirectMessagesEventsById` — Read — https://policylayer.com/tools/xdevplatform-xmcp/getdirectmessageseventsbyid.md
- `getDirectMessagesEventsByParticipantId` — Read — https://policylayer.com/tools/xdevplatform-xmcp/getdirectmessageseventsbyparticipantid.md
- `getInsights28Hr` — Read — https://policylayer.com/tools/xdevplatform-xmcp/getinsights28hr.md
- …and 104 more: https://policylayer.com/tools/xdevplatform-xmcp.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=xdevplatform-xmcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/xdevplatform-xmcp
