The streamable-HTTP transport enables DNS-rebinding protection by default,
which rejects non-localhost Host headers with HTTP 421. The server is reached
by LAN IP via mcp-remote (not a browser) and is gated by a bearer token, so
disable the protection via TransportSecuritySettings.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Cowork runs the agent in an isolated VM, so the uploaded skill can't see host
credentials or reach the Freshservice host. Add an HTTP/streamable MCP server
(bearer-auth, Dockerfile, compose) to run as a container on the LAN box and
connect via mcp-remote like the existing sharepoint-lists server. The skill
remains the right tool for the non-sandboxed Claude Code CLI.
Also gitignore mcp-server/.env and include the desktop skill install package.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Stdlib-only fs.py helper wrapping the Freshservice REST API v2 (auth, URL
building, filter quoting, pagination, error surfacing), plus SKILL.md and a
reference of endpoints, status/priority codes, and filter-query syntax.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>