Promptready Mcp

io.github.hydrojwhPublished by GitHub account hydrojwhv0.4.0Updated Oct 24, 2026

Convert PDF/CSV to Markdown with AI-powered OCR via the PromptReady cloud API.

VerifiedSTDIODesktop onlyFiles & StorageAI & ML

Overview

AI-generated overview

Local MCP server that lets an assistant upload PDF or CSV files to the PromptReady cloud for OCR and receive the converted Markdown back on disk.

What you can do
Convert PDF and CSV files to Markdown through the PromptReady cloud OCR service, optionally waiting for the job to finish and saving the result file locally. Check job status and download finished results by conversion ID, and list recent conversions with their status and download availability. Check the account credit balance and view or change saved conversion defaults such as engine, tables and images. Log in or out of the PromptReady account from inside the assistant.
When to use it
Useful when you want an AI assistant to turn local PDF or CSV documents into Markdown text without manual copy-paste, especially for batches of documents handled inside Claude Code, Cursor, Grok or another MCP host.
Requirements
A local Python environment: install the promptready-mcp package with pip or run it with uvx. A PromptReady account, signed in once per machine via the login command or the login tool, or an access token supplied through PROMPTREADY_ACCESS_TOKEN. Network access to the PromptReady API. Credits are consumed per conversion.
Before you install
Files you convert are uploaded to the PromptReady cloud for OCR and deleted from the server about three hours after the batch finishes; results are downloadable only for that window. Conversions deduct credits from your PromptReady account when queued, and re-running a conversion spends fresh credits. Credentials are stored in a local credentials file, and the access token is sent only to the PromptReady API; changing PROMPTREADY_BASE_URL redirects all API traffic, credentials included, to that

Installation

In SourceWeft

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

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

PromptReady MCP

Official Model Context Protocol client for PromptReady — convert PDF/CSV to Markdown from AI agents (Grok, Claude Code, Cursor, and other MCP hosts).

Same PromptReady account and credits as the web app.

Data flow: your local PDF/CSV files are uploaded to the PromptReady cloud (promptready.space) for OCR processing. Converted Markdown is downloaded back to your machine. Files are auto-deleted from the server 3 hours after your batch finishes. No long-term storage.

Features

  • Browser Google login (tokens stay on your machine)
  • get_credits, convert_pdf, get_status, wait_and_download, list_conversions
  • Durable results: convert_pdf returns a log_id; wait_and_download / get_status accept it and resolve via the database, so a server restart, a redeploy, or a second back-to-back convert can no longer orphan a finished job (results are kept 3 hours)
  • Slash commands for humans: /promptready:convert and five more (below)
  • Saved convert defaults (engine, tables, images) — not on every call
  • Factory default: PaddleOCR-VL, tables on, images off

Install

As a Claude Code plugin (recommended)

Once listed in the Claude Code plugin directory:

/plugin install promptready

As a standalone MCP server

bash
pip install promptready-mcp

Or run it without installing:

bash
uvx promptready-mcp
From source
bash
git clone https://github.com/hydrojwh/promptready-mcp.gitcd promptready-mcppython3 -m venv .venv && source .venv/bin/activatepip install -e .

Login (once per machine)

bash
promptready-mcp-login

If you installed with uvx, the login command lives in the same package:

bash
uvx --from promptready-mcp promptready-mcp-login

Either opens Google OAuth and saves credentials to ~/.config/promptready/credentials.json (file mode 0600). That path is in your home directory, so it survives uvx cache resets. You can also log in from inside an MCP host by calling the login tool.

After you sign in, the browser returns to http://127.0.0.1:18765/callback — a local page started by the login command. No Supabase configuration is needed.

Email login fallback

If browser-based Google login is not an option, the same command accepts email and password:

bash
promptready-mcp-login --email [email protected]

Leave out --password and you will be prompted for it instead — this keeps the password out of your shell history.

Already have an access token? Set PROMPTREADY_ACCESS_TOKEN in the environment (MCP host or shell). Environment variables take precedence over the saved credentials file.

MCP host config

Fastest: let your AI agent install it

If you are already in an MCP-capable agent, skip the JSON editing and just ask:

Install the PromptReady MCP server for me. The PyPI package is promptready-mcp (stdio command promptready-mcp). Add it to your MCP config, then I will run the login tool.

In Claude Code the agent can use the built-in CLI:

bash
claude mcp add promptready -- promptready-mcp

Reconnect after changing config

Hosts do not pick up MCP config changes mid-session. After changing the config, restart the host or reconnect the server — in Claude Code, open the /mcp panel and reconnect.

The /mcp panel shows server status and lists the connected servers' tools, but it does not run them: picking a tool in that list will not invoke it. Tools are invoked through normal conversation — ask the agent to convert a file and it calls convert_pdf for you. If a call fails, reconnect from the panel first.

Claude Code

bash
claude mcp add promptready -- promptready-mcp

The default scope is local (this project only). Use --scope user to register it for all your projects, or --scope project to share the registration through a committed .mcp.json.

Cursor

Add to ~/.cursor/mcp.json (or .cursor/mcp.json for a single project):

json
{  "mcpServers": {    "promptready": {      "command": "promptready-mcp"    }  }}

Grok

toml
[mcp_servers.promptready]command = "promptready-mcp"enabled = truetool_timeout_sec = 3600

Claude Desktop / generic JSON

