forked from spencerm/freshservice-claude
47 lines
1.6 KiB
Markdown
47 lines
1.6 KiB
Markdown
|
|
# 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
|
||
|
|
|
||
|
|
1. **Get your Freshservice API key**: Freshservice → profile picture →
|
||
|
|
*Profile settings* → API key. Also ask IT (Spencer) for the **shared server
|
||
|
|
token**.
|
||
|
|
|
||
|
|
2. **Build your plugin** (from a clone of this repo):
|
||
|
|
|
||
|
|
macOS / Linux:
|
||
|
|
```bash
|
||
|
|
cd plugin && ./make-plugin.sh
|
||
|
|
```
|
||
|
|
|
||
|
|
Windows (PowerShell):
|
||
|
|
```powershell
|
||
|
|
cd plugin
|
||
|
|
powershell -ExecutionPolicy Bypass -File .\make-plugin.ps1
|
||
|
|
```
|
||
|
|
|
||
|
|
Enter your API key and the shared token when prompted. This produces
|
||
|
|
`freshservice.plugin` **containing your key — don't share the file.**
|
||
|
|
|
||
|
|
3. **Install it**: in Claude Desktop, go to Cowork → **Customize** → add the
|
||
|
|
`.plugin` file. 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 `.plugin` files are git-ignored on purpose — they embed credentials.
|
||
|
|
- The server side of this lives in [`../mcp-server/`](../mcp-server/); it must
|
||
|
|
be running in multi-user mode (no `FRESHSERVICE_*` env baked in) for
|
||
|
|
per-user identity to be enforced.
|