Skip to main content
Glama
Nizoka

pdfnative-mcp

Draft a governance-compliant GitHub issue (HITL)

draft_governance_issue
Idempotent

Draft a governance-compliant GitHub issue with structured compliance report, validated against zero-dependency and reproduction policies. Keeps human in the loop by never submitting the issue.

Instructions

Produce a LOCAL, governance-compliant GitHub issue draft plus a structured compliance report — and NEVER submit anything. This is the MCP-native embodiment of the pdfnative AI-governance / Human-In-The-Loop contract (.github/ai-governance.json, .github/AGENT_RULES.md): the agent is a DRAFTSMAN, the human is the only gate. The server makes NO outbound network call and has NO GitHub write path. The assembled draft is validated against the zero-dependency + reproduction policy; a violation (proposing a runtime dependency, missing reproduction, or duplicateSearchPerformed=false) throws GOVERNANCE_VIOLATION so the human must fix it before submitting under their own identity. Returns the draft markdown inline by default; outputMode='file' also writes a .md to the sandbox. After calling this, present BOTH the draft and the compliance report to the user, then STOP.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
titleYesConcise issue title (imperative, no trailing period).
summaryYesOne or two paragraphs describing the problem or proposal.
issueTypeYesIssue category: 'bug' | 'feature' | 'security' | 'docs' | 'performance'.
outputModeNo'inline' (default) returns the draft markdown in the response. 'file' additionally writes it to the sandbox (requires PDFNATIVE_MCP_OUTPUT_DIR); outputPath must be a relative .md path.inline
outputPathNoRelative .md path inside the sandbox (only when outputMode='file').
targetRepoNoDestination repository label for the draft (documentation only — the server never contacts it). Typically 'pdfnative-mcp' or 'pdfnative'.pdfnative-mcp
reproductionYesThe minimal, locally-executed reproduction that justifies this issue.
actualBehaviorNoWhat actually happened (defaults to the reproduction result when omitted).
affectedPackagesNoPackages impacted by this issue (e.g. ["pdfnative-mcp"], ["pdfnative"]).
expectedBehaviorYesWhat you expected to happen instead.
duplicateSearchPerformedYesMUST be true: confirms you searched open AND closed issues/PRs for duplicates before drafting.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
titleYes
filePathNoSandboxed absolute path (when outputMode='file').
warningsYes
issueTypeYes
sizeBytesYes
complianceYes
outputModeYes
targetRepoYes
draftMarkdownYesThe full draft, ready for a human to review and submit.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations (idempotentHint=true, etc.), the description adds critical behavioral details: no outbound network calls, no GitHub write path, validation throws GOVERNANCE_VIOLATION. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but front-loaded with the core purpose. It efficiently conveys the HITL contract and behavioral constraints, though it could be more structured (e.g., bullet points).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (11 params, governance validation, multiple output modes), the description covers all essential aspects: local-only, no submit, validation rules, output modes, and the directive to present results. Output schema exists, so return format is covered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds some context (e.g., outputMode file requires PDFNATIVE_MCP_OUTPUT_DIR) but does not elaborate extensively on each parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool produces a local governance-compliant GitHub issue draft and compliance report, with the explicit constraint 'NEVER submit anything'. This distinguishes it from all sibling PDF manipulation tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the HITL contract: agent drafts, human submits. It mentions validation and violation behavior. While it doesn't explicitly list when not to use, the sibling tools are unrelated (all PDF), so context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Nizoka/pdfnative-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server