trip2g
Server Details
Serve a folder of Markdown notes as an MCP server: hybrid search, reading, and sourced answers.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- trip2g/trip2g
- GitHub Stars
- 24
- Server Listing
- trip2g
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Score is being calculated. Check back soon.
Available Tools
10 toolsexpandInspect
Walk a note's table of contents level by level (progressive disclosure). Canonical call: expand(path=<result.note_path>, toc_path=[...]) — copy path verbatim from a search result's note_path field. Returns the direct children of a TOC node: omit toc_path (or pass []) for the top-level sections, or pass a toc_path to list that section's subsections. Each child has title, level, path, and has_children. Drill down with expand, then read a leaf with note_html(path=..., toc_path=[...]) — no need to load the whole note or its full flat TOC.
| Name | Required | Description | Default |
|---|---|---|---|
| pid | No | Non-negative integer (uint64) note id, copied verbatim from a search result's note_id field. Not a path, slug, or match_id. Prefer path | |
| href | No | String note href, copied verbatim from a search result's href field | |
| path | No | String note path, e.g. "concepts/maska-i-glubina.md" — copy verbatim from a search result's note_path field. The default, preferred way to reference a note | |
| note_id | No | Same as pid: non-negative integer (uint64) note id, copied verbatim from a search result's note_id field. Not a path, slug, or match_id. Prefer path | |
| toc_path | No | Breadcrumb path to the node to expand, e.g. ["Chapter 1"]. Omit or [] for the top level. |
federated_expandInspect
Walk a remote note's table of contents level by level inside a connected knowledge base (progressive disclosure), same as expand. Canonical call: federated_expand(kb_id=..., path=<result.note_path>, toc_path=[...]). Omit toc_path for the top level, or pass a toc_path to list that node's subsections.
| Name | Required | Description | Default |
|---|---|---|---|
| pid | No | Non-negative integer (uint64) remote note id, copied verbatim from a federated_search result's note_id field. Prefer path | |
| href | No | String remote note href, copied verbatim from a federated_search result's href field | |
| path | No | String remote note path, copied verbatim from a federated_search result's note_path field | |
| kb_id | Yes | Target knowledge base id; nested bases use '/' (e.g. "philosophers/nietzsche" routes through the 'philosophers' peer, recursively). Federation nests up to 3 levels deep (kb_id path segments); a deeper path is rejected. | |
| note_id | No | Same remote note id as pid, but as a STRING (uint64) — stringify the federated_search result's note_id field. Prefer path | |
| toc_path | No | Breadcrumb path to the node to expand. Omit or [] for the top level. |
federated_instructionsInspect
Fetch the instructions/guidance for a federated knowledge base by kb_id (e.g. "philosophers/nietzsche") — read a base's own conventions before searching it. Nested bases are addressed with '/' and the call routes through each peer recursively.
| Name | Required | Description | Default |
|---|---|---|---|
| kb_id | Yes | Target knowledge base id; nested bases use '/' (e.g. "philosophers/nietzsche" routes through the 'philosophers' peer, recursively) |
federated_note_htmlInspect
Read a remote note inside a connected knowledge base. Canonical call, copying fields verbatim from a federated_search result: federated_search(kb_id="philosophers/", query) -> federated_note_html(kb_id="philosophers/", path=<result.note_path>) — the standard way to descend into a leaf corpus and read real content there, not hub cards. federated_note_html(kb_id=..., match_id=<match.match_id>) reads just the focused chunk around a hit. Only pass pid/note_id if you already copied that exact id from a result. path is a string like "concepts/x.md"; match_id is "p:c"; a value like ":" or "/hub/goethe.md" is a PATH, not a note_id.
| Name | Required | Description | Default |
|---|---|---|---|
| pid | No | Non-negative integer (uint64) remote note id, copied verbatim from a federated_search result's note_id field. Not a path, slug, or match_id. Prefer path or match_id | |
| href | No | String remote note href or absolute URL, copied verbatim from a federated_search result's href field | |
| path | No | String remote note path, copied verbatim from a federated_search result's note_path field | |
| kb_id | Yes | Target knowledge base id; nested bases use '/' (e.g. "philosophers/nietzsche" routes through the 'philosophers' peer, recursively). Federation nests up to 3 levels deep (kb_id path segments); a deeper path is rejected. | |
| note_id | No | Same remote note id as pid, but as a STRING (uint64) — stringify the federated_search result's note_id field. Not a path, slug, or match_id. Prefer path or match_id | |
| match_id | No | String chunk id of the form "p<pid>:c<chunk>", copied verbatim from a remote search match's match_id field; alone it is enough to resolve the note |
federated_searchInspect
Search connected knowledge bases. Returns snippets with heading breadcrumbs (title > section > subsection) and a precise toc_path per match, same as search; results also carry an absolute kb_id (string) to use verbatim on follow-up calls. Pass kb_id for one base, kb_ids for selected bases, or omit both to fan out. Nested bases are addressed with '/': kb_id "philosophers/nietzsche" routes through the 'philosophers' peer to the base it federates (recursive), up to 3 levels deep. Canonical call: federated_search(kb_id="philosophers/", query) -> federated_note_html(kb_id="philosophers/", path=<result.note_path>) — the standard way to descend into a leaf corpus and read real content, not hub cards.
| Name | Required | Description | Default |
|---|---|---|---|
| kb_id | No | Target knowledge base id; nested bases use '/' (e.g. "philosophers/nietzsche" routes through the 'philosophers' peer, recursively). Federation nests up to 3 levels deep (kb_id path segments); a deeper path is rejected. | |
| limit | No | Max number of results to return (default 6) | |
| query | Yes | Search query | |
| kb_ids | No | Target knowledge base ids; each accepts the same nested 'peer/base' form as kb_id | |
| detail_limit | No | How many results include full snippet matches; results beyond this are returned as lightweight previews (title, path, score) to save context (default 3) |
federated_similarInspect
Find remote notes similar to a known note reference inside a connected knowledge base. Preferred: path (a federated_search result's note_path field).
| Name | Required | Description | Default |
|---|---|---|---|
| pid | No | Non-negative integer (uint64) remote note id, copied verbatim from a federated_search result's note_id field. Prefer path | |
| href | No | String remote note href, copied verbatim from a federated_search result's href field | |
| path | No | String remote note path, copied verbatim from a federated_search result's note_path field | |
| kb_id | Yes | Target knowledge base id; nested bases use '/' (e.g. "philosophers/nietzsche" routes through the 'philosophers' peer, recursively). Federation nests up to 3 levels deep (kb_id path segments); a deeper path is rejected. | |
| limit | No | Max number of results | |
| note_id | No | Same remote note id as pid, but as a STRING (uint64) — stringify the federated_search result's note_id field. Prefer path |
instructionsInspect
Full tool reference for the trip2g documentation base
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
note_htmlInspect
Read a note. Canonical calls, copying fields verbatim from a search result: search(query) -> note_html(path=<result.note_path>) reads the whole note; search(query) -> note_html(match_id=<match.match_id>) reads just the focused chunk around a hit (cheaper, targeted); expand(path=<result.note_path>, toc_path=[...]) -> note_html(path=<result.note_path>, toc_path=[...]) reads one exact section. Only pass pid/note_id if you already copied that exact integer from a result's note_id field — never invent one. path is a string like "concepts/x.md"; match_id is "p:c"; a value like ":" or "/hub/goethe.md" is a PATH, not a note_id.
| Name | Required | Description | Default |
|---|---|---|---|
| pid | No | Non-negative integer (uint64) note id, copied verbatim from a search result's note_id field. Not a path, slug, or match_id — a value like ":" or "/hub/goethe.md" is a path, not a note id. Prefer path or match_id | |
| href | No | String note href or absolute URL, copied verbatim from a search result's href field | |
| path | No | String note path, e.g. "concepts/maska-i-glubina.md" — copy verbatim from a search result's note_path field. The default, preferred way to open a note | |
| note_id | No | Same as pid: non-negative integer (uint64) note id, copied verbatim from a search result's note_id field. Not a path, slug, or match_id. Prefer path or match_id | |
| match_id | No | String chunk id of the form "p<pid>:c<chunk>" (e.g. "p32:c4"), copied verbatim from a search match's match_id field. Alone it is enough to resolve the note and reads a focused window around that hit | |
| toc_path | No | Breadcrumb path to a specific section, e.g. ["Chapter 1", "Introduction"]. Use toc_path from a search match, or a child path from expand. | |
| context_words | No | Optional future hint for expanding focused reads |
searchInspect
Search notes by query. Returns snippets with a heading breadcrumb (title > section > subsection) that locates the approximate section, plus a precise toc_path per match. Each result carries note_path (string) and note_id (integer); each match carries match_id (string, form "p:c"). Drill-down workflow: 1) search to find the approximate section via the breadcrumb; 2) call note_html(path=<result.note_path>, toc_path=[...]) to read the matched section, or expand(path=<result.note_path>, toc_path=[...]) to navigate the note's structure level by level; 3) note_html(path=<result.note_path>, match_id=<match.match_id>) for a focused chunk window.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max number of results to return (default 6) | |
| query | Yes | Search query | |
| detail_limit | No | How many results include full snippet matches; results beyond this are returned as lightweight previews (title, path, score) to save context (default 3) |
similarInspect
Find related notes from a known note reference. Preferred: path (a search result's note_path field). Use this after opening a promising note when you need nearby context.
| Name | Required | Description | Default |
|---|---|---|---|
| pid | No | Non-negative integer (uint64) note id, copied verbatim from a search result's note_id field. Not a path, slug, or match_id — a value like ":" or "/hub/goethe.md" is a path, not a note id. Prefer path | |
| href | No | String note href, copied verbatim from a search result's href field | |
| path | No | String note path, e.g. "concepts/maska-i-glubina.md" — copy verbatim from a search result's note_path field. The default, preferred way to reference a note | |
| limit | No | Max number of results (default 10) | |
| note_id | No | Same as pid: non-negative integer (uint64) note id, copied verbatim from a search result's note_id field. Not a path, slug, or match_id. Prefer path |
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Your Connectors
Sign in to create a connector for this server.