Skip to main content
Glama
glassBead-tc

MCP Documentation Server

by glassBead-tc
README.md
# MCP Documentation Server šŸ“š

A Model Context Protocol (MCP) server that provides comprehensive access to MCP documentation, guides, and development workflows through a standardized interface.

## Features ✨

This MCP server provides comprehensive documentation access through:

### šŸ”§ Tools
- **mcp_docs_guide**: Structured guides for MCP development topics
- **search_docs**: Full-text search across all MCP documentation  
- **get_docs_by_category**: Browse documentation by category

### šŸ’¬ Prompts
Interactive workflows for MCP development:
- **mcp_quick_start**: Get started quickly with MCP development
- **server_development_workflow**: Complete server development workflow
- **client_integration_guide**: Guide for integrating MCP into applications
- **troubleshooting_workflow**: Systematic troubleshooting guide
- **deployment_guide**: Production deployment best practices

### šŸ“„ Resources  
Direct access to individual documentation files:
- **mcp-docs://filename.md**: Access any documentation file directly
- Organized by category with rich metadata
- Full markdown content with proper formatting

## Installation šŸ“¦

### NPM Installation
```bash
npm install -g mcp-docs-server
```

### Using with Claude Desktop

Add to your Claude Desktop configuration (`~/Library/Application Support/Claude/claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "mcp-docs": {
      "command": "npx",
      "args": ["-y", "mcp-docs-server"]
    }
  }
}
```

### Local Development
```bash
# Clone and setup
git clone <repository-url>
cd mcp-docs-server
npm install

# Build
npm run build

# Run locally
npm run dev

# Test with MCP Inspector
npx @modelcontextprotocol/inspector npm run dev
```

## Usage šŸš€

### Getting Started
```bash
# Ask for getting started guide
mcp_docs_guide("getting_started")

# Quick start workflow
mcp_quick_start()
```

### Finding Documentation
```bash
# Search for specific topics
search_docs("tools development")
search_docs("JSON-RPC protocol", "specification")

# Browse by category
get_docs_by_category("concepts")
get_docs_by_category("development")
```

### Development Workflows
```bash
# Server development workflow
server_development_workflow("tool", "python")

# Client integration guide
client_integration_guide("desktop")

# Troubleshooting
troubleshooting_workflow("connection")
```

### Accessing Documentation Resources
```bash
# Access specific documentation files
Resource: mcp-docs://docs-getting-started-intro.md
Resource: mcp-docs://docs-learn-architecture.md
Resource: mcp-docs://docs-develop-build-server.md
```

## Documentation Categories šŸ“–

The server organizes MCP documentation into these categories:

- **šŸš€ getting_started**: Introduction and basic concepts
- **🧠 concepts**: Architecture, primitives, and design principles  
- **šŸ› ļø development**: Building servers and clients
- **šŸ“‹ specification**: Technical protocol details
- **šŸ”§ tools**: Development tools and debugging
- **šŸ‘„ community**: Governance and contribution guidelines

## Example Workflows šŸ’”

### New Developer Workflow
1. Start with `mcp_quick_start()` for overview
2. Use `mcp_docs_guide("getting_started")` for structured introduction
3. Follow `server_development_workflow()` to build first server
4. Use `search_docs()` to find specific implementation details

### Experienced Developer Workflow  
1. Use `search_docs()` to find specific information
2. Access documentation resources directly via URIs
3. Reference `troubleshooting_workflow()` when issues arise
4. Use `deployment_guide()` for production deployment

### Integration Developer Workflow
1. Start with `client_integration_guide()` for your platform
2. Use `get_docs_by_category("development")` for implementation details
3. Reference protocol specification via `get_docs_by_category("specification")`
4. Use debugging tools and workflows as needed

## Architecture šŸ—ļø

The server follows the same patterns as other MCP servers:

```
ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│         AI Application          │
│      ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”        │
│      │   MCP Client    │        │
│      ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜        │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜
              │
              ā–¼
ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│      MCP Docs Server            │
│                                 │
│  šŸ“š Documentation Database      │
│  šŸ” Search Engine              │  
│  šŸŽÆ Guided Workflows           │
│  šŸ“„ Resource Access            │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜
```

### Key Components

- **Documentation Engine**: Processes and categorizes scraped MCP docs
- **Search System**: Full-text search with relevance ranking
- **Guide Generator**: Creates structured learning workflows
- **Resource Provider**: Serves individual documentation files
- **Prompt System**: Interactive development workflows

## Development šŸ‘Øā€šŸ’»

### Project Structure
```
mcp-docs-server/
ā”œā”€ā”€ src/
│   ā”œā”€ā”€ index.ts              # Main server entry point
│   ā”œā”€ā”€ tools/                # MCP tools implementation
│   │   ā”œā”€ā”€ mcpDocsGuide.ts   # Main documentation guide
│   │   ā”œā”€ā”€ searchDocs.ts     # Documentation search
│   │   └── getDocsByCategory.ts # Category browsing
│   ā”œā”€ā”€ prompts/              # Interactive workflows
│   │   ā”œā”€ā”€ index.ts          # Prompt registry
│   │   ā”œā”€ā”€ quickStartGuide.ts
│   │   ā”œā”€ā”€ serverDevelopmentWorkflow.ts
│   │   ā”œā”€ā”€ clientIntegrationGuide.ts
│   │   ā”œā”€ā”€ troubleshootingWorkflow.ts
│   │   └── deploymentGuide.ts
│   └── resources/            # Resource access
│       └── index.ts          # Documentation file access
ā”œā”€ā”€ scraped_docs/             # MCP documentation files
ā”œā”€ā”€ package.json
ā”œā”€ā”€ tsconfig.json
└── README.md
```

### Adding New Documentation

1. Add markdown files to `scraped_docs/` directory
2. Files are automatically categorized and indexed
3. Search and resource access work immediately
4. No server restart required

### Contributing

1. Fork the repository
2. Create a feature branch
3. Make your changes
4. Add tests if applicable
5. Submit a pull request

## Troubleshooting šŸ”§

### Server Not Starting
```bash
# Check TypeScript compilation
npm run build

# Test directly
node build/index.js

# Check with inspector
npx @modelcontextprotocol/inspector node build/index.js
```

### Claude Desktop Integration Issues
1. Check configuration syntax in `claude_desktop_config.json`
2. Use absolute paths if needed
3. Restart Claude Desktop completely
4. Check Claude logs: `~/Library/Logs/Claude/mcp.log`

### Documentation Not Found
1. Verify `scraped_docs/` directory exists
2. Check file permissions
3. Ensure markdown files are present
4. Check server logs for errors

## API Reference šŸ“‹

### Tools

#### mcp_docs_guide
Get structured guides for MCP development topics.

**Parameters:**
- `topic` (required): Topic to get guidance on
  - `getting_started`: Introduction and basics
  - `building_servers`: Server development guide
  - `building_clients`: Client development guide  
  - `core_concepts`: Architecture and primitives
  - `tools_and_resources`: Deep dive into tools and resources
  - `protocol_specification`: Technical protocol details
  - `troubleshooting`: Common issues and solutions
  - `best_practices`: Development best practices
  - `examples_and_tutorials`: Complete examples

#### search_docs
Search through MCP documentation using keywords.

**Parameters:**
- `query` (required): Search query string
- `category` (optional): Limit search to specific category

#### get_docs_by_category
Browse documentation organized by category.

**Parameters:**
- `category` (required): Documentation category to explore

### Resources

All documentation files are available as resources with URI format:
`mcp-docs://filename.md`

Example resources:
- `mcp-docs://docs-getting-started-intro.md`
- `mcp-docs://docs-learn-architecture.md`  
- `mcp-docs://docs-develop-build-server.md`

## License šŸ“„

MIT License - see LICENSE file for details.

## Support šŸ’¬

- **Issues**: Report bugs and feature requests on GitHub
- **Documentation**: Use the server itself to explore MCP documentation
- **Community**: Join MCP community discussions
- **Contributing**: See CONTRIBUTING.md for guidelines

---

Built with ā¤ļø for the MCP community

TDQS

B3/5.0

Scored across 3 tools

Disambiguation3/5

The tools have some overlap in purpose, as both get_docs_by_category and mcp_docs_guide retrieve documentation content, which could cause confusion. However, search_docs is distinct with its keyword-based functionality, and descriptions help clarify that get_docs_by_category provides structured overviews while mcp_docs_guide offers comprehensive guides, mitigating ambiguity.

Naming Consistency2/5

Naming is inconsistent with mixed conventions: get_docs_by_category uses snake_case with a verb_noun pattern, mcp_docs_guide uses snake_case but lacks a clear verb, and search_docs uses snake_case with a verb_noun pattern. The lack of a uniform verb style and the inclusion of 'mcp' in one tool name disrupt predictability.

Tool Count3/5

With 3 tools, the count is borderline thin for a documentation server, as it might lack operations like updating or deleting documentation. However, it covers basic retrieval and search, which could be sufficient for a minimal scope, placing it in the middle range.

Completeness4/5

For a documentation server, the tools provide good coverage with retrieval by category, comprehensive guides, and search functionality, allowing agents to access and find documentation effectively. Minor gaps exist, such as no update or management tools, but core workflows are well-supported.

Maintenance

ActivityInactive
ResponsivenessNo issues