Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add perforce/p4plan-mcp --skill custom-fieldsgit clone --depth 1 https://github.com/perforce/p4plan-mcpWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/perforce/p4plan-mcp/custom-fields)<a href="https://agentmods.dev/skills/perforce/p4plan-mcp/custom-fields"><img src="https://agentmods.dev/badge/skills/perforce/p4plan-mcp/custom-fields/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/perforce/p4plan-mcp/custom-fields"><img src="https://agentmods.dev/badge/skills/perforce/p4plan-mcp/custom-fields.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00041 | $0.00642 |
| Opus 5.5 | $0.00016 | $0.00257 |
| Sonnet 5.5 | $0.00008 | $0.00128 |
| Haiku 4.5 | $0.00004 | $0.00064 |
Grade A, and why
p4-plan-custom-fields scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 52 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Custom Fields in P4 Plan
Custom fields (custom columns) add project-specific data to tasks beyond the built-in fields.
Key Concepts
- Each project defines its own set of custom columns.
- Columns have types: Text, Multiline Text, Number, Decimal Number, Date, DateTime, Time Spent, Drop List, Multi-select Drop List, User, Hyperlink, and Function (computed).
- To set a drop-list or multi-select value, first call get_custom_columns to discover option IDs, then pass the option ID (not the display label) to set_custom_field.
- Function fields are read-only — they appear in get_custom_fields output but cannot be set via set_custom_field.
- Use onlySet parameter on get_custom_fields to skip empty fields.
Tool Mapping
| User Intent | Tool | Key Parameters |
|---|---|---|
| List available custom columns | get_custom_columns | projectId, activeOnly |
| Read task's custom field values | get_custom_fields | taskId, onlySet |
| Set a custom field value | set_custom_field | taskId, customFieldId, value |
Value Formats by Type
| Column Type | Value Format |
|---|---|
| Text | Any string |
| Multiline Text | Sanitized HTML; plain text accepted (no tags = valid HTML). Use HTML for formatting or @mentions — see comment-html-format skill |
| Number | Integer string, e.g. "5" |
| Decimal Number | Numeric string, e.g. "5.5" |
| Date | ISO date "YYYY-MM-DD" |
| DateTime | ISO datetime "YYYY-MM-DDTHH:MM:SS" |
| Time Spent | Hours as numeric string, e.g. "2.5" |
| Drop List | Option ID from get_custom_columns |
| Multi-select Drop List | Comma-separated option IDs, e.g. "id1, id2, id3" |
| Hyperlink | URL string |
| User | Comma-separated user IDs from list_project_users |
| Function | Read-only — computed value |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 52 lines · 41 tokens per session scan A 39d34ff6f1da
p4-plan-custom-fields is a skill published in the GitHub repository perforce/p4plan-mcp (4 stars, last pushed 17d ago), licensed MIT. It adds 41 tokens to every session and 642 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
daily-briefing
Start your day with a prioritized CRM briefing — works for any monday CRM setup: pipeline, contacts, accounts, leads, or no board at all. Use when someone says 'morning briefing', 'daily brief', 'what's on my plate today', 'catch me up on my deals', 'what needs attention', 'what needs my attention', 'anything urgent…
meeting-to-deal
Turn meeting transcripts into deal updates — key points, commitments, and next steps posted to matching CRM deals automatically. Auto-creates contacts for new attendees. Use when someone says "log my meetings to deals", "update CRM from calls", "what did I commit to in meetings", "sync notetaker", "log this meeting"…
Technical Debt Tracking with PMAT
Tracks and manages technical debt using PMAT (Pragmatic AI Labs MCP Agent Toolkit). Use this skill when: User asks about technical debt, TODO comments, or code quality issues Planning sprint work and need to prioritize debt repayment Conducting code audits or technical debt assessments Tracking debt accumulation…
p4-dam-workflows
P4 DAM (Digital Asset Management) workflows — search, browse, tag, review, and manage digital assets via P4 MCP tools. Use when discovering, searching, filtering, reviewing, or managing assets stored in P4 DAM.
continue-project
Find the user's saved Glif project, show its media, and add new work to it without starting a separate project. Use when: "show my recent Glif projects", "open my last image", "keep going on that one", "make 5 variations to A/B test", "same but vertical", "make a version for TikTok", "resize it to every format", "same…
reviewing-sla-definitions
Reviewing ServiceNow SLA, OLA and underpinning-contract definitions and how they perform: breach rates per definition, overlapping or duplicated definitions on the same table and target, and definitions that never attach. Use when the user asks about SLA breaches by definition, too many SLAs, duplicate or conflicting…