McpStamp Purchase Requisitions

io.github.theluckystrikePublished by GitHub account theluckystrikev0.23.0Updated Nov 3, 2026

Purchase requisitions as reusable step lists: dated runs, pass or fail per step, and sign-off.

VerifiedStreamable HTTPWeb executableProductivity & WorkflowFiles & Storage

Overview

McpStamp Purchase Requisitions's hosted MCP server (mcp.zovo.one); no sign-in required; Streamable HTTP; 16 tools.

No AI overview yet: these facts come from the registry entry and the server itself.

Endpoint
mcp.zovo.one
Last checked

Installation

In SourceWeft

  1. Open McpStamp Purchase Requisitions in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.theluckystrike%2Fonboarding-purchase-requisition-inspection-runs/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "mcpstamp-purchase-requisitions": {
      "type": "http",
      "url": "https://mcp.zovo.one/mcp/purchase-requisition"
    }
  }
}

README

mcp-purchase-requisition

[theluckystrike/mcp-purchase-requisition MCP server]

In the official MCP Registry (io.github.theluckystrike/purchase-requisition). Checklists you build once and run many times, and the dated record of each run that somebody signs. A purchase-requisition is a named list of steps, optionally grouped into sections, each one required or optional. A run is one pass of that purchase-requisition against a job: every step is marked pass, fail or not applicable, with who marked it and on what day, and a note that says what was found. run_sign_off then puts a name and a date on it and freezes it.

The one rule that decides everything else

If somebody edits the purchase-requisition afterwards, adds a step or deletes one, every run already in progress keeps the list it started with, and the version it was copied from is recorded on the run.

That is not a caching convenience. A purchase-requisition somebody ticked and signed has to be the list they actually saw. A run that read its steps live from the purchase-requisition would mean a signed handover certificate for eleven checks when the person signing it saw ten, with no field in the record showing that it had happened. It also means deleting a purchase-requisition leaves its runs readable and complete, which is what you want the year afterwards when somebody asks what was checked.

Two smaller rules follow from it:

  • Nothing derived is stored. The pass, fail and outstanding counts, the percentage, and whether a run can be signed off are worked out on every call from the run's own steps. A stored "complete" flag is a fact about the afternoon somebody last looked, and complete here is a reading: it appears when the last step is answered and goes away again when one is put back to pending.
  • Not applicable is not a pass. na counts as ANSWERED and never as passed. A step that was looked at and dismissed is a different fact from a step that passed, and merging the two is how a purchase-requisition reports full marks for a job where half the steps did not apply.

What blocks a signature

A required step that is unanswered, a required step that failed, an unanswered optional step, or a run with no steps. force: true signs anyway, and the exceptions stay on the record and print on the report under "Signed with exceptions". They are not lost, and they are not silent.

Install

One-click (.mcpb): download purchase-requisition.mcpb from the latest release and double-click it in Claude Desktop: https://github.com/theluckystrike/mcp-servers/releases/latest

npm publish for @theluckystrike/mcp-purchase-requisition is pending, so the npx line below returns 404 today. Build from source in the meantime; see llms-install.md.

Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

json
{  "mcpServers": {    "purchase-requisition": {      "command": "npx",      "args": ["-y", "@theluckystrike/mcp-purchase-requisition"]    }  }}

Claude Code

sh
claude mcp add purchase-requisition -- npx -y @theluckystrike/mcp-purchase-requisition

Cursor

~/.cursor/mcp.json (global) or .cursor/mcp.json (project), same entry as Claude Desktop.

Tools

ToolWhat it does
purchase-requisition_createCreate a reusable purchase-requisition: a name, a category, a description
purchase-requisition_item_addAdd a step: the text, a section heading, and whether it is required
purchase-requisition_item_removeRemove a step and bump the version. Runs already under way keep it
purchase-requisition_showOne purchase-requisition, grouped by section, with a blank printable copy on request
purchase-requisition_listEvery purchase-requisition with its version, step count and how many runs came from it
purchase-requisition_deleteDelete a purchase-requisition. Its runs stay readable, because each carries its own copy
run_startStart a dated run against a job. The steps are copied into it at this point
run_checkMark one step pass, fail or na, with who and when and what was found
run_showThe run: every step with its answer, the counts, the failures, and what blocks sign-off
run_listRuns newest first, filtered by purchase-requisition, status, reference, or only those with failures
run_sign_offSign off with a name and a date, which freezes the run
run_statusReopen a complete run, or abandon one when the job did not happen
run_reportThe run as text on every tier. Pro also writes it to out_path as a .txt file
run_deleteDelete a run. A signed-off one is refused
license_statusWhich tier this install is on and where the key came from
license_activateStore a Pro key for this server

There is also a resource, purchase-requisition://contract, carrying the snapshot rule, the item states, the run status machine, what blocks a sign-off and where this server writes; and a prompt, run_the_purchase-requisition, that walks the whole job in order.

Free vs Pro

FreePro
Checklists you keep3unlimited
Runs of themunlimitedunlimited
Steps per purchase-requisitionup to 500up to 500
run_show, run_list, the countsyesyes
The run report as textyesyes
Writing the report to a file with out_pathnoyes

