Skip to main content
Glama
SRVivek1

geekmonks-mcp-bookmarks

by SRVivek1

Server Quality Checklist

58%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.4.0

  • Disambiguation5/5

    Each tool has a distinct purpose: listing, adding, and searching bookmarks. There is no overlap or ambiguity between them.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern: list_bookmarks, add_bookmark, search_bookmarks. The pattern is clear and predictable.

    Tool Count3/5

    With only 3 tools, the server is minimal but covers the basic operations for a bookmark store. It feels slightly thin but is reasonable for a simple local JSON store.

    Completeness3/5

    The server provides list, add, and search, but lacks update and delete operations, which are common for bookmark management. This is a notable gap but agents can work around it by not needing those operations.

  • Average 3.8/5 across 3 of 3 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 2 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.

    If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.

    MCP servers without a LICENSE cannot be installed.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says 'Add' to a 'local JSON store', which is a mutation but does not mention potential side effects, such as whether duplicates are allowed, whether the operation fails on invalid URLs, or if any return value is produced. This is minimal for a mutation tool.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single, front-loaded sentence with no redundancy. It efficiently communicates the core action and target. Every word earns its place, and it is neither verbose nor under-specified in terms of conciseness.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The tool is simple with only two parameters and no output schema, so the description does not need to explain return values. However, because it lacks behavioral transparency (e.g., idempotency, error handling), it is not fully complete. Given the low complexity, it is adequate but has gaps in side-effect disclosure.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100%, so the baseline is 3. The description restates that the tool takes a 'title' and 'URL', which adds nothing beyond the schema's definitions. It does not clarify URL format constraints or title length beyond what the schema already specifies, so it adds minimal extra meaning.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the verb 'Add' with specific resources ('bookmark', 'title', 'URL') and the destination ('local JSON store'). It is unambiguous and distinct from sibling tools like list_bookmarks and search_bookmarks, which have different verbs and purposes.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines3/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description implies the primary use case: when you need to save a bookmark. However, it does not explicitly distinguish when to use this tool over siblings, nor does it mention any exclusions or conditions. Since the tool name itself is highly indicative, the guidance is adequate but not explicit about alternatives.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries the full burden. It discloses the core matching behavior ('substring match') and that both title and URL are scanned, which is valuable. But it does not address case sensitivity, empty results, pagination, or that this is a read-only operation.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    A single sentence with zero filler: the primary verb, target, and matching mode are front-loaded. Every word contributes meaningful guidance.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a one-parameter search tool with no output schema, this is nearly complete: the invocation contract is fully described. Minor gaps like absence of result-format or no-match behavior are small given the simplicity, so it earns slightly above the minimum viable.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 100% and the query parameter is already described as 'Text to find in title or URL'. The description adds little beyond the schema, only reinforcing the substring matching mode. Baseline 3 applies because the schema carries the load.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The verb 'Search' with resource 'bookmarks' and mechanism 'substring match on title or URL' states exactly what the tool does. It is immediately distinguishable from siblings list_bookmarks (full collection) and add_bookmark (write operation).

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines3/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The matching semantics imply the use case: locate a bookmark by text in title or URL. However, it never explicitly states when not to use it, nor does it name list_bookmarks as the alternative for viewing all bookmarks, leaving routing between siblings to inference.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations provided, the description carries the behavioral transparency burden. 'List' is a clear read operation and the phrase 'local JSON store' specifies the data source and implies no network or destructive side effects. It still doesn't explicitly state that bookmarks are never modified, but the wording is strong enough for a simple 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.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    A single, information-dense sentence that front-loads the main action and scope. Every word contributes meaningful context, leaving no excessive or irrelevant prose.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a zero-parameter, read-only listing tool, this description is largely sufficient. It lacks explicit mention of empty-store behavior or the exact return shape, but the description's scope and the tool's naming make it reasonably complete for an AI agent.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The input schema has zero parameters and 100% schema description coverage, so the description does not need to explain parameter details. The phrase 'List all saved bookmarks' clarifies the point of the result without adding unnecessary parameter-level noise.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    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 (all saved bookmarks) and identifies the data source (local JSON store). This matches the title while also giving enough semantic scope to distinguish it from add_bookmark and search_bookmarks.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description does not state when to use this tool versus its siblings. It implies enumeration of the full set of bookmarks, but it never mentions that search_bookmarks should be used for filtered or specific lookups, or that add_bookmark is for creation.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

geekmonks-mcp-bookmarks MCP server

Copy to your README.md:

Score Badge

geekmonks-mcp-bookmarks MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/SRVivek1/geekmonks-mcp-bookmarks'

If you have feedback or need assistance with the MCP directory API, please join our Discord server