Markdown-first Notion for AI agents -- pages, databases, blocks, and comments in one call.
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio · streamable-http · http counts 0 tools · 0 res
· 0 prompts
permission surface via code analysis
No tools enumerated yet for this server.
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit f0008c6 · analyzer v28 · 2d ago
skills & prompt files 4
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 80
filesystem 3
- fs n24q02m-better-notion-mcp-f0008c6/src/create-server.ts :6
import { readFileSync } from 'node:fs' - fs n24q02m-better-notion-mcp-f0008c6/src/main.ts :11
import { readFileSync, realpathSync } from 'node:fs' - fs n24q02m-better-notion-mcp-f0008c6/src/tools/registry.ts :6
import { readFile } from 'node:fs/promises'
network 2
- net n24q02m-better-notion-mcp-f0008c6/src/tools/helpers/pagination.ts :20
maxPages?: number // Max pages to fetch (0 = unlimited, capped by MAX_PAGES_SAFETY) - net n24q02m-better-notion-mcp-f0008c6/src/worker.ts :30
NOTION?: { idFromName(n: string): unknown; get(id: unknown): { fetch(r: Request): Promise<Response> } }
secrets 4
- secrets n24q02m-better-notion-mcp-f0008c6/src/credential-state.ts :80
const envToken = process.env.NOTION_TOKEN - secrets n24q02m-better-notion-mcp-f0008c6/src/main.ts :84
if (!process.env.NOTION_TOKEN) { - secrets n24q02m-better-notion-mcp-f0008c6/src/tools/composite/config.ts :32
token_source: token ? (process.env.NOTION_TOKEN ? 'environment' : publicUrl ? 'oauth' : 'relay') : null - secrets n24q02m-better-notion-mcp-f0008c6/src/transports/http.ts :136
const clientSecret = argFlag('oauth-client-secret') || process.env.NOTION_OAUTH_CLIENT_SECRET
install hooks 1
- prepublishOnly n24q02m-better-notion-mcp-f0008c6/package.json :41
bun run build
declared dependencies 13
- @modelcontextprotocol/sdk@^1.29.0
- @cloudflare/containers@^0.3.7
- @n24q02m/mcp-core@1.20.0
- @notionhq/client@^5.23.2
- zod@^4.4.3
- @biomejs/biome@^2.5.4
- @cloudflare/workers-types@^5.20260718.1
- @types/node@^26.1.1
- @vitest/coverage-v8@^4.1.10
- esbuild@^0.28.1
- tsx@^4.23.1
- typescript@^5.9.3
- vitest@^4.1.10
obfuscation 1
- dynamic require()/import() n24q02m-better-notion-mcp-f0008c6/src/main.test.ts :462
await import(`${pathToFileURL(mainPath).href}?test=${Date.now()}`)
transport_posture 1
- binds all interfaces (0.0.0.0) n24q02m-better-notion-mcp-f0008c6/src/transports/http.test.ts :226
host: '0.0.0.0',