MojaLab Content
Server Details
Read-only access to MojaLab.com blog content: search and read posts, pages and tags as Markdown.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
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
Average 4.1/5 across 9 of 9 tools scored.
Each tool targets a distinct resource or action: pages, posts, related posts, site summary, tags, and searches. The only potential confusion is between search_all and search_posts, but their descriptions clearly specify scope (all content vs. posts only), so ambiguity is low.
All tools follow a consistent verb_noun pattern: get_* for single-item retrieval, list_* for collections, and search_* for search operations. There are no mixed naming conventions or vague verbs.
Nine tools is well-scoped for a content retrieval server covering posts, pages, tags, search, and site overview. Each tool provides a distinct function without redundancy or overwhelming count.
The surface covers the core read-only lifecycle for a static content site: retrieving individual pages/posts, listing resources, searching across content, and getting related items. Given the server's purpose is content access, there are no major dead ends or missing operations.
Available Tools
9 toolsget_pageGet a static pageAInspect
Get the full content of a published MojaLab static page as Markdown, by slug.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Page slug, e.g. "about" |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the burden. It discloses that the operation is a read ('Get'), that it returns the full content, and that the output format is Markdown. This suffices for a straightforward retrieval tool, though it could mention implications like whether any additional metadata is included.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the verb and resource. Every word serves a purpose with no redundancy or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one required parameter, no output schema), the description adequately explains what the tool does. It could be slightly more explicit about the return format (e.g., 'only the markdown content'), but it is still sufficient for correct use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already explains the slug parameter. The description adds 'by slug' as a reinforcement but does not provide new semantics beyond the schema's 'Page slug, e.g. "about"'. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get', specifies the resource 'published MojaLab static page', and indicates the output format 'as Markdown'. The parameter 'by slug' distinguishes it from siblings like get_post and list_pages, which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when needing full content of a specific page by slug, which is clear context. However, it does not explicitly state when not to use it (e.g., when only page metadata is needed, use list_pages instead) or mention alternatives. For a simple tool, this is still good.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_postGet a blog postAInspect
Get the full content of a published MojaLab blog post as Markdown, by slug. Includes any companion repository link.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Post slug, e.g. "hello-world" |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It discloses that only published posts are returned, that the output is Markdown, and that a companion repository link may be included. It does not state error behavior or side effects, but the 'get' verb and the clear output description provide reasonable transparency for a simple read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loaded with the primary action and output format, and contains no superfluous information. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one parameter and no output schema. The description explains the return content (Markdown and optional repository link) and the constraint (published posts). It could mention handling of missing slugs, but for a straightforward retrieval tool, the description is essentially complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with a clear example for the slug parameter. The description adds the phrase 'by slug', which reinforces the parameter usage but does not add new meaning beyond the schema. Therefore, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets the full content of a specific blog post by slug, indicates the return format (Markdown), and mentions the companion repository link. It distinguishes itself from siblings like list_posts (which likely only lists) and get_related_posts (which gets related posts).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on when to use the tool: to retrieve a single published post's full content by slug. It does not explicitly mention alternatives or exclusions, but the specific phrasing (full content, by slug) implies it is for detailed retrieval rather than listing or searching.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_site_summaryGet site summaryAInspect
Get a concise overview of mojalab.com in one call: what the site is about, main topics, article/page counts, recent articles, and available tools/pages. Use for questions like "what is mojalab?".
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It states what the tool returns (overview, topics, counts, recent articles, tools/pages), which is transparent about the output contents. However, it does not disclose any potential limitations, data freshness, or side effects (nor does it explicitly say it is read-only, though 'Get' implies it). This is adequate for a simple read-only overview tool but lacks detailed behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loads the purpose, and packs relevant details (site overview contents and usage example) without any filler. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no output schema, the description fully covers what the call does, what it returns, and when to use it. It could go deeper (e.g., number of recent articles or data source), but the provided information is sufficient for a user to select and invoke the tool correctly, especially given the sibling context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4. There are no parameter semantics to clarify, and the description adds no unnecessary detail about parameters. This is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and clearly identifies the resource (a concise overview of mojalab.com) with its contents (site topic, main topics, counts, recent articles, tools/pages). This differentiates it from sibling tools like get_page or list_posts, which focus on individual pages/posts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides an explicit use case: 'Use for questions like "what is mojalab?"' This gives clear context for when to invoke the tool. However, it does not explicitly state when not to use it or mention alternatives, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_pagesList static pagesAInspect
List published static pages on MojaLab (about, tools, ...).
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (default 1) | |
| limit | No | Pages per page (default 10, max 50) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, but the description indicates a read-only operation (list published pages). It does not disclose potential behavioral traits like rate limits, authentication needs, or response format. For a simple list tool, this is adequate but not transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence with no wasted words. It is front-loaded with the key action and resource. It is concise but could benefit from slight expansion for clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool, no output schema, and full schema coverage, the description adequately conveys what the tool does. It mentions the scope (published static pages on MojaLab) and examples. It could mention pagination behavior, but that is covered in the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both pagination parameters (page, limit). The description adds no additional meaning beyond what the schema already provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (list) and resource (published static pages on MojaLab), with examples (about, tools). It distinguishes from siblings like get_page (single page) and list_posts (posts vs pages).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for listing static pages but provides no explicit guidance on when to use this tool versus alternatives like get_page for a single page, or list_posts for posts. No when-not-to-use conditions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_postsList blog postsAInspect
List published MojaLab blog posts (title, slug, excerpt, tags, date). Paginated; optionally filter by tag slug, filter by publish date, and sort.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | Filter by tag slug (see list_tags) | |
| page | No | Page number (default 1) | |
| sort | No | Sort order (default date_desc) | |
| limit | No | Posts per page (default 10, max 50) | |
| since | No | Only posts published on/after this date (YYYY-MM-DD) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It explicitly mentions pagination, optional filtering by tag and date, and sorting, which are key behavioral traits. It also notes that it returns only published posts. This is transparent for a read-only list tool, though it doesn't state defaults (like sort order) or error handling, but those are covered in the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, with the primary purpose front-loaded and supporting details (pagination, filters, sort) efficiently listed. No wasted words or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is sufficient for a simple list tool: it names the resource, return fields, pagination, and optional filters. It does not need to explain return values in detail since there is no output schema, but the field list in parentheses provides essential context. Sibling tools are not referenced, but the description's scope is clear enough for an agent to decide when to call it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all five parameters are well-documented in the schema. The description adds a high-level mention of 'tag slug', 'publish date', and 'sort', but does not provide additional meaning beyond the schema. Baseline 3 is appropriate given the schema already fully explains each parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('published MojaLab blog posts') and specifies the returned fields (title, slug, excerpt, tags, date). It clearly distinguishes from siblings like get_post (single post) and search_posts (full-text search), making the tool's purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states the tool lists published posts with pagination and optional filters (tag slug, publish date, sort), giving clear context for when to use it. It does not explicitly exclude alternatives or name sibling tools, but the filter capabilities imply it is for browsing/filtering rather than single-record retrieval or full-text search.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_tagsList tagsAInspect
List all public tags on MojaLab with their post counts and descriptions.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly states that the tool lists all public tags (implying read-only, no auth needed for public data) and that the results include post counts and descriptions, giving a good sense of the return content. It doesn't address pagination or ordering, but these are not critical for a no-parameter list tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys all necessary information without any fluff. Every word adds value: 'List', 'all public tags', 'MojaLab', 'post counts', 'descriptions'.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, no output schema), the description is largely complete. It explains what is returned (tags with post counts and descriptions) and the scope (all public tags). The only minor gap is not explicitly stating the tag name is included, but that is implied by 'list tags'. Overall, it provides sufficient context for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema is trivially complete. The rule for 0 parameters is a baseline of 4, and the description adds no confusing parameter information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: listing all public tags on MojaLab, including post counts and descriptions. It uses a specific verb ('List') and identifies the resource ('public tags'), which distinguishes it from sibling tools like list_pages and list_posts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (when needing tags) but provides no explicit guidance on alternatives or exclusions. It does not mention that list_pages or list_posts should be used for other content types, leaving the usage context inferred rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_allSearch all contentAInspect
Search across all published content — blog posts, static pages/tools, and companion GitHub repositories — ranked by relevance. Each result is prefixed with [post], [page], or [repo].
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default 10) | |
| query | Yes | Keyword or question to search for | |
| content_type | No | Restrict to a content type (default all) | |
| excerpt_length | No | Max excerpt characters (default 150) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It adds useful behavioral details: results are restricted to 'published content', ranked by relevance, and each result is prefixed with [post], [page], or [repo]. It does not mention read-only status or pagination, but for a search tool these are generally inferred and the provided details are meaningful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, with the first sentence stating the core action and scope, and the second providing a useful result-format detail. No filler or redundant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has four parameters, all documented in the schema, and no output schema is present. The description adequately covers the tool's behavior (what is searched, ranking, and output prefix), and the schema covers parameter details. It is complete for a search tool of this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the base score is 3. The description does not add extra parameter guidance beyond the schema. It does not explain content_type values or default limits, but the schema already documents these thoroughly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Search') with an explicit resource ('all published content') and enumerates the included content types (blog posts, static pages/tools, companion GitHub repositories). It clearly distinguishes itself from sibling tools like search_posts by scoping 'all' content, while also naming the result-prefix format.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use the tool: when a cross-content-type search is needed. It states it covers blog posts, pages, and repos, making it obvious that narrower search tools like search_posts exist, but it does not explicitly name alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_postsSearch blog postsAInspect
Search published MojaLab posts by keyword or natural-language query. Results are ranked by relevance (0–1) using hybrid lexical + semantic matching. Use excerpt_length for longer previews.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default 5) | |
| query | Yes | Keyword or question to search for | |
| excerpt_length | No | Max excerpt characters (default 150) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the safety/behavioral burden. It discloses that only published posts are searched and that results are ranked by relevance (0–1) using hybrid matching. However, it omits details like return format, pagination, and read-only status, leaving the agent to infer safe behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three short sentences, all meaningful: it states the purpose, the ranking behavior, and a parameter hint. It is front-loaded with the keyword 'Search', and every sentence contributes. No wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple search tool with no output schema, the description covers scope, ranking, and parameter usage. It hints at return content via 'previews' and 'relevance (0–1)', but does not explicitly state the output structure. It is complete enough for common use cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers all parameters (100%), so the baseline is 3. The description adds value by explaining that excerpt_length controls preview length ('for longer previews'), and it clarifies query accepts natural language. This goes beyond the schema's dry descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches published MojaLab posts using keyword or natural-language queries, specifying the verb, resource, and scope. It distinguishes from siblings like list_posts (search vs list) and search_all (restricted to posts).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for searching published posts but provides no explicit alternatives or when-not-to-use guidance. It does offer a parameter tip ('Use excerpt_length for longer previews'), but does not mention when to use search_all instead of search_posts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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!
Related MCP Servers
- Alicense-qualityDmaintenanceEnables comprehensive content management through Markdown processing, HTML rendering, intelligent fuzzy search, and document analysis. Supports frontmatter parsing, tag-based filtering, table of contents generation, and directory statistics for efficient content organization and discovery.Last updated293MIT
- Alicense-qualityDmaintenanceProvides semantic search and a tag-based knowledge graph for any project, auto-discovering local markdown knowledge bases with YAML frontmatter.Last updated36MIT
- Alicense-qualityDmaintenanceIndexes and searches Jekyll blog content, enabling AI assistants to search posts by keyword/category/tags, retrieve full post content, compare drafts against published posts, and analyze blog categories and tags.Last updated1MIT
- Alicense-qualityCmaintenanceEnables reading, writing, and searching a local markdown-based memory store using MCP tools, with safety checks and index consistency.Last updatedMIT