Skip to content
IsoKron

MCP server audit, fixed price

MCP server audits: security, correctness and token cost, at a fixed price

IsoKron tests your MCP server the way an agent uses it, including the write paths. Every finding is checked against the vendor’s own API as a control, challenged by a separate AI refuter in a clean context, then reproduced and reviewed by a person before you see it.

Fixed-price reviews from $495; full audits from $1,450. See the packages

  • GitHub MCP server: 11 issues filed upstream, 6 fix PRs open (1 ours, 5 community)
  • PostHog MCP server: 1 fix merged, 1 fix PR open
  • Every finding control-checked, refuter-challenged and reviewed by a person

Can your MCP server safely change things?

A tool can return a clean success while the change underneath went wrong. We don’t stop at schemas: we run controlled writes, overlap them, repeat them with stale data, compare the result with the platform’s own API, and read the final state back independently.
  • An edit that silently overwrites someone else’s change made a moment earlier
  • A change that lands on the wrong object after the data shifted
  • An update that resets fields the caller never mentioned
  • A success response for a write that changed nothing
  • A failure that leaves half of a multi-step change behind, with no word of what was applied
  • A tool that skips a safety check the platform’s own API enforces

Fixed-price packages

Introductory pricing while we build the public case-study library.
  • MCP Server Snapshot

    $495

    One server, up to 40 tools. A read-only review of the tool catalog and schemas: a first look, not an audit.

    Turnaround: 3 business days

    • tools/list and schema review
    • Permission map: declared versus code-inferred behaviour of each tool (read, write, destructive), with unknowns listed
    • Token cost of the tool catalog
    • Top issues, each with a suggested fix
    • Pinned tools/list snapshot made with mcp-catalog-snap, so you can detect drift after the audit
    • No write-path testing
    • No retest
    Buy the Snapshot

    Secure checkout by Stripe. We email you within one business day to confirm the server and access. Terms of sale and refunds

  • MCP Server Audit

    $1,450

    $950 founding rate

    One server, up to 25 tools. Read and write paths, on a test tenant.

    Turnaround: 7 business days

    • Everything in the Snapshot
    • Security review: permission boundaries, read-only switches, data and credentials in model context
    • Correctness testing: lost updates, type coercion, non-atomic writes, “success” that changed nothing
    • Every finding checked against a control, challenged by a separate AI refuter, then reproduced and reviewed by a person
    • Written report (reproduction steps, evidence, impact, suggested fix) and a 60-minute walkthrough
    • Evidence Pack: the harness is frozen and independently timestamped before the first run, and you can verify the results with one command that runs locally (after npx’s first download it needs no network)
    • 1 retest within 30 days
    • No production data or production tenants
    • Not a penetration test of the platform behind the server
    • Fixes are recommended, not implemented (that is a build)
    Request this audit

    Scoped by email (call optional), then invoiced at the listed price.

  • Audit + Agent Benchmark

    $2,900

    $1,950 founding rate

    Up to 2 servers or 50 tools.

    Turnaround: 10 business days

    • Everything in the Audit
    • Concurrency and write-path stress testing
    • Calls, tokens and dollars per task on 3–5 real agent tasks, fixes ranked by cost saved
    • Findings mapped to the OWASP MCP Top 10
    • Catalog drift check set up in your CI
    • 2 retests within 60 days
    • No production data or production tenants
    • Benchmark tasks are agreed with you before the run and not changed after it
    Request this audit

    Scoped by email (call optional), then invoiced at the listed price.

Fixes are priced separately. If you want us to fix what we find, we quote that after you have read the report, so the audit has no incentive to inflate findings.

Custom / multi-server

More servers, multi-tenant or OAuth setups, or client and server together. Send your tools/list and we’ll quote a fixed price.

typically from $4,500

Founding rate for our first five clients who agree to a redacted case study: Audit $950 (normally $1,450), Audit + Agent Benchmark $1,950 (normally $2,900). You approve the exact case-study text before anything is published.

What we guarantee

