← Registry

Productivity

trip2g.com

A tool for searching, reading, and exploring notes and connected knowledge bases.

1 endpoint10 known toolsFirst detected July 25, 2026Last detected July 25, 2026

ENDPOINT 1

https://trip2g.com/_system/mcp

No auth detected

MCP server metadata

Name
trip2g-mcp
Version
1.0.0
Capabilities
tools
Server instructions

You are connected to the trip2g documentation base (trip2g.com). trip2g is a Markdown publishing platform: it turns an Obsidian vault into a website with subscriptions, Telegram publishing, and this MCP server for AI agents. This base holds the trip2g user guides (`en/user/`, `ru/user/`), the changelog, developer docs (`dev/`), and design plans (`plans/`). Answer from retrieved sources, not memory. Follow the loop below: it keeps every read to one section (~300 tokens) instead of a whole note (3,000+). ## The retrieval loop 1. `search(query)` — up to 6 results; the top 3 carry `matches[]`, each with a `snippet` and a `toc_path` (breadcrumb to the matching section). 2. Read only that section: `note_html(pid=<note_id>, toc_path=<match.toc_path>)`. 3. Pointer looks off, or you want to survey the note first? `expand(pid=N)` lists its top-level sections; `expand(pid=N, toc_path=["Section"])` lists that section's subsections. Descend to a leaf, then read it with `note_html(toc_path=...)`. 4. Read a whole note (`note_html(pid=N)` with no `toc_path`) only when `expand` shows it has no sections. Worked example — the user asks "how do I connect a private federation peer?": ``` search("private federation peer HMAC secret") → 1. MCP Federation, note_id=658, match toc_path=["Adding a private peer (two-step exchange)"] note_html(pid=658, toc_path=["Adding a private peer (two-step exchange)"]) → one section; answer from it, cite https://trip2g.com/en/user/federation ``` ## Other tools — one-line triggers - `similar(pid=N)` — you found one good note and want its neighbors. Example: after the federation guide, `similar(pid=658)` surfaces the protocol guide and the RU twin. - `federated_search(query)` — local `search` found nothing relevant, or a result had `kind: "federation_kb"` (a pointer to a connected base). It fans the query out across all connected bases; pass `kb_id="..."` to target one. Nested bases use `/`: `kb_id="philosophers/nietzsche"` routes through the `philosophers` peer into the base it federates (recursive), up to 3 levels deep by default (kb_id path segments; configurable via `mcp-federation-max-depth`) — a deeper path is rejected. A base reached _through_ a hub is addressed `<hub>/<base>` (a `philosophers` hub note advertising `kb_id: montaigne` is `philosophers/montaigne` from here). Every result carries an absolute `kb_id` in your frame — use it verbatim. Follow-up reads go through `federated_note_html` / `federated_expand` / `federated_similar`, and each of those requires the `kb_id`. Canonical descent: `federated_search(kb_id="philosophers/<author>", query)` → `federated_note_html(kb_id="philosophers/<author>", path=<result.note_path>)` — the way to reach real content in a leaf corpus, not hub cards. Call the `instructions` tool for the full argument reference. ## Guardrails - Never open a note without `toc_path` (or `match_id`) on the first read. A section is ~10x cheaper and lands at the top of your context, where recall is best. - A wrong `toc_path` does not error — it silently returns the whole note. If a `note_html` response is much longer than one section, your pointer missed: stop, call `expand(pid=N)` to see the real headings, and re-read with an exact title from that list. - `toc_path` entries must match headings exactly, punctuation included. Copy them from `search` matches or `expand` children; never guess or translate them. - Prefer `toc_path` over `match_id`. A `match_id` gives a focused chunk window only in its `pN:cM` form; `pN:mM` ids do not resolve. - Ignore `demo/` notes — that is a Marcus Aurelius / Meditations showcase, not trip2g documentation — unless the user asks about the demo itself. - Ground answers only in sections you actually read, and cite the note URL. If the docs do not cover something, say so briefly. - Answer in the user's language. Guides exist as `en/user/` and `ru/user/` mirrors; prefer the one matching the user.

Known tools 10

search

Search notes by query.

Inferred read-only
similar

Find related notes from a known note reference.

Inferred read-only
note_html

Read a note.

Inferred read-only
expand

Walk a note's table of contents level by level (progressive disclosure).

Inferred read-only
federated_search

Search connected knowledge bases.

Inferred read-only
federated_similar

Find remote notes similar to a known note reference inside a connected knowledge base.

Inferred read-only
federated_note_html

Read a remote note inside a connected knowledge base.

Inferred read-only
federated_expand

Walk a remote note's table of contents level by level inside a connected knowledge base (progressive disclosure), same as expand.

Inferred read-only
federated_instructions

Fetch the instructions/guidance for a federated knowledge base by kb_id (e.

Inferred read-only
instructions

Full tool reference for the trip2g documentation base

Inferred read-only

CONNECT WITH APPROVAL

Client installation

Review this server and its permissions before adding it. Secret placeholders must be set locally.

Codex

~/.codex/config.toml

[mcp_servers.trip2g-mcp]
url = "https://trip2g.com/_system/mcp"
enabled = true
Claude Code

.mcp.json

{
  "mcpServers": {
    "trip2g-mcp": {
      "type": "http",
      "url": "https://trip2g.com/_system/mcp"
    }
  }
}
Claude Desktop

Settings → Connectors → Add custom connector

Name: trip2g-mcp
Remote MCP URL: https://trip2g.com/_system/mcp

Add this remote URL as a custom connector in Claude Desktop. Availability depends on the user plan and workspace policy.

Cursor

.cursor/mcp.json

{
  "mcpServers": {
    "trip2g-mcp": {
      "url": "https://trip2g.com/_system/mcp"
    }
  }
}
Visual Studio Code

.vscode/mcp.json

Add to Visual Studio Code
{
  "servers": {
    "trip2g-mcp": {
      "type": "http",
      "url": "https://trip2g.com/_system/mcp"
    }
  }
}
Generic MCP

Client-specific MCP configuration

{
  "name": "trip2g-mcp",
  "transport": "streamable-http",
  "url": "https://trip2g.com/_system/mcp"
}
MCP Inspector

Run the official MCP Inspector locally and enter the indexed Streamable HTTP endpoint.

TRUST AND VERIFICATION EVIDENCE

Loading Trust v2 evidence…

Checking the associated registrable domain. The BuiltWith key remains server-side.

Indexed

Evidence is source-attributed and does not guarantee that a third-party server is safe. Risk labels are conservative metadata heuristics.