# update_contact

Add or update a contact record.

Agent View of the PolicyLayer registry record for `update_contact`. HTML page: https://policylayer.com/tools/sveritg-metis-ph/update-contact

## Facts

- Tool: `update_contact`
- Server: Metis Public Health (`sveritg/metis_ph`) — https://policylayer.com/tools/sveritg-metis-ph.md
- Homepage: https://github.com/SVerITG/Metis_PH
- 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": "update_contact",
    "arguments": {}
  }
}
```

## Why update_contact is rated Medium

This tool creates new contact records or modifies existing ones, which are reversible write operations. There is no deletion, no code execution, and no financial impact. The blast radius is minimal—a contact record modification affects only the local contact management system. Severity is low because contact data is typically non-sensitive in this research/health context and errors are easily corrected.

From the tool's own definition: "Tool description states 'Add or update a contact record.' The verbs 'add' and 'update' are write operations that create or modify data reversibly."

## Use case

AI agents use update_contact to create or update resources in Metis Public Health, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Metis Public Health environment.

## Recommended policy (PolicyLayer)

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

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

## Other tools on Metis Public Health (276)

- `archive_library_item` — Destructive — https://policylayer.com/tools/sveritg-metis-ph/archive-library-item.md
- `delete_data_trigger` — Destructive — https://policylayer.com/tools/sveritg-metis-ph/delete-data-trigger.md
- `delete_knowledge_database` — Destructive — https://policylayer.com/tools/sveritg-metis-ph/delete-knowledge-database.md
- `delete_task` — Destructive — https://policylayer.com/tools/sveritg-metis-ph/delete-task.md
- `remove_first_run_marker` — Destructive — https://policylayer.com/tools/sveritg-metis-ph/remove-first-run-marker.md
- `remove_library_item` — Destructive — https://policylayer.com/tools/sveritg-metis-ph/remove-library-item.md
- `remove_project` — Destructive — https://policylayer.com/tools/sveritg-metis-ph/remove-project.md
- `remove_tracked_file` — Destructive — https://policylayer.com/tools/sveritg-metis-ph/remove-tracked-file.md
- `reset_thinking_profile` — Destructive — https://policylayer.com/tools/sveritg-metis-ph/reset-thinking-profile.md
- `analyze_script` — Execute — https://policylayer.com/tools/sveritg-metis-ph/analyze-script.md
- `dhis2_query` — Execute — https://policylayer.com/tools/sveritg-metis-ph/dhis2-query.md
- `generate_profiling_script` — Execute — https://policylayer.com/tools/sveritg-metis-ph/generate-profiling-script.md
- `install_background_pack` — Execute — https://policylayer.com/tools/sveritg-metis-ph/install-background-pack.md
- `run_maintenance` — Execute — https://policylayer.com/tools/sveritg-metis-ph/run-maintenance.md
- `run_metis` — Execute — https://policylayer.com/tools/sveritg-metis-ph/run-metis.md
- `run_trigger_now` — Execute — https://policylayer.com/tools/sveritg-metis-ph/run-trigger-now.md
- `scaffold_script` — Execute — https://policylayer.com/tools/sveritg-metis-ph/scaffold-script.md
- `scan_project_scripts` — Execute — https://policylayer.com/tools/sveritg-metis-ph/scan-project-scripts.md
- `start_course_build` — Execute — https://policylayer.com/tools/sveritg-metis-ph/start-course-build.md
- `start_interest_interview` — Execute — https://policylayer.com/tools/sveritg-metis-ph/start-interest-interview.md
- `brainstorm_turn` — Other — https://policylayer.com/tools/sveritg-metis-ph/brainstorm-turn.md
- `end_span` — Other — https://policylayer.com/tools/sveritg-metis-ph/end-span.md
- `start_span` — Other — https://policylayer.com/tools/sveritg-metis-ph/start-span.md
- `aggregate_reflexions` — Read — https://policylayer.com/tools/sveritg-metis-ph/aggregate-reflexions.md
- `anonymize_text` — Read — https://policylayer.com/tools/sveritg-metis-ph/anonymize-text.md
- `ask_library` — Read — https://policylayer.com/tools/sveritg-metis-ph/ask-library.md
- `assemble_brainstorm_context` — Read — https://policylayer.com/tools/sveritg-metis-ph/assemble-brainstorm-context.md
- `audit_background_provenance` — Read — https://policylayer.com/tools/sveritg-metis-ph/audit-background-provenance.md
- `backup_db` — Read — https://policylayer.com/tools/sveritg-metis-ph/backup-db.md
- `check_data_safety` — Read — https://policylayer.com/tools/sveritg-metis-ph/check-data-safety.md
- …and 246 more: https://policylayer.com/tools/sveritg-metis-ph.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=sveritg-metis-ph · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/sveritg-metis-ph
