Skip to main content
Glama
README.md
# MCP Server Integration — Build Exercise

Scaffold for the CCA-F prep exercise from [2.4 MCP Server Integration](https://claudecertificationguide.com/learn/2-tool-design-mcp/2-4-mcp-server-integration).
Nothing here is solved — every task below has a `TODO` for you to fill in.

## Task checklist

- [ ] **1. Project-level config** — [.mcp.json](.mcp.json) has a `github`
      server entry (`command`/`args`). Swap it for whichever community
      server you want, if not GitHub.
- [ ] **2. Env var expansion** — the `github` entry references
      `${GITHUB_TOKEN}` instead of a hardcoded credential. Copy
      [.env.example](.env.example) to `.env` and fill in a real token.
- [ ] **3. User-level config** — not created here on purpose, since
      `~/.claude.json` lives outside the project and is personal to your
      machine. Template and steps: [docs/user-level-config.md](docs/user-level-config.md).
- [ ] **4. Expose an MCP resource** — [src/server.ts](src/server.ts) has a
      stub `catalogue://TODO` resource. Replace it with a real content
      catalogue (e.g. a DB schema or docs hierarchy) with a proper URI,
      name, description, and mimeType.
- [ ] **5. Enhance tool descriptions** — same file, `example_tool` has a
      placeholder description. Write 3-5 sentences covering capability,
      output, use case, and how it compares to a built-in alternative.

## Setup

```bash
npm install
npm run dev        # starts the stdio server directly
npm run inspect     # opens MCP Inspector against the server for manual testing
```

## Layout

```
.mcp.json                   Task 1 & 2 — project-level server config
.env.example                Task 2 — template for the secret .mcp.json expands
docs/user-level-config.md   Task 3 — template + steps for ~/.claude.json
src/server.ts                Task 4 & 5 — custom MCP server with resource/tool stubs
```