Skip to main content
Glama
opportunities-circle-mcp

opportunities-circle-mcp

by Anicodeth

opportunities-circle-mcp

An MCP server that gives AI agents the full capabilities and catalog of Opportunities Circle — scholarships, fellowships, internships, grants, jobs, competitions, online courses, training, conferences and exchange programs — as searchable, well-typed tools.

It talks to Opportunities Circle's public WordPress REST API (no key, no scraping, no login), resolves human-friendly filters (opportunity type, country, funding, tags) into the right queries, and returns clean, reader-friendly text — including each opportunity's full description, eligibility, benefits, deadlines and official apply links.

Features

Tool

What it does

oppcircle_search

Search the catalog by keywords + filters (type, country, funding, tags, date range, sort). Newest-first, excludes expired by default. The main discovery tool.

oppcircle_get

Full details of one opportunity by id, slug, or url — complete description, type, tags, country/funding, deadline urgency and image.

oppcircle_latest

The most recently posted active opportunities, optionally by type.

oppcircle_list_categories

List opportunity types with counts + slugs (scholarships, phd-scholarships, fellowships, internships, jobs, grants, …).

oppcircle_list_tags

Search the 13k+ tag taxonomy to find valid country / funding / level / org slugs for filtering.

oppcircle_overview

High-level snapshot: site info, active total, and type breakdown. Good first call.

Related MCP server: Web3 Career MCP Server

Quick start

git clone <your-repo-url> opportunities-circle-mcp
cd opportunities-circle-mcp
npm install
npm run build

Add to Claude Code

claude mcp add opportunities-circle -- node "/absolute/path/to/opportunities-circle-mcp/dist/index.js"

Or, once published to npm:

claude mcp add opportunities-circle -- npx -y opportunities-circle-mcp

Add to Claude Desktop

Edit claude_desktop_config.json:

{
  "mcpServers": {
    "opportunities-circle": {
      "command": "node",
      "args": ["/absolute/path/to/opportunities-circle-mcp/dist/index.js"]
    }
  }
}

Configuration

All env vars are optional — the server runs with zero configuration.

Variable

Default

Description

OPPCIRCLE_BASE_URL

https://www.opportunitiescircle.com

Site to query.

OPPCIRCLE_MAX_CONTENT_CHARS

8000

Max body text returned by oppcircle_get.

OPPCIRCLE_TIMEOUT_MS

20000

Per-request network timeout.

OPPCIRCLE_USER_AGENT

(built-in)

Custom User-Agent header.

Tool reference & example prompts

Discover what's available

"Give me an overview of Opportunities Circle." → oppcircle_overview

Search with filters

"Find fully funded PhD scholarships in Germany." → oppcircle_search { query: "fully funded", type: "phd-scholarships", country: "germany" }

"What internships are open in the USA right now?" → oppcircle_search { type: "internships", country: "usa" }

Find the right filter slugs

"What tags exist for the UK?" → oppcircle_list_tags { search: "uk" } "List the opportunity types." → oppcircle_list_categories

Read the full posting

"Open the FAO Volunteer Program listing." → oppcircle_get { url: "https://www.opportunitiescircle.com/fao-volunteer-program-in-italy/" }

Stay current

"What are the 10 newest fellowships?" → oppcircle_latest { type: "fellowships", limit: 10 }

Filtering model

  • Type (type) maps to the site's WordPress category — the opportunity kind. Common slugs: scholarships, masters-scholarships, phd-scholarships, undergraduate-scholarship, fellowships, phd-fellowships, internships, international-internships, research-internship, jobs, grants, competitions, conferences, online-courses, training, exchange-programs, awards.

  • country / funding / tags map to the tag taxonomy. Because there are 13k+ tags, use oppcircle_list_tags to find the exact slug (e.g. usa, europe, fully-funded, paid, un-program). Slugs and names are both accepted and fuzzy-matched.

  • Multiple tags are combined with AND.

  • Expired opportunities are excluded unless include_expired: true.

How it works

Claude / MCP client
        │  stdio (JSON-RPC)
        ▼
opportunities-circle-mcp
   ├── src/index.ts   MCP server + 6 tool definitions
   ├── src/api.ts     WordPress REST client, term (slug→id) resolution + cache
   └── src/format.ts  HTML → clean markdown/text, list & detail formatting
        │  HTTPS (GET only, public API)
        ▼
https://www.opportunitiescircle.com/wp-json/wp/v2/*

Opportunities are stored as WordPress posts organized by category (type), tags (country/funding/level/org/deadline), plus di_urgency (deadline urgency) and subject (field of study) taxonomies. The server reads only public, published content via GET — it never writes.

FAQ

Do I need an API key or account? No. The catalog is served over a public, read-only REST API.

Does it modify anything on the site? No — GET requests only.

Why are some results marked ⚠️ EXPIRED? They're archived opportunities. They are hidden by default; pass include_expired: true to include them.

Can I point it at another WordPress site? Yes — set OPPCIRCLE_BASE_URL. The type slugs and tags will differ per site.

Development

npm run dev        # tsc --watch
npm run typecheck  # no-emit type check
npm run build      # compile to dist/

License

MIT

Available Tools

6 tools
oppcircle_getGet opportunity detailsA

Fetch the full details of a single opportunity by numeric id, slug, or its public url. Returns the complete description (eligibility, benefits, how to apply, deadlines, official links) converted to readable text, plus its type, tags, country/funding tags, dates and featured image. Provide exactly one of id / slug / url.

Inputs: id, url, slug, max_chars.

oppcircle_latestLatest opportunitiesA

Return the most recently posted (non-expired) opportunities, newest first. Optionally restrict to one type. A convenience shortcut over oppcircle_search for 'what's new'.

Inputs: type, limit.

oppcircle_list_categoriesList opportunity types (categories)A

List the opportunity type categories with their slugs and how many opportunities each holds. Use these slugs as the type filter in oppcircle_search / oppcircle_latest. Optionally filter the list by a search term.

Inputs: search.

oppcircle_list_tagsSearch tags (countries, funding, level, orgs)A

Search the tag taxonomy (13k+ tags) to discover valid slugs for the country, funding, and tags filters of oppcircle_search. Tags encode countries (usa, europe, uk), funding (fully-funded, paid), study level (phd-scholarship, masters-scholarship), host organizations (un-program, fao) and deadline months. Provide a search term for best results; results are ordered by popularity.

Inputs: limit, search.

oppcircle_overviewCatalog overviewA

High-level snapshot of the Opportunities Circle catalog: site info, total active opportunities, and the breakdown of opportunity types by count. Good first call to understand what's available and which type slugs to use.

Inputs: no named parameters.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.4/5.0

    Scored across 6 tools

    Disambiguation5/5

    Each tool has a distinct, non-overlapping purpose: search, retrieve details, latest, list categories, list tags, and overview. There is no ambiguity; even the convenience shortcut (latest) clearly references search without overlapping.

    Naming Consistency5/5

    All tools use the consistent 'oppcircle_' prefix followed by a clear action verb or noun, all in snake_case. The naming pattern is uniform and predictable (e.g., oppcircle_search, oppcircle_list_categories).

    Tool Count5/5

    Six tools is a well-scoped size for a read-only catalog server. Each tool earns its place: discovery (search, latest, overview), retrieval (get), and metadata (list categories, tags). No redundancy or excess.

    Completeness5/5

    The surface fully covers the apparent domain of browsing and retrieving opportunities from the catalog. Search with filters, detailed fetch, recent items, category and tag enumeration, and an overview cover all typical user workflows without missing critical operations.

    Maintenance

    ActivitySlowing
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables AI agents to search and analyze OpenAlex scholarly database for OSINT research, including works, authors, institutions, funding, citations, and collaboration networks.
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables AI agents to search and retrieve public procurement notices from 17 sources across Germany, the EU, and the UK, with filtering by country, CPV code, deadline, and contract value, plus full tender details and source freshness checks.
      MIT