MCP 서버

VA Heroes PH — From Zero to Hero | Become a Virtual Assistant

io.github.janoliverautomation-stack/vaheroesph-com
교육 공개 · 연결 가능 MCP 2025-11-25

이 MCP로 할 수 있는 일

Provides information about virtual-assistant training paths, career tracks, application details, and applicant FAQs.

get_hero_path
Get a Hero Path
Retrieve the full published detail of one VA Heroes PH Hero Path, identified by its slug (for example 'general-va'), so an agent can explain that specific track to a visitor. Use it after get_hero_paths when the user asks about one track — what it covers, who it suits, or where to read more. Requires 'slug': the exact lowercase slug of an existing path; an unknown or misspelled slug returns a NOT_FOUND error that lists the valid slugs. Returns one record with slug, name, label, tagline, description, intro, highlights, type, featured, externalUrl and canonical url. It does NOT return pricing, schedules, enrolment or applicant data, and it cannot submit an application.
읽기 전용 멱등성
입력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'pattern': '^[A-Za-z0-9-]+$', 'maxLength': 64, 'minLength': 1, 'description': "Required. Slug of an existing Hero Path, e.g. 'general-va'."}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['slug', 'name', 'label', 'tagline', 'description', 'intro', 'highlights', 'type', 'featured', 'externalUrl', 'url'], 'properties': {'url': {'type': 'string', 'description': 'Absolute canonical URL of the Hero Path page.'}, 'name': {'type': 'string', 'description': 'Display name of the Hero Path.'}, 'slug': {'type': 'string', 'description': "URL slug identifying the Hero Path, e.g. 'general-va'."}, 'type': {'enum': ['training', 'sales'], 'type': 'string', 'description': "'training' for VA training paths, 'sales' for the Loan Officer career path."}, 'intro': {'type': 'string', 'description': 'Longer introduction shown on the path page.'}, 'label': {'type': ['string', 'null'], 'description': 'Short badge label, null when the path has none.'}, 'tagline': {'type': 'string', 'description': 'One-line summary shown on the path card.'}, 'featured': {'type': 'boolean', 'description': 'True for the highlighted starter path.'}, 'highlights': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Key learning or role highlights.'}, 'description': {'type': 'string', 'description': 'Short description used in listings.'}, 'externalUrl': {'type': ['string', 'null'], 'description': 'External program website, null when none exists.'}}, 'additionalProperties': False}
get_hero_paths
List Hero Paths
Retrieve every publicly published VA Heroes PH Hero Path — the career and training tracks a Filipino virtual assistant can start with or specialise in — so an agent can help a visitor identify a suitable path. Use it when someone asks what programs, tracks, specialisations or career options VA Heroes PH offers, or to obtain a slug before calling get_hero_path. Requires no input; optional filters are 'type' ('training' for VA skill paths, 'sales' for the Loan Officer path), 'featured' (only the recommended starting path) and 'limit' (1-100). Returns { total, count, items[] } where each item has slug, name, label, tagline, description, intro, highlights, type, featured, externalUrl and canonical url. It does NOT return pricing, schedules, enrolment status, applicant records or any private data, and it cannot submit an application.
읽기 전용 멱등성
입력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'type': {'enum': ['training', 'sales'], 'type': 'string', 'description': "Optional. Filter by path type: 'training' or 'sales'."}, 'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Optional. Maximum number of paths to return (1-100). Omit to return all.'}, 'featured': {'type': 'boolean', 'description': 'Optional. When true, return only paths flagged as featured.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['total', 'count', 'items'], 'properties': {'count': {'type': 'integer', 'description': 'Number of paths actually returned.'}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'name', 'label', 'tagline', 'description', 'intro', 'highlights', 'type', 'featured', 'externalUrl', 'url'], 'properties': {'url': {'type': 'string', 'description': 'Absolute canonical URL of the Hero Path page.'}, 'name': {'type': 'string', 'description': 'Display name of the Hero Path.'}, 'slug': {'type': 'string', 'description': "URL slug identifying the Hero Path, e.g. 'general-va'."}, 'type': {'enum': ['training', 'sales'], 'type': 'string', 'description': "'training' for VA training paths, 'sales' for the Loan Officer career path."}, 'intro': {'type': 'string', 'description': 'Longer introduction shown on the path page.'}, 'label': {'type': ['string', 'null'], 'description': 'Short badge label, null when the path has none.'}, 'tagline': {'type': 'string', 'description': 'One-line summary shown on the path card.'}, 'featured': {'type': 'boolean', 'description': 'True for the highlighted starter path.'}, 'highlights': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Key learning or role highlights.'}, 'description': {'type': 'string', 'description': 'Short description used in listings.'}, 'externalUrl': {'type': ['string', 'null'], 'description': 'External program website, null when none exists.'}}, 'additionalProperties': False}, 'description': 'The matching Hero Path records.'}, 'total': {'type': 'integer', 'description': "Number of paths matching the filters before 'limit'."}}, 'additionalProperties': False}
get_program_information
Get program information
Retrieve a single structured overview of how the VA Heroes PH program works: the training Hero Paths, the separate sales (Loan Officer) path, the published community impact statistics, and the page where candidates apply. Use it when a visitor asks broadly what VA Heroes PH offers, how the training works, or how to get started, instead of asking about one specific track. Requires no input. Returns { applicationUrl, trainingPrograms[], salesPrograms[], impactStats[] }, where each program carries slug, name, tagline, description, highlights, featured and url. It does NOT expose pricing, class schedules, enrolment status, batch dates or any applicant data — programs in this project are the Hero Paths and no separate course catalogue exists.
읽기 전용 멱등성
입력 스키마
{'type': 'object', 'properties': {}}
출력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['applicationUrl', 'trainingPrograms', 'salesPrograms', 'impactStats'], 'properties': {'impactStats': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value', 'suffix', 'display'], 'properties': {'label': {'type': 'string', 'description': 'What the statistic measures.'}, 'value': {'type': ['number', 'null'], 'description': 'Numeric value, null when the statistic is text.'}, 'suffix': {'type': ['string', 'null'], 'description': "Unit or suffix appended to the value, such as '+'."}, 'display': {'type': ['string', 'null'], 'description': 'Text shown instead of a number, when value is null.'}}, 'additionalProperties': False}, 'description': 'Published community impact statistics.'}, 'salesPrograms': {'type': 'array', 'items': {'$ref': '#/properties/trainingPrograms/items'}, 'description': "Hero Paths of type 'sales' (the Loan Officer path)."}, 'applicationUrl': {'type': 'string', 'description': 'Public page where candidates submit an application.'}, 'trainingPrograms': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'name', 'tagline', 'description', 'highlights', 'featured', 'url'], 'properties': {'url': {'type': 'string', 'description': 'Absolute canonical URL of the program page.'}, 'name': {'type': 'string', 'description': 'Program display name.'}, 'slug': {'type': 'string', 'description': 'URL slug identifying the program (Hero Path).'}, 'tagline': {'type': 'string', 'description': 'One-line summary.'}, 'featured': {'type': 'boolean', 'description': 'True for the recommended starting program.'}, 'highlights': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Key learning or role highlights.'}, 'description': {'type': 'string', 'description': 'Short description.'}}, 'additionalProperties': False}, 'description': "Hero Paths of type 'training'."}}, 'additionalProperties': False}
get_site_information
Get site information
Retrieve the public organization profile of VA Heroes PH — name, website URL, logo, slogan, description, area served, social profile links and the application page URL — together with the published testimonials (Hero Stories), so an agent can introduce the organization and point a visitor to the right page. Use it when a visitor asks who VA Heroes PH is, what it does, whether it is credible, where to follow it, or where to apply. Requires no input. Returns { organization, heroStories[] } with quote, display name and role per story. It does NOT return phone numbers, postal addresses, staff contacts, applicant records or any private data — only content already visible on the public website.
읽기 전용 멱등성
입력 스키마
{'type': 'object', 'properties': {}}
출력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['organization', 'heroStories'], 'properties': {'heroStories': {'type': 'array', 'items': {'type': 'object', 'required': ['quote', 'name', 'role'], 'properties': {'name': {'type': 'string', 'description': 'Display name as published on the website.'}, 'role': {'type': 'string', 'description': 'Role or Hero Path the person follows.'}, 'quote': {'type': 'string', 'description': 'Testimonial text as published.'}}, 'additionalProperties': False}, 'description': 'Published testimonials exactly as shown on the website.'}, 'organization': {'type': 'object', 'required': ['name', 'url', 'logoUrl', 'slogan', 'description', 'areaServed', 'socialProfiles', 'applicationUrl'], 'properties': {'url': {'type': 'string', 'description': 'Website home page URL.'}, 'name': {'type': 'string', 'description': 'Organization name.'}, 'slogan': {'type': 'string', 'description': 'Public slogan.'}, 'logoUrl': {'type': 'string', 'description': 'Public logo image URL.'}, 'areaServed': {'type': 'string', 'description': 'Primary area served.'}, 'description': {'type': 'string', 'description': 'Public organization description.'}, 'applicationUrl': {'type': 'string', 'description': 'Public page where candidates submit an application.'}, 'socialProfiles': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Public social profile URLs.'}}, 'description': 'Public organization profile.', 'additionalProperties': False}}, 'additionalProperties': False}
search_faq
Search FAQs
Search the published VA Heroes PH FAQ entries (About VA Heroes page) so an agent can answer applicant questions with the organization's own wording. Use it for questions about who can apply, required experience, needed skills, equipment and internet, how to apply, what happens after submitting, interviews, working hours, earnings, and whether applying costs anything. Requires no input; optional 'query' is case-insensitive text matched against both question and answer (max 200 characters) and optional 'limit' caps results (1-100). Returns { total, count, items[] } with id, question and answer verbatim. It does NOT generate answers: when nothing matches, the list is empty — say so or use another tool rather than inventing an answer.
읽기 전용 멱등성
입력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Optional. Maximum number of FAQ entries to return (1-100).'}, 'query': {'type': 'string', 'maxLength': 200, 'description': 'Optional. Free-text search phrase (max 200 chars). Omit to return all FAQs.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['total', 'count', 'items'], 'properties': {'count': {'type': 'integer', 'description': 'Number of entries actually returned.'}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'question', 'answer'], 'properties': {'id': {'type': 'integer', 'description': 'Stable position-based identifier of the FAQ entry.'}, 'answer': {'type': 'string', 'description': 'The answer as published.'}, 'question': {'type': 'string', 'description': 'The question as published.'}}, 'additionalProperties': False}, 'description': 'Matching published FAQ entries.'}, 'total': {'type': 'integer', 'description': "Number of FAQ entries matching the query before 'limit'."}}, 'additionalProperties': False}
추가됨
get_site_information
2026년 9월 17일 12:42 PM
추가됨
search_faq
2026년 9월 17일 12:42 PM
추가됨
get_program_information
2026년 9월 17일 12:42 PM
추가됨
get_hero_path
2026년 9월 17일 12:42 PM
추가됨
get_hero_paths
2026년 9월 17일 12:42 PM