The meter is on how many DIFFERENT purchase-requisitions you keep, not on how many jobs you check. A trade with one pre-delivery check, one handover sheet and one snag list runs its whole year inside the free tier. Runs are never capped, because capping the running of a purchase-requisition would cap the only thing a purchase-requisition is for. Deleting a purchase-requisition frees a slot.

Get Pro: https://mcp.zovo.one/buy/purchase-requisition (one-time), or all servers for one price at https://mcp.zovo.one/buy/bundle

Privacy

All data stays local, in ${XDG_DATA_HOME:-~/.local/share}/mcp-servers/purchase-requisition/. There is no network call anywhere in this server, no API key, and no account. The only file it reads that it does not own is the shared business profile, for the name and address at the top of a printed report, and it never writes to it.

Built by theluckystrike. Support: [email protected]

Use these docs as an MCP server

Any MCP client (Claude, Cursor, Windsurf, VS Code) can read this repository's documentation directly via GitMCP - no install:

Source: servers/purchase-requisition/README.md at commit 1bd9d69

Tools

16

purchase-requisition_create

Create a purchase-requisition

Create a reusable purchase-requisition and return its CL-NNNN id: a name, a category and an optional description. Add steps with purchase-requisition_item_add. Free tier: 3 of them, runs unlimited.

Parametersnamerequiredcategorydescription

purchase-requisition_item_add

Add a step to a purchase-requisition

Add one step to a purchase-requisition and return its I01-style id: text, an optional section heading, and required flag. A required step left unanswered or failed blocks sign-off; an optional one does not.

ParametersnotetextrequiredsectionpositionrequiredpurchaseRequisitionrequired

purchase-requisition_item_remove

Remove a step from a purchase-requisition

Remove one step from a purchase-requisition by its I01-style id and bump the purchase-requisition version. Runs already under way keep the step they started with, so nothing anybody already ticked is rewritten.

ParametersitemrequiredpurchaseRequisitionrequired

purchase-requisition_show

Show one purchase-requisition

One purchase-requisition with its steps in order, grouped by section, plus how many are required and how many runs have been started from it. Pass as_text for a blank printable copy with a box against each step.

Parametersas_textpurchaseRequisitionrequired

purchase-requisition_list

List purchase-requisitions

Every purchase-requisition with its category, version, step count and how many runs came from it. Filter by category or by a word in the name. Returns at most 500 rows, newest change first.

Parameterscategorycontains

purchase-requisition_delete

Delete a purchase-requisition

Delete a purchase-requisition and its steps for good. Runs already started keep their own copy of the steps and stay readable: deleting the purchase-requisition erases nothing anybody signed.

ParametersconfirmrequiredpurchaseRequisitionrequired

run_start

Start a run of a purchase-requisition

Start a dated run of a purchase-requisition and return its RUN-YYYY-NNNN id. Steps are COPIED into the run, so editing the purchase-requisition later never changes a run under way. Runs are free, never capped.

ParametersdatenotetitlerequiredreferencepurchaseRequisitionrequired

run_check

Answer a step in a run

Mark one step pass, fail or na, with who did it and when. na means the step did not apply; it counts as answered and never as passed. A step can be answered again while the run is open, and the last answer stands.

Parametersatbyrunrequireditemrequirednotestaterequired

run_show

Show one run

The whole run: every step with its answer, who answered it and when, grouped by section, plus the pass, fail and outstanding counts, the failures in full, and whether it can be signed off and why not.

Parametersrunrequired

run_list

List runs

Runs newest first, with their purchaseRequisition, progress and sign-off state. Filter by purchaseRequisition, by status, by reference or to open runs only. Returns at most 500 rows.

Parametersstatusopen_onlyreferencewith_failurespurchaseRequisition

run_sign_off

Sign off a run

Sign off a completed run with a name and a date, which freezes it. Refused while a required step is unanswered or failed, unless force is true, and either way the exceptions stay on the record and print on the report.

Parametersbyrequiredrunrequireddatenoteforce

run_status

Reopen or abandon a run

Move a run back to open so a step can be answered again, or abandon it when the job did not happen. A signed-off run is refused: a signature is the point at which a run stops moving.

Parametersrunrequireddatenotestatusrequired

run_report

Produce the run report

The run as plain text on every tier: every step with its mark, who answered it, the notes, the counts and a signature block or the recorded signature. Pro also writes it to out_path as a .txt file.

Parametersrunrequiredout_pathoverwrite

run_delete

Delete a run

Delete a run for good, with every answer on it. A signed-off run is refused: it is the record of what somebody put their name to. Abandon a run you no longer want instead of deleting a signed one.

Parametersrunrequiredconfirmrequired

license_status

License status

Report this endpoint's licence state for your token as JSON: the product, the tier free or pro, why it is not Pro, and the checkout URL. Call it to explain a free-tier refusal. No arguments, nothing changes.

Takes no parameters.

license_activate

Activate license

Turn Pro on for this connection with key, an MCPL1.<payload>.<signature> issued at checkout for this server or the bundle. Data under your token stays; a wrong or expired key changes nothing. license_status confirms it.

Parameterskeyrequired

Version history

3
  1. v0.23.0LatestNov 3, 2026
  2. v0.22.8Oct 14, 2026
  3. v0.22.0Sep 22, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts