plugin/make-plugin.{sh,ps1} stamp a user's own Freshservice API key and the
shared server token into a template and emit a personalized freshservice.plugin
(direct HTTP MCP connection — no Node/mcp-remote/config editing on clients).
Built plugins embed credentials, so *.plugin is git-ignored; the committed
template holds only placeholders. Validated with 'claude plugin validate'.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Freshservice plugin builder
Generates a personalized freshservice.plugin that connects Claude
Desktop / Cowork to the shared Freshservice MCP server on the LAN — no Node.js,
no mcp-remote, no hand-editing claude_desktop_config.json. The plugin uses
a direct HTTP MCP connection with your own identity headers, so everything you
do in Freshservice is attributed to you.
For coworkers: get connected in three steps
-
Get your Freshservice API key: Freshservice → profile picture → Profile settings → API key. Also ask IT (Spencer) for the shared server token.
-
Build your plugin (from a clone of this repo):
macOS / Linux:
cd plugin && ./make-plugin.shWindows (PowerShell):
cd plugin powershell -ExecutionPolicy Bypass -File .\make-plugin.ps1Enter your API key and the shared token when prompted. This produces
freshservice.plugincontaining your key — don't share the file. -
Install it: in Claude Desktop, go to Cowork → Customize → add the
.pluginfile. Start a new chat; the Freshservice tools are available.
Requirements
- Agent account in the PESCO Freshservice instance
- Network reach to
192.168.101.12:3839(on-site or VPN)
Notes
- Defaults (server URL, domain) can be overridden via env vars:
SERVER_URL=... FS_DOMAIN=... ./make-plugin.sh - Built
.pluginfiles are git-ignored on purpose — they embed credentials. - The server side of this lives in
../mcp-server/; it must be running in multi-user mode (noFRESHSERVICE_*env baked in) for per-user identity to be enforced.