Scope and price
The quoted price is the price. If testing needs more, we tell you first and you decide.
Delivery date
A delivery date in writing before we start. The report arrives by it.
Evidence
Every finding has documented prerequisites and reproduction steps. We rerun each one before delivery; if it can’t be reproduced under its documented conditions, it is removed or explicitly downgraded.

We don’t guarantee a number of findings. That would give the audit a reason to pad.

Recent findings in public MCP servers

GitHub’s official MCP server (v2.1.0, on a throwaway organisation) and PostHog’s, tested on test accounts in PostHog Cloud. Each finding is filed upstream, so you can read the evidence yourself.
  • Kind: CorrectnessStatus: Fix PR open (ours, #3781)

    github/github-mcp-server v2.1.0

    Concurrent issue-field updates silently revert.

    In a controlled test of concurrent updates to two different issue fields, 19 of 30 pairs lost one change across three runs; GitHub’s per-field API lost 0 of 28. Our fix is open as pull request #3781; it has not been reviewed or merged upstream.

    github-mcp-server issue #3751our fix PR #3781

  • Kind: HardeningStatus: Fix PR open (community)

    github/github-mcp-server v2.1.0

    Read-only mode can silently stay off.

    GITHUB_READ_ONLY=yes (or on) is parsed as false, so the server starts with write tools enabled and no warning.

    github-mcp-server issue #3747community fix PR #3750

  • Kind: HardeningStatus: Issue open

    github/github-mcp-server v2.1.0

    Directory listings expose short-lived tokenised URLs for private files.

    Filed as low-severity hardening: the URLs expire, but they land in model context.

    github-mcp-server issue #3748

  • Kind: CorrectnessStatus: Fix PR open

    PostHog MCP server (PostHog Cloud, test accounts)

    Generated tool schemas turned the string "false" into true, and null into 0.

    A client that sent the string "false" could store true, and nothing reported an error.

    PostHog pull request #131514

  • Kind: CorrectnessStatus: Fix merged

    PostHog MCP server (PostHog Cloud, test accounts)

    Concurrent PATCHes to insights restored stale field values.

    6 of 11 tested pairs lost one update. PostHog merged the fix (insights only) in #131620, which carries our commit.

    PostHog pull request #131620 (merged)

  • Kind: CostStatus: Measured in the same audit

    github/github-mcp-server v2.1.0

    What routine development work costs through the server.

    In our audit, Claude Opus via Claude Code completed four routine development jobs through the server using MCP tools only (bug fix to merged PR, PR review, issue triage, multi-file rename): 17–33 tool calls and about $0.77–$1.37 per job, as Claude Code’s reported API-equivalent cost, two runs per job. Submitting a pull-request review with inline comments took 5 MCP calls; GitHub’s REST API accepts the same review, comments included, in one request.

    Per-run figures in the audit article

An open issue is a report, not a confirmed vulnerability, until the maintainers say so.

What an MCP server audit covers: security review, correctness and cost

Beyond security, we test the write paths and the cost per task.

Security review

Switches that must fail closed, credentials in model context, token scopes, prompt injection via tool outputs, and catalog changes between runs. Example: read-only mode that stays off. Background: auth, rate limits and observability for a production MCP server.

Correctness

Lost updates when two agents write at once, coerced types, writes that half-apply, “success” that changed nothing, and retries that write twice. Examples: concurrent issue updates that revert, schemas that turn false into true.

Token cost

Calls, tokens and dollars per real task, catalog overhead in context, and tool designs that force extra round trips.

How we test an MCP server and verify every finding

  1. Step 1

    Checked against a control

    A script reproduces the finding; the same operation runs through the vendor’s own API. For the lost-update finding, GitHub’s per-field API lost 0 of 28.

  2. Step 2

    Challenged by a separate AI refuter

    A separate AI refuter, in a clean context and often on another model, tries to explain the finding away. If it can, the finding is dropped.

  3. Step 3

    Reproduced and reviewed by a person

    A person reruns the reproduction and reads the evidence before anything reaches the report.

A finding we dropped

In the GitHub audit, search_code returned nothing on a private repository. The refuter ran the same search through GitHub’s REST API: also nothing. A GitHub indexing effect, not an MCP bug, so it was never reported.

Agent benchmark harnesses are hashed and frozen before the first measured run. Calls are throttled, only test tenants are used, and every number has a denominator and a control.

Sample MCP security audit report

Every finding laid out as it appears in a client report: kind, severity, impact, reproduction, control, refuter result, confidence and suggested fix. Built from our public GitHub MCP server audit.
Read the sample report

How the audit works, and what access we need

  1. 1.Scope: you send the repository or URL and tool count; we reply with a fixed quote and date.
  2. 2.Access: a test tenant, a token scoped to it, and written sign-off on scope.
  3. 3.Testing: we tell you about anything critical when we find it.
  4. 4.Report and walkthrough: a reproduction for every finding, then a call.
  5. 5.Retest: after your fixes, we rerun the same reproductions.

What we never need

  • Production write credentials
  • Customer data
  • Access that outlives the audit

Confidentiality

Reports are private by default; NDA on request. We publish nothing without your written consent. An audit tells you what we tested and found. It is not a promise that the server is secure.

After the audit: fixes and builds

Fixes are a separate, fixed-price job, quoted from the report. We build with the same rules we test for.

We don’t present an audit of code we built for you as independent work.

MCP server development, built to the same rules

Who we are

IsoKron audits MCP servers and maintains open-source MCP tooling. Judge us on evidence you can check: the upstream issues and pull requests above, the method on this page, and the tools we maintain.

Our founder spent ten years as a support engineer at Ring, through its years at Amazon. Support engineering is reproducing what customers report until you can show the cause; our audits apply that to MCP servers.

MCP server audit FAQ

How much does an MCP server audit cost?

The MCP Server Snapshot is $495. The MCP Server Audit is $1,450, and Audit + Agent Benchmark is $2,900. Founding rate for our first five clients who agree to a redacted case study: $950 and $1,950. Larger or multi-server work is typically from $4,500, as a fixed quote.

How long does an MCP server audit take?

3 business days for the Snapshot, 7 business days for the Audit and 10 business days for Audit + Agent Benchmark, counted from the day access is in place.

Does the GitHub MCP server’s read-only mode work?

Yes with --read-only or GITHUB_READ_ONLY=1/true; yes/on silently leave it off. In v2.1.0, GITHUB_READ_ONLY=yes (or on) is parsed as false, so the server starts with write tools enabled and no warning (github-mcp-server issue #3747). To check your own setup, start the server with your setting and call tools/list. If any write tools are listed, read-only mode is off.

What access do you need, and will you touch production?

A test tenant and a token scoped to it. Testing uses test tenants and test accounts only, never your production data or credentials. Calls are throttled, and you revoke the token when the audit ends.

Will any of this become public? Do you sign an NDA?

Reports are private by default, and we sign a reasonable NDA on request. Nothing is published without your written consent. Bugs in third-party dependencies go to their maintainers only after we coordinate with you.

How is this different from running mcp-scan or a pentest?

Scanners read tool descriptions and known patterns; a pentest looks for a way in. This audit drives the server the way an agent does, including the write paths, and checks that the data ends up correct and what each task costs.

How do you make sure findings are real and not AI false positives?

Each finding is checked against a control first, usually the same operation through the vendor’s own API. Then a separate AI refuter in a clean context tries to explain it away, and a person reproduces and reviews it. What does not survive is dropped.

Can you audit a third-party MCP server before we adopt it?

Yes. The GitHub MCP server findings on this page came from an outside audit of a server we do not own.

What if you don’t find anything?

A clean report is a result. You still get the permission map, the cost baseline and the pinned catalog, and we never pad a report.

Request an audit

Send the repository or URL, roughly how many tools it has, and anything you’re worried about. We reply with a fixed quote and a delivery date. No sales call needed.