# get_code_owners

Git-based code ownership: who contributed most to specific files (git shortlog). Requires git. Use to identify who to ask about specific files. For symbol-level ownership use get_symbol_owners instead. Read-only. Returns JSON: [{ file, owners: [{ author, commits, percentage }] }].

Agent View of the PolicyLayer registry record for `get_code_owners`. HTML page: https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/get-code-owners

## Facts

- Tool: `get_code_owners`
- Server: Trace (`nikolai-vysotskyi/trace-mcp`) — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp.md
- Homepage: https://github.com/nikolai-vysotskyi/trace-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": "get_code_owners",
    "arguments": {}
  }
}
```

## Why get_code_owners is rated Low

This tool queries git history to retrieve code ownership information based on commit statistics. It has no side effects, cannot modify or delete data, and does not execute code or perform financial operations. It is purely informational retrieval, making it a Read category tool with low severity.

From the tool's own definition: "Tool description explicitly states 'Read-only' and 'git shortlog' which queries git history. Returns ownership metadata without modifying anything. Uses: 'get code owners', 'who contributed most', 'identify who to ask' — all retrieval operations."

## Use case

AI agents call get_code_owners to retrieve information from Trace 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 Trace:

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

## Other tools on Trace (190)

- `delete_corpus` — Destructive — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/delete-corpus.md
- `remove_dead_code` — Destructive — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/remove-dead-code.md
- `repair_index` — Destructive — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/repair-index.md
- `call_project_tool` — Execute — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/call-project-tool.md
- `reindex` — Execute — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/reindex.md
- `visualize_graph` — Execute — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/visualize-graph.md
- `analyze_perf` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/analyze-perf.md
- `assess_change_risk` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/assess-change-risk.md
- `audit_config` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/audit-config.md
- `benchmark_project` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/benchmark-project.md
- `check_architecture` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/check-architecture.md
- `check_claudemd_drift` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/check-claudemd-drift.md
- `check_duplication` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/check-duplication.md
- `check_edit_safe` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/check-edit-safe.md
- `check_embedding_drift` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/check-embedding-drift.md
- `check_quality_gates` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/check-quality-gates.md
- `check_rename` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/check-rename.md
- `compare_branches` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/compare-branches.md
- `detect_antipatterns` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/detect-antipatterns.md
- `detect_ast_clones` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/detect-ast-clones.md
- `detect_communities` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/detect-communities.md
- `detect_drift` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/detect-drift.md
- `detect_topic_tunnels` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/detect-topic-tunnels.md
- `diff_graph_snapshots` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/diff-graph-snapshots.md
- `discover_claude_sessions` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/discover-claude-sessions.md
- `discover_hermes_sessions` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/discover-hermes-sessions.md
- `embed_repo` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/embed-repo.md
- `explain_architecture` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/explain-architecture.md
- `explain_symbol` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/explain-symbol.md
- `export_decisions` — Read — https://policylayer.com/tools/nikolai-vysotskyi-trace-mcp/export-decisions.md
- …and 160 more: https://policylayer.com/tools/nikolai-vysotskyi-trace-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=nikolai-vysotskyi-trace-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/nikolai-vysotskyi-trace-mcp
