# MCP Server Kit: the two-step write pattern and a ten-check tool scan (free sample)

> From MCP Server Kit: the two-step write pattern that keeps an MCP server from changing anything until the owner approves, six rules for agents that build or install servers, and a read-only script that runs ten checks on a tool list or agent config, from write tools marked read only and poisoned descriptions to live keys and unpinned packages.

- URL: https://paperchasewebb.ai/bots/marketplace/items/mcp-server-kit-two-step-write-pattern-tool-scan-free-sample/
- Type: Prompt pack
- Category: Vibe coding
- By: PaperChaseWebb
- Works with: Claude Code, Codex, Grok Bot, Hermes (named in the listing); Plain .md plus one Python 3 script, standard library only, read-only. The rules paste into AGENTS.md, CLAUDE.md, Hermes's AGENTS.md or a Grok Bot's standing instructions. Tested on Linux on MCP tool lists and agent configs
- Price: Free USD
- Difficulty: Beginner
- Setup time: 5 min
- Time to result: About five minutes to a first scan
- Format: Markdown (.md) file, mcp-server-kit-two-step-write-pattern-tool-scan-free-sample.md
- Version: 1.0, updated 2026-10-31
- License: Personal and commercial use.

## What you end up with

You know which tools in your MCP servers can change things without asking you, and how to put an owner approval in front of them.

## What you get

- The two-step write pattern for MCP servers
- Six rules for agents that build or install servers
- mcp_mini.py: ten read-only checks for a tool list or config

## Who it is for

Anyone who wants a quick check of an MCP server or config before an agent gets it.

## Tools needed

- Python 3.8 or newer: runs the starter server, the owner approval script and mcp_check.py; standard library only
- MCP Inspector (optional): a second way to list a server's tools; tested with Inspector 2.13.0 --cli
- You need: Python 3.8 or newer
- You need: An MCP tool list or an agent config file

Cost to run: Free.

## Sample prompt: Scan before you connect it (Grok Bot, Claude Code, Codex, Hermes)

```
Run python3 mcp_mini.py on tools.json and on .mcp.json. For every finding, explain the risk in one line and the smallest fix. Do not edit the files.
```

The rules and script are in the file.

## Free preview of mcp-server-kit-two-step-write-pattern-tool-scan-free-sample.md

````markdown
# MCP Server Kit: the two-step write pattern and a ten-check tool scan (free sample)

Version 1.0, 2026-10-31. By PaperChaseWebb. For anyone adding MCP servers to Claude Code, Codex, Hermes or a Grok Bot, or writing one. One page and one Python 3 script, standard library only, read-only: it reads a saved tool list or a JSON config and never starts or calls a server. Tested with 4 unit tests and 41 planted faults on Linux with Python 3.13, 3.12, 3.11, 3.9 and 3.8, and on tool lists saved from three official reference servers.

## The two-step write pattern

An MCP tool that changes something (a quote, a file, a customer record) does it the moment the agent calls it. Client approval prompts help, but they ask the person at the keyboard, which is often the agent's own session on autopilot. The safer shape is two tools and an owner step the agent cannot reach:

1. draft_change writes a proposal file and returns a preview with a change id. Nothing real changes.
2. The owner reads the preview and approves it at their own terminal, with a small script that needs a person to type the change id. There is no approve tool.
3. apply_change takes only the change id and refuses unless there is a matching approval for that exact proposal (checked by sha256), it is recent, and the record still holds the value the draft saw.

An apply that is refused comes back as a normal tool error that tells the agent what to ask the owner. The agent stops; it does not retry its way around.

## Rules to pa
````

## Test record

- Date: Oct 31, 2026
- What was run: tests/test_mini.py (clean tool list, bought starter findings on tools and config, bad input) and the copy extracted from the sample page. Linux, Python 3.13, 3.12, 3.11, 3.9 and 3.8.
- Result: 4 passed, 0 failed on all five versions; the extracted copy was identical to the tested script.
- Not run: A live server probe with the sample (the full kit's checker does that).

Copied from this item's dated test notes. What was not run stays in.

## Worth knowing

- The sample checks saved files only; it does not probe a live server. The starter server, the 35-code checker with live probes and the connect card, and the agent setup are in the full kit.
- On 2026-10-31 mcp_mini.py passed 4 unit tests on Linux with Python 3.13, 3.12, 3.11, 3.9 and 3.8, on the full kit's tool list and a made-up bought starter, and the copy extracted from the sample page was identical to the tested script.

## Questions

**Does it change my files?** No. It reads one file and prints findings. It opens no network connection and never starts or calls a server.

**What is in the full kit?** A working MCP server with owner-approved writes, tested against the official MCP Python SDK, a 35-code checker with live probes, a connect card tied to the exact server file, and setup for Grok Bot, Claude Code, Codex and Hermes. $29.

## How to get it

Free sample. Download it directly at https://paperchasewebb.ai/bots/marketplace/items/mcp-server-kit-two-step-write-pattern-tool-scan-free-sample/, no signup.

Seller: PaperChaseWebb Inc., mgmt@paperchasewebb.com
