Skip to main content
Glama
cben0ist

Ascend MCP Server

by cben0ist
README.md
# Ascend MCP Server

Connect Claude (Desktop, Code, or agents) to your Ascend job search data.

## What it does

Gives Claude read-only access to:
- **Job applications** — list, filter by status, get full details with AI analysis
- **Resume** — your base resume in JSON Resume format
- **Dashboard stats** — totals, interview counts, match scores
- **Analytics** — trends and period-over-period comparisons

## Setup

### 1. Get your API key

1. Open Ascend → Settings → **Claude AI Integration**
2. Click **Generate Key** and copy the key (shown once)

### 2. Install dependencies

```bash
cd mcp
npm install
```

### 3. Configure Claude Desktop

Add to your `claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "ascend": {
      "command": "node",
      "args": ["/absolute/path/to/ascend/mcp/src/index.js"],
      "env": {
        "ASCEND_API_URL": "https://ascend.workingensemble.ca/api/mcp",
        "ASCEND_API_KEY": "your_key_here"
      }
    }
  }
}
```

### 4. Configure Claude Code

```bash
claude mcp add ascend \
  -e ASCEND_API_URL=https://ascend.workingensemble.ca/api/mcp \
  -e ASCEND_API_KEY=your_key_here \
  -- node /absolute/path/to/ascend/mcp/src/index.js
```

### Local development

```bash
ASCEND_API_URL=http://localhost:4000/api/mcp \
ASCEND_API_KEY=your_key_here \
node mcp/src/index.js
```

### Test with MCP Inspector

```bash
cd mcp
ASCEND_API_URL=http://localhost:4000/api/mcp ASCEND_API_KEY=your_key \
  npx @modelcontextprotocol/inspector node src/index.js
```

## Available Tools

| Tool | Description |
|------|-------------|
| `list_applications` | List applications with optional status filter |
| `get_application` | Full details for one application including AI analysis |
| `get_resume` | Your base resume in JSON Resume format |
| `get_dashboard_stats` | Total applications, interviews, offers, avg match score |
| `get_analytics_overview` | Trends and analytics for a date range |

## Example prompts

- "How many job applications do I have in total?"
- "Show me applications where I'm currently interviewing"
- "What's my average job match score?"
- "Summarize my resume"
- "How has my application rate changed over the last month?"