# Roam Research MCP server

Agent View of the PolicyLayer registry record for Roam Research: identity, probed posture, risk grade, and all 22 tools classified. HTML page: https://policylayer.com/tools/2b3pro-roam-research-mcp

## Facts

- Server id: `2b3pro/roam-research-mcp`
- Homepage: https://github.com/2b3pro/roam-research-mcp
- Registry record: grade D, identity unverified
- Lifecycle: active
- Rate-limited: no
- Tools: 22
- Tool categories present: Read, Write
- Tags: 2b3pro roam research mcp
- Record last modified: 2026-09-30T17:37:54.286Z

## Tools (22)

| Tool | Category | Risk | Record |
| --- | --- | --- | --- |
| `roam_datomic_query` | Execute | High | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-datomic-query.md |
| `roam_fetch_block` | Read | Low | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-fetch-block.md |
| `roam_fetch_page_by_title` | Read | Low | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-fetch-page-by-title.md |
| `roam_fetch_page_full_view` | Read | Low | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-fetch-page-full-view.md |
| `roam_find_pages_modified_today` | Read | Low | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-find-pages-modified-today.md |
| `roam_get_subpages` | Read | Low | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-get-subpages.md |
| `roam_markdown_cheatsheet` | Read | Low | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-markdown-cheatsheet.md |
| `roam_recall` | Read | Low | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-recall.md |
| `roam_search_block_refs` | Read | Low | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-search-block-refs.md |
| `roam_search_by_date` | Read | Low | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-search-by-date.md |
| `roam_search_by_status` | Read | Low | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-search-by-status.md |
| `roam_search_by_text` | Read | Low | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-search-by-text.md |
| `roam_search_for_tag` | Read | Low | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-search-for-tag.md |
| `roam_search_hierarchy` | Read | Low | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-search-hierarchy.md |
| `roam_add_todo` | Write | Medium | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-add-todo.md |
| `roam_create_outline` | Write | Medium | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-create-outline.md |
| `roam_create_page` | Write | Medium | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-create-page.md |
| `roam_import_markdown` | Write | Medium | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-import-markdown.md |
| `roam_move_block` | Write | Medium | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-move-block.md |
| `roam_remember` | Write | Medium | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-remember.md |
| `roam_rename_page` | Write | Medium | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-rename-page.md |
| `roam_update_page_markdown` | Write | Medium | https://policylayer.com/tools/2b3pro-roam-research-mcp/roam-update-page-markdown.md |

## Tool descriptions

- `roam_datomic_query` — Execute a custom Datomic query on the Roam graph for advanced data retrieval beyond the available search tools. This provides direct access to Roam\
- `roam_fetch_block` — Fetch a block by its UID with optional children (down to a specified depth) and/or ancestors (up to page root). Returns the block\
- `roam_fetch_page_by_title` — Fetch page by title. Returns content in the specified format.
- `roam_fetch_page_full_view` — Fetch a complete page view that mirrors what Roam Research shows in its UI: the page\
- `roam_find_pages_modified_today` — Find pages that have been modified today (since midnight), with pagination and sorting options.
- `roam_get_subpages` — Fetch all sub-pages (namespace children) of a given page prefix. Matches by page title prefix — pages titled
- `roam_markdown_cheatsheet` — Provides the comprehensive Roam syntax reference. Covers: formatting, links & references (page refs, block refs, embeds including embed-children and embed-path), tags, dates, tasks, attributes, queries (native and :q Datalog tables with …
- `roam_recall` — Retrieve all stored memories on page titled ROAM_MEMORIES_TAG, or tagged block content with the same name. Returns a combined, deduplicated list of memories. Optionally filter blocks with a specific tag and sort by creation date.
- `roam_search_block_refs` — Search for block references within a page or across the entire graph. Can search for references to a specific block, a page title, or find all block references.
- `roam_search_by_date` — Search for blocks or pages based on creation or modification dates. Not for daily pages with ordinal date titles.
- `roam_search_by_status` — Search for blocks with a specific status (TODO/DONE) across all pages or within a specific page.
- `roam_search_by_text` — Search for blocks containing specific text across all pages or within a specific page. Use
- `roam_search_for_tag` — Search for blocks containing a specific tag. Use
- `roam_search_hierarchy` — Search for parent or child blocks in the block hierarchy. Can search up or down the hierarchy from a given block.
- `roam_add_todo` — Add a list of todo items as individual blocks to today\
- `roam_create_outline` — Add a structured outline to an existing page or block (by title text or uid), with customizable nesting levels. To create a new page with an outline, use the
- `roam_create_page` — Create a new standalone page in Roam with optional content, including structured outlines and tables, using explicit nesting levels and headings (H1-H3). This is the preferred method for creating a new page with an outline in a single st…
- `roam_import_markdown` — Import nested markdown content into Roam under a specific block. Can locate the parent block by UID (preferred) or by exact string match within a specific page. If a
- `roam_move_block` — Move a block to a new location (different parent or position). This is a convenience wrapper around
- `roam_remember` — Add a memory or piece of information to remember, stored on the daily page with ROAM_MEMORIES_TAG tag and optional categories (unless include_memories_tag is false). \nNOTE on Roam-flavored markdown: For direct linking: use [[link]] synt…
- `roam_rename_page` — Rename a page by changing its title. Identifies the page by current title or UID.
- `roam_update_page_markdown` — Update an existing page with new markdown content using smart diff. Preserves block UIDs where possible and generates minimal changes. This is ideal for:\n- Syncing external markdown files to Roam\n- AI-assisted content updates that pres…

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=2b3pro-roam-research-mcp · API: https://policylayer.com/registry/api · Recommended policies for every tool: https://policylayer.com/policies/2b3pro-roam-research-mcp
