# Notion MCP server 2.5.2 (@notionhq/notion-mcp-server): our test log

Canonical: https://theagenticweekly.com/tests/notion-mcp · Last verified: 2026-10-26 · Published: 2026-10-26 · Author: Agentic Weekly (operated independently from Texas, US) · Evidence: Tested by us on 2026-10-26. Local open-weight model, not the vendor's hosted models. A smoke test on a CPU-only box, not a benchmark.

> Notion MCP server 2.5.2 (@notionhq/notion-mcp-server) started over stdio in a median 316 ms and listed 24 tools in a median 16 ms; we did not make any authenticated call.

## Result at a glance

Table: Notion MCP server test record

| Field | Value |
|---|---|
| Result | Passed |
| Version tested | 2.5.2 (@notionhq/notion-mcp-server) |
| Date and time | 2026-10-26, 09:42 CDT (America/Chicago) |
| Task | A small Python client written with the official MCP Python SDK spawns the server as a child process over stdio with a placeholder access token (not a real credential), times the initialize handshake (spawn to initialize result) and one tools/list, three cold starts. Pass means initialize succeeds and the tool list comes back. No request is sent to the vendor's service. Numbers are milliseconds on the rig described on the methodology page. |
| Model used | none (no language model involved) |
| Hardware | Linux x86_64 virtual machine (Debian 13), 8 vCPU (Intel Xeon, 1 thread per core), 15 GiB RAM, no GPU |
| Cold start (3 runs) | 467 ms, 316 ms, 249 ms; median 316 ms |
| tools/list (3 runs) | 22.3 ms, 14.4 ms, 16.4 ms |
| Tools advertised | 24 |

## What we found

- It advertised 24 tools (pages, blocks, data sources, comments).
- The tool names are generated from Notion's API (API-post-page, API-query-data-source and similar) rather than hand-written task verbs.

## What we ran, step by step

Table: Commands run, wall-clock time and exit code

| Step | Wall time | Exit code | Notes |
|---|---|---|---|
| Install with npm (cold, no cache) | 6.3 s | 0 | 51 MB in the install directory; @notionhq/notion-mcp-server 2.5.2. Load 12.94. |
| Handshake and tools/list, 3 cold starts | n/a | 0 | Notion API 1.0.0 (protocol 2025-11-25). Cold start 467, 316, 249 ms (median 316); tools/list 22.3, 14.4, 16.4 ms; 24 tools. Load 13.65 to 14.84. |

Exact commands (paths shortened)

```
# Install with npm (cold, no cache)
cd work/npm/notion-mcp && npm init -y >/dev/null && npm install @notionhq/notion-mcp-server --cache /tmp/npmcache-notion-mcp --no-audit --no-fund 2>&1 | tail -3; du -sm node_modules | cut -f1; npm ls --depth=0 2>/dev/null | tail -2

# Handshake and tools/list, 3 cold starts
NOTION_TOKEN=<placeholder> work/npm/notion-mcp/node_modules/.bin/notion-mcp-server
```

## Raw output (excerpts)

Tools the server advertised (first 12)

```
API-get-user, API-get-users, API-get-self, API-post-search, API-get-block-children, API-patch-block-children, API-retrieve-a-block, API-update-a-block, API-delete-a-block, API-retrieve-a-page, API-patch-page, API-post-page ...
```

## Gotchas and things that broke

- The local npm server is the open-source one; Notion also hosts a separate remote MCP service, which we did not test.

## What we did not test

- Any authenticated call: we used a placeholder token, so no request reached the vendor's API and we did not check that real accounts, permissions or rate limits work.
- Remote (HTTP) transport and concurrent clients: only local stdio with one client was run.
- Anything about answer quality: no model was involved in the handshake and tool-list check.
- A single smoke-test run set (three starts); it is not a benchmark.

## Reproduce it

Versions change. These commands install whatever is latest on the day you run them unless a version is pinned, so expect different results later. The version we measured is in the table above.

```
npm install @notionhq/notion-mcp-server
NOTION_TOKEN=<your integration token> npx notion-mcp-server
```

## How to read this test

Every number on this page was measured on this one machine, which also ran other jobs, so timings are indicative and vary run to run. A pass means our small task worked once or as stated, a fail means it did not work as we ran it; neither says how the tool behaves with a vendor's frontier model, on a GPU, or at scale. Where a tool could not run without an account or a GPU, we say so instead of guessing.

See the [testing rig](https://theagenticweekly.com/methodology#testing-rig) for the hardware, the local model and the rules we follow, and the [test hub](https://theagenticweekly.com/tests) for every other test.

## FAQ

### Does Notion MCP server need an account?

Yes for real use: it calls the vendor's API with an access token you create. For this test we used a placeholder token, which was enough for the server to start and list its tools but means no API call was exercised.

## Sources

- [Notion MCP server repository](https://github.com/makenotion/notion-mcp-server) (fetched 2026-10-26)

## Related

- [All test logs](https://theagenticweekly.com/tests)
- [Methodology and testing rig](https://theagenticweekly.com/methodology#testing-rig)
- [Study: MCP server startup and call latency over stdio](https://theagenticweekly.com/research/mcp-servers-latency-and-failures)
- [Notion MCP server facts and sources](https://theagenticweekly.com/tools/notion-mcp)

## How to cite

Agentic Weekly, "Notion MCP server 2.5.2 (@notionhq/notion-mcp-server): our test log", last updated 2026-10-26, https://theagenticweekly.com/tests/notion-mcp
