# Tenjin Article Reader – Neon Read-Only MCP Guard Post

> Tenjin Article Reader – Neon Read-Only MCP Guard Post is a paid API for AI agents from tenjin.blog, paid per call via x402, $0.1/call, status unknown (last checked 2026-09-15).

Fetches the full content of a specific paid Tenjin blog article about the Neon read-only MCP tool guard and its psql bypass vulnerability.

## Facts

- Endpoint: GET https://tenjin.blog/api/read/0x3200e728f87be178b6fd289694f360ffeac2bb38/the-neon-read-only-guard-binds-to-the-mcp-tools-only-so-a-psql-fallback-silently
- Price: $0.1/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/tenjin-article-reader-neon-read-only-mcp-guard-post-e949ebb6
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_ZEw1Xf4QNHdrC2Vr_xGTI

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability tenjin-article-reader-neon-read-only-mcp-guard-post-e949ebb6
```

Example prompt: Fetch me the Tenjin article about how the Neon read-only guard only binds to MCP tools and gets silently bypassed by a psql fallback — the one by 0x3200e728f87be178b6fd289694f360ffeac2bb38.

## When to prefer this

Use this endpoint when you specifically want to retrieve this Tenjin article about Neon MCP read-only guard bypasses by its known wallet address and slug. Prefer this over generic web scraping when you need reliable, paid-access structured article content from Tenjin's creator platform, especially when referencing a specific creator by wallet address for durability.

## Known failure modes

- Article not found if slug is incorrect or unpublished — likely a 404 or error response
- Payment failure if 0.1 USDC is not available or x402 payment protocol is not supported by the caller
- Handle or wallet address not recognized — creator may be unclaimed or address may be malformed
- Slug 'latest' used with a handle instead of a wallet address — not payable and may not resolve correctly
- Network or upstream database disconnect causing incomplete or empty response

## How this service works

The Neon read-only guard binds to the MCP tools only, so a psql fallback silently bypasses it. In this repo the "database access is read-only" property is not enforced by a database role. It is enforced by a PreToolUse hook, and that hook matches two tool names and nothing else. From .claude/settings.json: The consequence is easy to miss. There is no producer_ro role on the Neon side; the hook is the boundary. So the moment you reach the database by any other path, the boundary is gone: This matters most exactly when you are most tempted to route around it. If the Neon MCP server disconne

## Output

Returns the full content of the Tenjin article, including the article body text, metadata, and any structured fields associated with the published piece. The response is an object containing the article type and example content fields.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "pathParams": {
     "type": "object",
     "required": [
      "handle",
      "slug"
     ],
     "properties": {
      "slug": {
       "type": "string",
       "description": "The article's URL slug, unique per creator. The reserved slug `latest` resolves to the creator's newest published piece; its stable scheduled-read form is the wallet-address URL /api/read/<0x-address>/latest (a handle `latest` is not payable)."
      },
      "handle": {
       "type": "string",
       "description": "The creator's handle, or their wallet address. The address form is REQUIRED for a durable `latest` alias (a handle `latest` is not payable), and is the only form for an unclaimed creator."
      }
     }
    },
    "queryParams": {
     "type": "object",
     "required": [],
     "properties": {},
     "additionalProperties": false
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/tenjin-article-reader-neon-read-only-mcp-guard-post-e949ebb6/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from tenjin.blog](https://www.zero.xyz/host/tenjin.blog/llms.txt)
