whistler-mcp 1.0.21 → 1.0.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/package.json +1 -1
- package/server.js +4 -4
package/README.md
CHANGED
|
@@ -5,8 +5,8 @@ An official [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) ser
|
|
|
5
5
|
|
|
6
6
|
## Features
|
|
7
7
|
- **Job Placement Data:** Fetch lists of companies and role metadata (title, CTC, eligibility) for any requested year.
|
|
8
|
-
- **Job descriptions on demand (`get_role_jd`):**
|
|
9
|
-
- **Feedback & Requests:** Submit bug reports, feature ideas, and
|
|
8
|
+
- **Job descriptions on demand (`get_role_jd`):** Fetch a role's job description by company and role id. Counts toward your daily view limit.
|
|
9
|
+
- **Feedback & Requests:** Submit bug reports, feature ideas, and daily limit increase requests dynamically.
|
|
10
10
|
- **Agentic Authentication:** The AI securely prompts you for your email and password when you first connect, fetches a real token from the backend, and saves it locally (`~/.whistler_mcp_token.json`).
|
|
11
11
|
|
|
12
12
|
## Usage via npx (Claude Desktop)
|
package/package.json
CHANGED
package/server.js
CHANGED
|
@@ -15,7 +15,7 @@ const API_BASE_URL = process.env.API_URL || 'https://whistler-backend.onrender.c
|
|
|
15
15
|
const server = new Server(
|
|
16
16
|
{
|
|
17
17
|
name: "whistler-mcp-server",
|
|
18
|
-
version: "1.0.
|
|
18
|
+
version: "1.0.22",
|
|
19
19
|
},
|
|
20
20
|
{
|
|
21
21
|
capabilities: { tools: {} },
|
|
@@ -101,7 +101,7 @@ const toolsDefinition = {
|
|
|
101
101
|
}
|
|
102
102
|
},
|
|
103
103
|
get_company_roles: {
|
|
104
|
-
description: "Fetch job role metadata for a company (title, CTC, eligibility, location). Returns each role with a stable `id`. To read a role's job description, call get_role_jd with that company and role id.
|
|
104
|
+
description: "Fetch job role metadata for a company (title, CTC, eligibility, location). Returns each role with a stable `id`. To read a role's job description, call get_role_jd with that company and role id.",
|
|
105
105
|
schema: z.object({
|
|
106
106
|
companyId: z.string().optional(),
|
|
107
107
|
companyName: z.string().optional(),
|
|
@@ -120,7 +120,7 @@ const toolsDefinition = {
|
|
|
120
120
|
},
|
|
121
121
|
|
|
122
122
|
get_role_jd: {
|
|
123
|
-
description: "Get the job description for a single role.
|
|
123
|
+
description: "Get the job description for a single role. Counts toward your daily view limit. Use the company name and role `id` from get_company_roles.",
|
|
124
124
|
schema: z.object({
|
|
125
125
|
companyName: z.string(),
|
|
126
126
|
jobId: z.string(),
|
|
@@ -156,7 +156,7 @@ const toolsDefinition = {
|
|
|
156
156
|
|
|
157
157
|
// PDF Access Requests
|
|
158
158
|
submit_pdf_request: {
|
|
159
|
-
description: "Submit a request to increase a user's daily
|
|
159
|
+
description: "Submit a request to increase a user's daily job description view limit.",
|
|
160
160
|
schema: z.object({ requestedLimit: z.number(), reason: z.string() }),
|
|
161
161
|
inputSchema: { type: "object", properties: { requestedLimit: { type: "number" }, reason: { type: "string" } }, required: ["requestedLimit", "reason"] }
|
|
162
162
|
},
|