json
{  "mcpServers": {    "promptready": {      "command": "promptready-mcp"    }  }}

No access token in config files required after login.

Host cannot find promptready-mcp

GUI hosts start servers with a narrow PATH, so a console script installed by pip install --user is often invisible to them — the host reports a spawn failure or "server disconnected" rather than a missing command.

Two reliable fixes:

json
{ "mcpServers": { "promptready": {  "command": "uvx", "args": ["promptready-mcp"] } } }

or point at the absolute path of the script: /ABS/PATH/.venv/bin/promptready-mcp.

Tools

ToolPurpose
login / logoutBrowser auth / clear local credentials
get_creditsCredit balance
get_convert_settings / set_convert_settingsSaved convert defaults
convert_pdfUpload path → queue (optional wait)
get_statusStatus — by log_id (DB, restart-proof) or session
wait_and_downloadWait + save .md, by log_id or session
list_conversionsRecent conversions with log_id, status, downloadable

Downloaded names follow the web app: {name}_PaddleOCR-VL.md (engine label).

Credits are deducted by the server when a job is queued, exactly as on the web app. convert_pdf(wait=True) can run for a long time, so give the host a high tool timeout.

Durable results with log_id (0.4.0)

convert_pdf returns log_id — the id of the conversion record in your account. Unlike the session status, it survives backend restarts and later converts:

text
convert_pdf(path="report.pdf")            → {"log_id": "…uuid…", …}wait_and_download(log_id="…uuid…")        → saves report_PaddleOCR-VL-1.6.mdlist_conversions(limit=10)                → past conversions + their log_ids

Results are downloadable for 3 hours after completion (HTTP 410 after that — converting again, with fresh credits, is then the only way). If a download fails for another reason, retry wait_and_download with the same log_id; never re-run convert_pdf for the same file.

Slash commands

MCP prompts are the human entry point: instead of describing what you want, you pick a command. Hosts that surface prompts as slash commands (Claude Code does) show them as /promptready:<name>:

Slash commandPurpose
/promptready:loginLog in (opens the browser Google sign-in)
/promptready:logoutLog out on this machine
/promptready:creditsShow your credit balance
/promptready:convertConvert a PDF/CSV to Markdown
/promptready:siteShow the PromptReady web app URL
/promptready:settingsShow — and optionally change — convert defaults

Each command expands to a short instruction; the agent then calls the matching tool (login, get_credits, convert_pdf, …) for you.

/promptready:convert optionally takes two positional arguments, input path then output directory. Pick the command from the slash menu (hosts may list it as promptready:convert (MCP)) and append the arguments:

text
/promptready:convert (MCP) report.pdf markdown-out

Arguments are split on whitespace and cannot be quoted, so paths with spaces do not fit on the command line — run the command bare and give the paths in chat instead. Line breaks and control characters in arguments are rejected outright (0.3.8): an argument is interpolated into the instruction the command expands to, and it must never be able to start a line of its own. With no arguments the command asks you for them. The conversion itself always goes through the convert_pdf tool: never re-run it for the same file while a download is pending — that queues a fresh conversion and spends fresh credits; the expanded command tells the agent to call wait_and_download instead.

Hosts that do not map prompts to slash commands simply ignore this section; the tools keep working as before.

Security

  • Tokens are never hardcoded in this repository.
  • Do not commit ~/.config/promptready/* or .env.
  • Only use the official package linked from https://promptready.space
  • Vulnerability reports: see SECURITY.md

Network access and credentials

What this client talks to, so you can review it before installing:

  • Network: HTTPS requests to the PromptReady API at https://promptready.space (override with PROMPTREADY_BASE_URL, or the base URL saved at login — if you set one, all API traffic, credentials included, goes to that host instead). When a conversion finishes, the Markdown result may be fetched from a short-lived signed download URL that the API returns (served from PromptReady's Cloudflare R2 storage); that request carries no credentials. There is no telemetry and no other third-party host. During browser login a short-lived listener binds to 127.0.0.1 only, to receive the sign-in callback; your browser, not this client, talks to the sign-in provider.
  • Files read: the PDF/CSV paths you pass to convert_pdf, plus this client's own config under ~/.config/promptready/ (credentials and convert defaults).
  • Files written: the Markdown results you ask to save; the credentials file ~/.config/promptready/credentials.json (mode 600; override the path with PROMPTREADY_CREDENTIALS_PATH); and your convert defaults in ~/.config/promptready/settings.json when you change settings (mode 600; override with PROMPTREADY_SETTINGS_PATH). Nothing else is left on disk.
  • Credentials: your own PromptReady account session, created by promptready-mcp-login (browser or email) or supplied through PROMPTREADY_ACCESS_TOKEN / PROMPTREADY_REFRESH_TOKEN. The client sends it only to the PromptReady API, never to the signed download URL.

Service terms

Using the cloud API is subject to the Terms of Service and Privacy Policy. This MIT-licensed client does not grant free unlimited conversion. The license covers this client's source code only; use of the PromptReady cloud service (https://promptready.space) remains subject to its Terms of Service and Privacy Policy.

Smoke test (no account)

bash
./scripts/smoke_stdio.sh

License

MIT — see LICENSE.

Source: README.md at commit efdb514

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

3
  1. v0.4.0LatestOct 2, 2026
  2. v0.3.8Sep 21, 2026
  3. v0.3.7Sep 16, 2026

Score

50% 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 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts