Skip to main content
Glama
La-fe
by La-fe
README.md
# lafe-blog MCP Server

A Model Context Protocol server

This is a TypeScript-based MCP server that implements a simple notes system. It demonstrates core MCP concepts by providing:

- Resources representing text notes with URIs and metadata
- Tools for creating new notes
- Prompts for generating summaries of notes

## Features

### Resources
- List and access notes via `note://` URIs
- Each note has a title, content and metadata
- Plain text mime type for simple content access

### Tools
- `create_note` - Create new text notes
  - Takes title and content as required parameters
  - Stores note in server state

### Prompts
- `summarize_notes` - Generate a summary of all stored notes
  - Includes all note contents as embedded resources
  - Returns structured prompt for LLM summarization

## Development

Install dependencies:
```bash
npm install
```

Build the server:
```bash
npm run build
```

For development with auto-rebuild:
```bash
npm run watch
```

## Installation

To use with Claude Desktop, add the server config:

On MacOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
On Windows: `%APPDATA%/Claude/claude_desktop_config.json`

```json
{
  "mcpServers": {
    "lafe-blog": {
      "command": "/path/to/lafe-blog/build/index.js"
    }
  }
}
```

### Debugging

Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the [MCP Inspector](https://github.com/modelcontextprotocol/inspector), which is available as a package script:

```bash
npm run inspector
```

The Inspector will provide a URL to access debugging tools in your browser.

TDQS

C2.8/5.0

Scored across 4 tools

Disambiguation2/5

There is significant ambiguity between 'create_note' and 'write_note', which appear to serve the same purpose of creating/writing notes, making it unclear which tool to use for note creation. The blog-related tools ('post_blog' and 'validate_blog') are distinct from each other but overlap conceptually with the note tools in the broader content creation domain.

Naming Consistency4/5

The tool names follow a consistent verb_noun pattern (e.g., create_note, post_blog, validate_blog, write_note), which is predictable and readable. The only minor deviation is that 'write_note' uses 'write' instead of 'create', but it still fits the overall naming convention.

Tool Count3/5

With 4 tools, the count is borderline thin for a blog server, as it might lack operations like updating, deleting, or listing notes and blogs. However, it covers basic creation and validation, so it's not severely mismatched but feels slightly under-scoped.

Completeness2/5

There are significant gaps in the tool surface for a blog server: it includes creation and validation for blogs and notes but lacks update, delete, list, or get operations for either resource. This incomplete coverage will likely cause agent failures when trying to manage content beyond initial creation.