Skip to content

feat: add MCP server module for AI agent integration#133

Merged
linroid merged 2 commits intomainfrom
feat/mcp-server
Apr 17, 2026
Merged

feat: add MCP server module for AI agent integration#133
linroid merged 2 commits intomainfrom
feat/mcp-server

Conversation

@linroid
Copy link
Copy Markdown
Owner

@linroid linroid commented Apr 16, 2026

Add library:mcp module with 12 MCP tools wrapping KetchApi, plus CLI ketch mcp subcommand.

Expose Ketch download management capabilities as MCP (Model Context
Protocol) tools, allowing AI agents like Claude Desktop to start,
pause, resume, cancel, and monitor downloads.

- New `library:mcp` module using Koog's `agents-mcp-server` bridge
- 12 MCP tools: listDownloads, getDownload, startDownload,
  pauseDownload, resumeDownload, cancelDownload, removeDownload,
  resolveUrl, getStatus, setSpeedLimit, setPriority, updateConfig
- KetchToolSet follows the same @Tool/@LLMDescription pattern as
  ai:discover's DiscoveryToolSet
- Supports stdio (primary) and SSE transports
- CLI `ketch mcp` subcommand for stdio-based MCP server
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 4a18255cc9

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread cli/src/main/kotlin/com/linroid/ketch/cli/Main.kt Outdated
Comment thread library/mcp/src/main/kotlin/com/linroid/ketch/mcp/KetchToolSet.kt Outdated
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 16, 2026

Test Results

1 045 tests  ±0   1 045 ✅ ±0   14s ⏱️ -1s
   94 suites ±0       0 💤 ±0 
   94 files   ±0       0 ❌ ±0 

Results for commit 93410a6. ± Comparison against base commit f428f2f.

♻️ This comment has been updated with latest results.

- Error out when --config or --dir flags are missing their value
  in `ketch mcp`, matching the stricter validation in `runServer`
- Throw IllegalArgumentException on invalid speed limit strings
  instead of silently coercing to Unlimited
@linroid linroid merged commit 613eeba into main Apr 17, 2026
6 checks passed
@linroid linroid deleted the feat/mcp-server branch April 17, 2026 13:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant