Search / io.github.henrikthome-arch/epivo-catalog
Epivo Course Catalog
not classifiedRead-only access to Epivo's live course catalogue for AI agents.
v1.0.0 · active · repository · descriptor JSON · versions
Search / io.github.henrikthome-arch/epivo-catalog
Read-only access to Epivo's live course catalogue for AI agents.
v1.0.0 · active · repository · descriptor JSON · versions
{
"mcpServers": {
"epivo-catalog": {
"type": "http",
"url": "https://api.epivo.ai/api/v1/public/mcp"
}
}
}claude mcp add --transport http epivo-catalog https://api.epivo.ai/api/v1/public/mcp[mcp_servers.epivo-catalog]
url = "https://api.epivo.ai/api/v1/public/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"epivo-catalog": {
"type": "remote",
"url": "https://api.epivo.ai/api/v1/public/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"epivo-catalog": {
"type": "http",
"url": "https://api.epivo.ai/api/v1/public/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=epivo-catalog&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vYXBpLmVwaXZvLmFpL2FwaS92MS9wdWJsaWMvbWNwIn0%3D"
}{
"servers": {
"epivo-catalog": {
"type": "http",
"url": "https://api.epivo.ai/api/v1/public/mcp"
}
}
}{
"mcpServers": {
"epivo-catalog": {
"httpUrl": "https://api.epivo.ai/api/v1/public/mcp"
}
}
}extensions:
"epivo-catalog":
enabled: true
name: "epivo-catalog"
type: streamable_http
uri: "https://api.epivo.ai/api/v1/public/mcp"
timeout: 300
protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_lengthdescriptions are concisetools.schemasevery tool has an object input schematools.annotationsno tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky onestools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: list_courses (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_course_detail (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_catalog_stats (readOnlyHint, destructiveHint, idempotentHint, openWorldHint)tools.token_costabout 345 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changesno tool changes in 30 daysstability.rug_pullno tool changed its meaning under the same namedeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packageNo tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +namespace-matches-repo -unreachable(1 failures) ~updated-41d-ago
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://api.epivo.ai/api/v1/public/mcp streamable-http | none | no (1 failures) | 94% | 396 ms | 2025-11-25 | 2026-10-20 |
get_catalog_stats | Get aggregate catalogue counts (courses, curricula, languages, knowledge components). Returns the same shape as GET /api/v1/public/stats. |
get_course_detail | Get the individual courses within one curriculum source. Args: slug: the curriculum source's slug, as returned by list_courses. Returns the same shape as GET /api/v1/public/courses-detail/<slug>. |
list_courses | List Epivo's public course catalogue, grouped by curriculum source. Args: audience: optional filter, "k12" or "adult". language: optional filter, e.g. "English", "Swedish", "Greek", "Arabic" (display name, matching the "language" field of each result). Returns the same shape as GET /api/v1/public/courses -- no fields are added or removed, since this tool applies the filters to the response of that endpoint rather than deriving its own query. |
Schemas: list_tools.
{
"name": "io.github.henrikthome-arch/epivo-catalog",
"title": "Epivo Course Catalog",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://api.epivo.ai/api/v1/public/mcp",
"type": "streamable-http"
}
],
"version": "1.0.0",
"repository": {
"url": "https://github.com/henrikthome-arch/ai-tutor",
"source": "github"
},
"description": "Read-only access to Epivo's live course catalogue for AI agents."
}