# list_template_fields

List all SDT template fields (tag, label, type) in the document.

Agent View of the PolicyLayer registry record for `list_template_fields`. HTML page: https://policylayer.com/tools/securityronin-docx-mcp/list-template-fields

## Facts

- Tool: `list_template_fields`
- Server: Docx (`securityronin/docx-mcp`) — https://policylayer.com/tools/securityronin-docx-mcp.md
- Homepage: https://github.com/SecurityRonin/docx-mcp
- Risk category: Read (Low risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Allowed

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

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

## Why list_template_fields is rated Low

This tool performs a query operation that retrieves and displays structured data (SDT/content control fields) from a Word document. It has no side effects, does not modify document state, execute code, delete content, or involve financial operations. It is purely informational and diagnostic in nature, fitting the Read category.

From the tool's own definition: "Tool name 'list_template_fields' with description 'List all SDT template fields (tag, label, type) in the document' indicates retrieval and enumeration of existing document metadata with no modification, deletion, or execution."

## Use case

AI agents call list_template_fields to retrieve information from Docx without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.

## Recommended policy (PolicyLayer)

Verdict: **Allowed**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Docx:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "list_template_fields": {}
  }
}
```

## Other tools on Docx (218)

- `delete_column_from_table` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/delete-column-from-table.md
- `delete_comment` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/delete-comment.md
- `delete_content_control` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/delete-content-control.md
- `delete_custom_property` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/delete-custom-property.md
- `delete_endnote` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/delete-endnote.md
- `delete_field` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/delete-field.md
- `delete_footer` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/delete-footer.md
- `delete_footnote` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/delete-footnote.md
- `delete_header` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/delete-header.md
- `delete_image` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/delete-image.md
- `delete_paragraph` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/delete-paragraph.md
- `delete_section_break` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/delete-section-break.md
- `delete_style` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/delete-style.md
- `delete_table` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/delete-table.md
- `delete_table_row` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/delete-table-row.md
- `delete_text` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/delete-text.md
- `flatten_document` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/flatten-document.md
- `remove_bookmark` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/remove-bookmark.md
- `remove_watermark` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/remove-watermark.md
- `scrub_pii` — Destructive — https://policylayer.com/tools/securityronin-docx-mcp/scrub-pii.md
- `compare_documents` — Execute — https://policylayer.com/tools/securityronin-docx-mcp/compare-documents.md
- `xpath_query` — Execute — https://policylayer.com/tools/securityronin-docx-mcp/xpath-query.md
- `audit_document` — Read — https://policylayer.com/tools/securityronin-docx-mcp/audit-document.md
- `check_accessibility` — Read — https://policylayer.com/tools/securityronin-docx-mcp/check-accessibility.md
- `compare_contracts` — Read — https://policylayer.com/tools/securityronin-docx-mcp/compare-contracts.md
- `diff_to_text` — Read — https://policylayer.com/tools/securityronin-docx-mcp/diff-to-text.md
- `export_markdown` — Read — https://policylayer.com/tools/securityronin-docx-mcp/export-markdown.md
- `generate_change_summary` — Read — https://policylayer.com/tools/securityronin-docx-mcp/generate-change-summary.md
- `get_alt_text` — Read — https://policylayer.com/tools/securityronin-docx-mcp/get-alt-text.md
- `get_body_text` — Read — https://policylayer.com/tools/securityronin-docx-mcp/get-body-text.md
- …and 188 more: https://policylayer.com/tools/securityronin-docx-mcp.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=securityronin-docx-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/securityronin-docx-mcp
