Skip to main content
Glama
JRM-Global

getonbrd-mcp

by JRM-Global
README.md
# getonbrd-mcp

**MCP server for the [Get on Board](https://www.getonbrd.com) public API** — search LATAM tech
jobs from Claude Code, Claude Desktop, Cursor, or any [Model Context Protocol](https://modelcontextprotocol.io)
client.

Get on Board is the leading tech job board for Latin America and Spain. Its public API needs no
authentication for search — this server turns it into five typed tools an AI agent can call
directly, so an agent can triage vacancies (salary band, remote modality, countries, application
count, full description) without scraping a single page.

Born from a real system: I run an agentic job-search pipeline that sources, scores and applies to
vacancies daily, and this server is the sourcing layer it uses for Get on Board.

## Tools

| Tool | Auth | What it does |
|---|---|---|
| `search_jobs` | none | Full-text search. Results include the full description — enough to triage without a second call. |
| `jobs_by_category` | none | Open jobs in one category (`programming`, `machine-learning-ai`, …). |
| `jobs_by_company` | none | Open jobs from one company, by its slug. |
| `list_categories` | none | Category ids for `jobs_by_category`. |
| `get_job` | `GETONBRD_API_TOKEN` | One job by id. Optional — search results already carry descriptions. |

Every job is returned compact and HTML-stripped: id, title, category, remote modality and zone,
countries, salary band (when published), publication date, application count, public URL, and the
description (400-char preview by default, `full: true` for everything including functions,
desirable skills and benefits).

## Install

```bash
git clone https://github.com/JRM-Global/getonbrd-mcp
cd getonbrd-mcp
npm install
npm run build
```

### Claude Code

```bash
claude mcp add getonbrd -- node /path/to/getonbrd-mcp/dist/index.js
```

### Claude Desktop / other MCP clients

```json
{
  "mcpServers": {
    "getonbrd": {
      "command": "node",
      "args": ["/path/to/getonbrd-mcp/dist/index.js"]
    }
  }
}
```

To enable `get_job`, add an env var with your token from [getonbrd.com/api](https://www.getonbrd.com/api):

```json
"env": { "GETONBRD_API_TOKEN": "..." }
```

## Example

> *"Find remote TypeScript jobs in LATAM that mention Claude Code or AI agents, published this
> month, and rank them by fit against my profile."*

An agent with this server calls `search_jobs` a few times, reads the descriptions in the results,
and never touches a browser.

## Notes

- The Get on Board API is documented at [getonbrd.com/api](https://www.getonbrd.com/api). This
  project is not affiliated with Get on Board.
- Salary bands are returned only when the employer publishes them.
- `published_at` is normalized to `YYYY-MM-DD`; `applications_count` is a useful competition signal.

## License

MIT

---

### ES · Servidor MCP para la API pública de Get on Board

Convierte la API pública de Get on Board (el board tech líder de LATAM y España) en cinco
herramientas tipadas para agentes de IA: búsqueda full-text con descripción completa incluida,
vacantes por categoría y por empresa, y detalle con token opcional. Nació de un sistema real de
búsqueda laboral agéntica que corre a diario — este servidor es su capa de sourcing.

TDQS

A3.9/5.0

Scored across 5 tools

Disambiguation4/5

Each tool targets a clear dimension: full-text search, category browsing, company browsing, category metadata, and single-job lookup. search_jobs and get_job overlap somewhat because search results already include descriptions and get_job requires a token, but the distinct id-based lookup purpose remains identifiable.

Naming Consistency3/5

Names mix verb-led patterns like search_jobs, list_categories, and get_job with noun-preposition patterns like jobs_by_category and jobs_by_company. The naming is readable and consistently lowercase snake_case, but the two conventions are not fully uniform.

Tool Count5/5

Five tools is well-scoped for a job-board MCP server. Each tool maps to a distinct operation needed for job discovery and retrieval, with no obvious bloat or redundancy.

Completeness4/5

Core job discovery is covered: full-text search, category browsing, company browsing, category listing, and individual job details. A minor gap is the lack of a company listing endpoint to discover company slugs, but agents can work around it with jobs_by_company when slugs are known.

Maintenance

ActivityMaintained
ResponsivenessNo issues