fc8ebff6d8
The desktop app carried its own hardcoded list of 17 vendor MCP endpoints (apps/desktop/src/lib/mcp-directory.ts) powering the composer suggestion pills — a second PR-reviewed vendor list, overlapping and drifting from the Nous-approved MCP catalog (optional-mcps/). This makes the catalog the single source of truth: - manifest schema: optional `suggest:` block (keywords + hosts), parsed, validated, and normalized in mcp_catalog.py - 15 new URL-only hosted-remote catalog entries (atlassian, sentry, datadog, notion, stripe, vercel, supabase, netlify, hugging_face, asana, intercom, airtable, webflow, paypal, square); figma + linear manifests gain suggest blocks - GET /api/mcp/catalog now serves the suggest metadata - desktop suggestion provider builds its match index from the catalog; the static directory remains only as a compatibility rung for older backends without suggest metadata - setup card source line prefers the catalog entry's transport URL GitHub stays out of the catalog on purpose: its hosted MCP rejects generic DCR and the bundled github/* skills (gh CLI) are the stronger integration. New desktop `github` suggestion provider offers the github-auth skill instead — gated on a new cached GET /api/git/gh-auth probe so already- authenticated users never see the pill.
46 lines
1.6 KiB
YAML
46 lines
1.6 KiB
YAML
# Nous-approved MCP catalog entry.
|
|
# Presence in this directory = approval. Merged via PR review.
|
|
manifest_version: 1
|
|
|
|
name: linear
|
|
description: Find, create, and update Linear issues, projects, and comments.
|
|
source: https://linear.app/docs/mcp
|
|
|
|
# Linear ships a remote MCP server with native OAuth 2.1 + Dynamic Client
|
|
# Registration over Streamable HTTP. Hermes's MCP client + mcp_oauth_manager
|
|
# handle discovery, PKCE, token exchange, and refresh — nothing to install
|
|
# locally.
|
|
transport:
|
|
type: http
|
|
url: https://mcp.linear.app/mcp
|
|
|
|
auth:
|
|
type: oauth
|
|
# No `provider:` — this is native MCP OAuth (case 1), not a third-party
|
|
# provider like Google. The MCP client triggers the browser flow on the
|
|
# first probe / first connect.
|
|
|
|
# Tool selection at install time:
|
|
# Linear's MCP server exposes a moderate-sized tool surface (find/get/list +
|
|
# create/update across issues/projects/comments). We leave `default_enabled`
|
|
# unset so the install-time checklist starts with everything pre-checked —
|
|
# users prune what they don't want.
|
|
#
|
|
# If you want to encode a curated subset here once it stabilizes, list the
|
|
# tool names under `tools.default_enabled`. Probe failure would then apply
|
|
# that list directly.
|
|
|
|
# Composer-suggestion triggers (desktop brand pills).
|
|
suggest:
|
|
keywords:
|
|
- linear
|
|
hosts:
|
|
- linear.app
|
|
|
|
post_install: |
|
|
On first connection, Hermes will open a browser to authenticate with Linear.
|
|
After auth, restart your Hermes session so the Linear tools are loaded.
|
|
|
|
You can re-run the tool checklist any time with:
|
|
hermes mcp configure linear
|