Skip to main content
Glama
README.md
# README Insight MCP

Small MCP server that summarizes README files from either a local path or a public Git repository. It exposes:
- **Tools**: `readme_summary` for local paths and `readme_from_git` for remote repos
- **Resources**: `readme://local/current` for accessing the current directory's README
- **Prompts**: `analyze_readme` for analyzing a README's completeness

## What it shows
- How to define MCP tools, resources, and prompts
- How to summarize README content from local files or Git URLs
- A clear, demo-friendly use case

## Setup
```bash
git clone /home/naeemgtng/projects/example-mcp
cd example-mcp
npm install
```

## Run
```bash
npm run dev
```

## Example Claude MCP setup
```bash
claude mcp add readme-insight -- npx tsx /home/naeemgtng/projects/example-mcp/src/server.ts
```

## Example tool calls
```json
{
  "name": "readme_summary",
  "arguments": {
    "path": "."
  }
}
```
```json
{
  "name": "readme_from_git",
  "arguments": {
    "repo_url": "https://github.com/user/repo"
  }
}
```

## Example output
```json
{
  "summary": "First paragraph of the README...",
  "key_facts": [
    "Install",
    "Run",
    "Example tool call"
  ]
}
```

## Resources

The server exposes one resource:

| URI | Description |
|-----|-------------|
| `readme://local/current` | Returns the README from the current working directory |

## Prompts

The server exposes one prompt:

| Name | Description | Arguments |
|------|-------------|-----------|
| `analyze_readme` | Analyze a README for completeness | `repo_url` (required): Git repository URL |

Example prompt call:
```json
{
  "name": "analyze_readme_prompt",
  "arguments": {
    "repo_url": "https://github.com/user/repo"
  }
}
```

Read about it [here](https://naeemgitonga.com/articles/example-mcp)

TDQS

C2.9/5.0

Scored across 2 tools

Disambiguation3/5

The two tools have overlapping purposes—both summarize README files—but descriptions clarify the distinction: one fetches from a Git URL, the other from a local path. This overlap could cause confusion if an agent misinterprets the source type, but the descriptions provide enough context to differentiate them.

Naming Consistency4/5

Tool names follow a consistent snake_case pattern with a clear 'readme_' prefix, but the suffixes ('from_git' vs 'summary') are not perfectly parallel. The naming is mostly predictable and readable, with minor deviations in verb usage that do not significantly hinder understanding.

Tool Count2/5

With only 2 tools, the server feels thin for its purpose of README insight, lacking operations like analysis, comparison, or validation. This minimal set limits functionality and may require agents to work around gaps, making it borderline inadequate for a comprehensive tool surface.

Completeness2/5

The tool surface is severely incomplete for README insight, covering only fetching and summarizing from different sources. Missing are tools for analyzing content (e.g., checking for sections, links), comparing READMEs, generating summaries in different formats, or validating structure, which are common needs in this domain.

Maintenance

ActivityInactive
ResponsivenessNo issues