Server definition
- Hash
- sha256:9472ffe0bead03e7fc653ba4b776f27915535af90ada557088169cae5b0df45a
- What it is
- What a remote MCP server returned when asked what it offers: 5 tools
The blob, as servednamed by its sha256
{
"instructions": "Jobven serves job postings collected directly from employer career sites. search_jobs and get_job read jobs, search_companies and get_company read employers, and each result carries the REST request it made, as a URL and a curl command, ready to use in code. webhook_example returns a signed sample webhook delivery with verification code. Searches are metered like the REST API: each job returned counts toward the key's monthly allowance; companies are free, and webhook_example needs no key.",
"tools": [
{
"description": "One employer by id (GET /v1/public/companies/{id}). Free.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"id": {
"description": "A company id from search_companies",
"maximum": 2147483647,
"minimum": 1,
"type": "integer"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "get_company",
"outputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"company": {
"additionalProperties": {},
"properties": {},
"type": "object"
},
"request": {
"additionalProperties": false,
"description": "The REST call this result came from. curl reads the key from $JOBVEN_API_KEY.",
"properties": {
"curl": {
"type": "string"
},
"method": {
"const": "GET",
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"method",
"url",
"curl"
],
"type": "object"
}
},
"required": [
"company",
"request"
],
"type": "object"
}
},
{
"description": "One Jobven job posting by id, with the full description (GET /v1/public/jobs/{id}). Counts as one job toward the monthly allowance.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"descriptionFormat": {
"description": "Description as plain text (default) or markdown",
"enum": [
"plain",
"markdown"
],
"type": "string"
},
"id": {
"description": "A job id from search_jobs",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "get_job",
"outputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"job": {
"additionalProperties": {},
"properties": {},
"type": "object"
},
"request": {
"additionalProperties": false,
"description": "The REST call this result came from. curl reads the key from $JOBVEN_API_KEY.",
"properties": {
"curl": {
"type": "string"
},
"method": {
"const": "GET",
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"method",
"url",
"curl"
],
"type": "object"
}
},
"required": [
"job",
"request"
],
"type": "object"
}
},
{
"description": "Search the employers Jobven collects jobs from (GET /v1/public/companies). Free: company searches do not count toward the allowance.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"industry": {
"description": "Industry, e.g. \"Technology\"",
"maxLength": 100,
"type": "string"
},
"isVerified": {
"description": "Only verified, or only unverified, companies",
"type": "boolean"
},
"limit": {
"description": "Companies per page, default 10, at most 25",
"maximum": 25,
"minimum": 1,
"type": "integer"
},
"page": {
"description": "Page number, from 1",
"maximum": 9007199254740991,
"minimum": 1,
"type": "integer"
},
"search": {
"description": "Company name or description contains this text",
"maxLength": 200,
"type": "string"
},
"size": {
"description": "Company size band, e.g. \"51-200\"",
"maxLength": 50,
"type": "string"
},
"sortBy": {
"description": "Sort field",
"enum": [
"name",
"foundedYear",
"totalJobsPosted",
"activeJobsCount",
"createdAt"
],
"type": "string"
},
"sortOrder": {
"enum": [
"ASC",
"DESC"
],
"type": "string"
},
"status": {
"description": "\"active\" or \"inactive\"; both when unset",
"enum": [
"active",
"inactive"
],
"type": "string"
}
},
"type": "object"
},
"name": "search_companies",
"outputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": {},
"properties": {
"companies": {
"items": {
"additionalProperties": {},
"properties": {},
"type": "object"
},
"type": "array"
},
"request": {
"additionalProperties": false,
"description": "The REST call this result came from. curl reads the key from $JOBVEN_API_KEY.",
"properties": {
"curl": {
"type": "string"
},
"method": {
"const": "GET",
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"method",
"url",
"curl"
],
"type": "object"
}
},
"required": [
"companies",
"request"
],
"type": "object"
}
},
{
"description": "Search Jobven job postings with the filters of GET /v1/public/jobs. Returns 10 jobs by default (at most 25) with a plain-text excerpt of each description; get_job has the full text. Pass nextCursor back as cursor, with the same filters, for the next page. Each job returned counts toward the monthly allowance.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"city": {
"description": "City, comma-separated; case and accents are ignored",
"maxLength": 500,
"type": "string"
},
"country": {
"description": "ISO 3166-1 alpha-2 country code, e.g. \"US\", \"CA\", \"GB\". \"XX\" matches jobs with no location at all.",
"maxLength": 2,
"type": "string"
},
"cursor": {
"description": "nextCursor from the previous search_jobs result, same filters",
"maxLength": 1000,
"type": "string"
},
"descriptionQuery": {
"description": "Search job descriptions for a whole-word phrase, matched literally, case-insensitive. Slower than the other filters; pair it with postedAfter.",
"maxLength": 200,
"type": "string"
},
"employmentType": {
"description": "Employment type, any of",
"items": {
"enum": [
"full_time",
"part_time",
"contract",
"internship",
"seasonal",
"volunteer",
"temporary",
"per_diem",
"other"
],
"type": "string"
},
"maxItems": 10,
"minItems": 1,
"type": "array"
},
"experienceLevel": {
"description": "Experience level, any of",
"items": {
"enum": [
"entry",
"mid",
"senior",
"lead",
"executive"
],
"type": "string"
},
"maxItems": 10,
"minItems": 1,
"type": "array"
},
"hasRelocation": {
"description": "true: postings that offer relocation help; false: postings that say they do not",
"type": "boolean"
},
"hasVisaSponsorship": {
"description": "true: postings that offer visa sponsorship; false: postings that say they do not",
"type": "boolean"
},
"includeTotal": {
"description": "Also count every match (slower)",
"type": "boolean"
},
"industry": {
"description": "Industries, any of (up to 10)",
"items": {
"maxLength": 100,
"minLength": 1,
"type": "string"
},
"maxItems": 10,
"minItems": 1,
"type": "array"
},
"language": {
"description": "Required spoken language, ISO 639-1 code, e.g. \"fr\"",
"maxLength": 2,
"minLength": 2,
"type": "string"
},
"limit": {
"description": "Jobs per page, default 10, at most 25",
"maximum": 25,
"minimum": 1,
"type": "integer"
},
"listedAfter": {
"description": "Listed at or after (Unix seconds), by listedAt: for incremental sync",
"maximum": 9007199254740991,
"minimum": 0,
"type": "integer"
},
"location": {
"description": "Free-text location: city, region or country",
"maxLength": 200,
"type": "string"
},
"maxSalary": {
"description": "Maximum stated salary",
"minimum": 0,
"type": "number"
},
"minSalary": {
"description": "Minimum stated salary",
"minimum": 0,
"type": "number"
},
"order": {
"description": "Default DESC",
"enum": [
"ASC",
"DESC"
],
"type": "string"
},
"postedAfter": {
"description": "Posted at or after (Unix seconds)",
"maximum": 9007199254740991,
"minimum": 0,
"type": "integer"
},
"postedBefore": {
"description": "Posted before (Unix seconds)",
"maximum": 9007199254740991,
"minimum": 0,
"type": "integer"
},
"q": {
"description": "Search job titles by whole word. Words are ANDed in any order; \"double quotes\" match an exact phrase, OR matches either side, and a leading - excludes a word. Case-insensitive. Does not search descriptions (see descriptionQuery).",
"maxLength": 200,
"type": "string"
},
"remoteType": {
"description": "Remote type, any of",
"items": {
"enum": [
"onsite",
"remote",
"hybrid",
"flexible"
],
"type": "string"
},
"maxItems": 10,
"minItems": 1,
"type": "array"
},
"skills": {
"description": "Skills, any of (up to 10), e.g. [\"typescript\", \"react\"]",
"items": {
"maxLength": 100,
"minLength": 1,
"type": "string"
},
"maxItems": 10,
"minItems": 1,
"type": "array"
},
"sortBy": {
"description": "Sort field (default postedAt)",
"enum": [
"postedAt",
"listedAt",
"title",
"company"
],
"type": "string"
},
"state": {
"description": "State, province or region, comma-separated: full name (\"Ontario\") or, for the US and Canada, the postal code (\"ON\")",
"maxLength": 500,
"type": "string"
},
"status": {
"description": "\"active\" (the default) or \"closed\"",
"enum": [
"active",
"closed"
],
"type": "string"
}
},
"type": "object"
},
"name": "search_jobs",
"outputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"hasMore": {
"type": "boolean"
},
"jobs": {
"items": {
"additionalProperties": {},
"properties": {},
"type": "object"
},
"type": "array"
},
"nextCursor": {
"type": "string"
},
"request": {
"additionalProperties": false,
"description": "The REST call this result came from. curl reads the key from $JOBVEN_API_KEY.",
"properties": {
"curl": {
"type": "string"
},
"method": {
"const": "GET",
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"method",
"url",
"curl"
],
"type": "object"
},
"total": {
"type": "number"
}
},
"required": [
"jobs",
"hasMore",
"request"
],
"type": "object"
}
},
{
"description": "A sample Jobven webhook delivery for one event: the raw body and headers exactly as a receiver gets them, signed with an example secret, plus the signature verifier from the webhook docs in TypeScript, Python or Go. The verifier accepts the sample, so a receiver can be tested end to end. No API call, no key needed, free.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"event": {
"description": "The event to show a delivery of",
"enum": [
"job.created",
"job.updated",
"job.closed",
"job.deleted"
],
"type": "string"
},
"language": {
"description": "Language of the signature verifier",
"enum": [
"typescript",
"python",
"go"
],
"type": "string"
}
},
"required": [
"event",
"language"
],
"type": "object"
},
"name": "webhook_example",
"outputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"event": {
"type": "string"
},
"exampleSecret": {
"type": "string"
},
"headers": {
"additionalProperties": {
"type": "string"
},
"propertyNames": {
"type": "string"
},
"type": "object"
},
"language": {
"type": "string"
},
"note": {
"type": "string"
},
"rawBody": {
"type": "string"
},
"verifier": {
"type": "string"
}
},
"required": [
"event",
"language",
"rawBody",
"headers",
"exampleSecret",
"verifier",
"note"
],
"type": "object"
}
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:9472ffe0bead03e7fc653ba4b776f27915535af90ada557088169cae5b0df45a | sha256sum