Skip to main content
Glama
kitan23

Dedalus MCP Documentation Server

by kitan23
README.md
# Dedalus MCP Documentation Server

An MCP server for serving and querying documentation with AI capabilities. Built for the YC Agents Hackathon.

## Quick Start (Local Development)

```bash
# Install uv package manager (same as Dedalus uses)
brew install uv  # or pip install uv

# Install dependencies
uv sync --no-dev

# Configure API keys for AI features
cp config/.env.example .env.local
# Edit .env.local and add your OpenAI API key

# Test
uv run python tests/test_server.py

# Run
uv run main
```

## Deploy to Dedalus

### What Dedalus Needs
- `pyproject.toml` - Package configuration with dependencies
- `main.py` (root) - Entry point that Dedalus expects
- `src/main.py` - The actual MCP server code
- `docs/` - Your documentation files

### Deployment Steps

1. **Set Environment Variables in Dedalus UI:**
   - `OPENAI_API_KEY` - Your OpenAI API key (required for AI features)

2. **Deploy:**
```bash
dedalus deploy . --name "your-docs-server"
```

### How Dedalus Runs Your Server
1. Installs dependencies using `uv sync` from `pyproject.toml`
2. Runs `uv run main` to start the server
3. Server runs in `/app` directory in container
4. Docs are served from `/app/docs`

## Features

- Serve markdown documentation
- Search across docs
- AI-powered Q&A (with OpenAI)
- Rate limiting (10 requests/minute) to protect API keys
- Ready for agent handoffs

## Tools Available

- `list_docs()` - List documentation files
- `search_docs()` - Search with keywords
- `ask_docs()` - AI answers from docs
- `index_docs()` - Index documents
- `analyze_docs()` - Analyze for tasks

## Documentation

See `docs/` directory for:
- [Getting Started Guide](docs/guides/getting-started.md)
- [Hackathon Information](docs/hackathon/yc-agents-hackathon.md)
- [Deployment Guide](docs/guides/deployment.md)
- [Examples](examples/)

## License

MIT

TDQS

A3.6/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose with no overlap: analyze_docs performs analysis tasks, ask_docs answers questions via AI, index_docs handles indexing, list_docs enumerates files, and search_docs performs keyword searches. The descriptions reinforce these distinct roles, making tool selection unambiguous for an agent.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern with snake_case naming (e.g., analyze_docs, ask_docs, index_docs, list_docs, search_docs). This predictable structure enhances readability and usability, with no deviations or mixed conventions across the set.

Tool Count5/5

With 5 tools, this server is well-scoped for documentation management, covering core operations like listing, searching, indexing, analyzing, and querying. Each tool earns its place without redundancy, making the count appropriate for the domain's typical workflows.

Completeness5/5

The tool set provides complete coverage for documentation management, including CRUD-like operations (list, search, index) and advanced AI functionalities (analyze, ask). There are no obvious gaps; agents can perform end-to-end tasks from discovery to analysis without dead ends.

Maintenance

ActivityInactive
ResponsivenessNo issues