handshake-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| hs_search_jobsA | Search for jobs and internships on Handshake. Returns posting ID, title, employer, location, type, and deadline. Pass the posting ID to hs_get_job for the full description. |
| hs_get_jobA | Get full details of a Handshake job posting. Includes description, requirements, salary, application deadline, and application_method (handshake | external). |
| hs_applyA | Submit a Handshake application for a job. Call hs_get_job first to confirm the application_method field — external-apply jobs redirect to the employer's own site and cannot be submitted here. |
| hs_save_jobA | Bookmark a job posting to your Handshake saved-jobs list. |
| hs_unsave_jobA | Remove a job from your Handshake saved-jobs list. |
| hs_get_saved_jobsB | List all jobs you have bookmarked on Handshake. |
| hs_search_employersC | Search for companies/employers on Handshake. |
| hs_get_employerA | Get a company's Handshake profile. Includes description, industry, employee count, open job count, and active postings. |
| hs_get_applicationsA | List all your Handshake job applications with their current status. Statuses: pending, accepted, declined, withdrawn, interview. |
| hs_withdraw_applicationA | Withdraw a submitted Handshake job application. |
| hs_get_profileA | Get your Handshake student profile. Returns name, school, major, graduation year, and account status. |
| hs_get_documentsA | List your uploaded resumes, cover letters, and other documents. Use the returned document IDs when calling hs_apply to attach files. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 12 tools
Each tool has a clearly distinct purpose: searching, retrieving details, applying, managing saved jobs, and handling applications. No two tools overlap in functionality; even similar actions like get_job and search_jobs are well-differentiated (detail vs. list) with clear guidance in descriptions.
All tools follow a consistent pattern: 'hs_' prefix + verb_noun (e.g., hs_get_job, hs_save_job, hs_search_jobs). Verbs are operational (get, search, save, unsave, apply, withdraw) and nouns are the target resources. No mixing of styles or irregularities.
12 tools is an appropriate number for a Handshake student client. It covers the essential operations (search, retrieve, apply, manage saved jobs and applications, view profile and documents) without being overwhelming or sparse.
The tool set covers the core student workflow comprehensively: search jobs/employers, get details, save/unsave, apply, withdraw, view applications, and manage documents. Minor gaps like updating profile or uploading documents are absent but likely outside the MCP's scope.