NGOPilotMCP
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@NGOPilotMCPConvert the scanned volunteer forms to an Excel workbook"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
NGOPilot
NGOPilot is a local AI agent tailored for NGO operations. It combines the rebranded agent harness with NGOPilot MCP tools for CareFlow and roster workflows.

Repository Layout
harness bone/: NGOPilot agent runtime, CLI, and desktop applicationMCPcode/: NGOPilot MCP server and four stateful NGO workflow toolsalgo-dependencies/CareFlow/: CareFlow algorithm dependency sourcealgo-dependencies/RosterCopiilot/: roster algorithm dependency source
The product exposes one user-facing agent: NGOPilot. The MCP server runs as a first-party stdio extension and retains ownership of workflow validation, durable jobs, review state, and delivered artifacts.
See Agent-MCP Architecture Design Plan.md for the product architecture and MCP-pre-build algorithm design plan.md for the MCP and algorithm boundaries.
Available Tools
4 toolscareflow_government_formsA
Fill a bundled Hong Kong government welfare-form PDF from elder information, with mandatory human review before export. Call list_templates first or start with a template_id and exactly one source: non-empty text, one absolute .jpg/.jpeg/.png path (HEIC/HEIF only when discovery reports support), or an elder_profile object. This tool does not accept a blank government PDF, completed volunteer visit forms, audio, Word, or Excel files. Continue the same job with status, review using every preview field, then export.
| Name | Required | Description | Default |
|---|---|---|---|
| input | No | ||
| job_id | No | ||
| operation | Yes | ||
| request_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries full burden. It discloses mandatory human review, input format restrictions (e.g., 'HEIC/HEIF only when discovery reports support'), and the need to continue the same job via status/review/export. This is substantial, though it could add detail about error behavior or permission requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of three dense sentences with no wasted words. It front-loads the core purpose, then gives prerequisites and exclusions, and ends with the required workflow. Every sentence contributes unique value and is easily scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (multi-step job with template selection, source handling, review, and export) and minimal annotations/schema, the description covers the essential workflow and constraints. The existence of an output schema likely covers return value details, so the description is well-rounded, though 'request_id' remains unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 0% description coverage, but the text effectively explains key inputs: 'template_id', 'one source' (text, image path, elder_profile object), and the operation lifecycle (status, review, export). It does not explicitly enumerate `operation` string values, but the workflow strongly implies them, offering meaningful help beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and resource: 'Fill a bundled Hong Kong government welfare-form PDF from elder information.' It also includes a distinctive qualifier ('mandatory human review before export') and clearly differentiates from sibling tools by focusing on PDF generation from elder data rather than Excel conversion or meeting notes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage directions: 'Call list_templates first or start with a template_id and exactly one source.' It also lists disallowed input types ('does not accept a blank government PDF, completed volunteer visit forms, audio, Word, or Excel files') and outlines a clear multi-step workflow ('Continue the same job with status, review using every preview field, then export').
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
careflow_meeting_notesA
Convert one local audio recording and one CareFlow report template into reviewed meeting or home-visit notes. Attach audio_path as an absolute .mp3, .wav, .m4a, .aac, .flac, or .ogg path and template_path as an absolute .docx path (or .doc only when the managed CareFlow worker reports legacy conversion support). Use the same tool with operation=start, status, review, export, or burn and the returned job_id. PDF templates, images, and spreadsheets do not belong to this tool.
| Name | Required | Description | Default |
|---|---|---|---|
| input | No | ||
| job_id | No | ||
| operation | Yes | ||
| request_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It discloses supported audio formats, .docx/.doc template conditions, and the operation list, but does not explain what each operation (start, status, review, export, burn) does, nor any side effects or permission requirements. 'Burn' in particular is ambiguous.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The first sentence states purpose; the second packs file requirements, operations, and exclusions. It is dense but each clause adds value. It could be split for readability, but the structure is functional.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a multi-step tool with no annotations, the description covers purpose, exclusions, file types, operation names, and job_id usage. It doesn't detail what each operation does or the exact input object layout, but an output schema exists and the description is otherwise sufficiently complete for initial invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description is the only source for parameter meaning. It explicitly names audio_path and template_path with file extensions, and lists operation values and job_id. However, it does not clarify that audio_path and template_path likely belong inside the 'input' object, nor does it explain request_id. This is strong but not complete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it converts one local audio recording and one CareFlow report template into reviewed meeting or home-visit notes. This distinguishes it from sibling tools for paper forms, government forms, and rosters, giving a specific verb and resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit when-to-use guidance with file type requirements and exclusions ('PDF templates, images, and spreadsheets do not belong to this tool'), and describes the multi-step operation workflow. This effectively tells the agent when not to use it and which alternatives are likely needed for excluded formats.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
careflow_paper_forms_to_excelA
Convert photos or scans of completed CareFlow volunteer visit forms into reviewed records and a CareFlow-generated Excel workbook. For start, provide one or more absolute .jpg, .jpeg, or .png paths in image_paths. Do not route Excel files, audio recordings, or blank government PDF forms to this tool. Continue the same job with status, review, and export; every review must submit all 13 fields.
| Name | Required | Description | Default |
|---|---|---|---|
| input | No | ||
| job_id | No | ||
| operation | Yes | ||
| request_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It reveals the multi-step workflow (start, status, review, export), the required input format, and the strict requirement that 'every review must submit all 13 fields.' It does not detail error handling or return behavior, but the output schema exists, which mitigates that gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences long, tightly packed with actionable information. It front-loads the primary purpose, then immediately gives start instructions, exclusions, and workflow guidance. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the description covers the overall process and specific exclusions, it lacks details on the 13 required fields, the allowed values for 'operation', and the structure of the 'input' object. Given the tool's complexity (multi-step, multiple file types, strict field count), the description is incomplete without those details. The presence of an output schema helps for return values, but input semantics remain under-specified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, so the description must compensate for all parameter meanings. It mentions 'image_paths' which is not a top-level parameter, likely nested inside the 'input' object, but does not clarify how to use 'operation', 'job_id', 'request_id', or how the 'input' object should be structured. The workflow hints at operation values (status, review, export) but does not map them to the schema, leaving significant ambiguity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: converting photos/scans of CareFlow volunteer visit forms into reviewed records and an Excel workbook. It uses a specific verb ('convert'), identifies the resource, and distinguishes itself from siblings like careflow_meeting_notes and careflow_government_forms by explicitly excluding Excel files, audio recordings, and blank government PDFs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit when-to-use instructions ('For start, provide one or more absolute .jpg, .jpeg, or .png paths in image_paths') and when-not-to-use instructions ('Do not route Excel files, audio recordings, or blank government PDF forms to this tool'). It does not name alternative tools directly but makes the boundary clear, so it falls just short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
roster_copilotA
Build and review one weekly RosterCopiilot roster from exactly two named local workbook roles: hc_workbook_path and escort_workbook_path. Both must be absolute .xlsx or .xlsm paths in the native HC timetable and escort-master formats; generic spreadsheets and CareFlow exports do not belong here. Continue the returned job_id with status, review, revalidate, export (review draft), publish (ready-only final), or get_published. Export never publishes or distributes the workbook.
| Name | Required | Description | Default |
|---|---|---|---|
| input | No | ||
| job_id | No | ||
| operation | Yes | ||
| request_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of disclosing behavior. It does state that 'Export never publishes or distributes the workbook' and labels publish as 'ready-only final', offering some transparency. However, it does not detail side effects of status/review/revalidate operations, auth needs, or what happens to existing data, leaving gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact, with two sentences. The first sentence front-loads the primary purpose, and the second adds workflow details. The second sentence is dense but remains understandable. Slight typo 'RosterCopiilot' is minor and does not affect clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and sparse schema (only operation required), the description is fairly complete. It covers required input format, the job_id continuation pattern, and key constraints. The omission of request_id semantics is minor, and the presence of an output schema reduces the need to explain return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate. It introduces the critical parameters hc_workbook_path and escort_workbook_path (presumably within the input object) and enumerates valid operation values (status, review, revalidate, export, publish, get_published). This adds significant meaning beyond the bare schema names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool builds and reviews a weekly RosterCopiilot roster from two specific workbook paths. This is a specific verb+resource+input combination that clearly distinguishes it from sibling tools (careflow forms/notes/government forms).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides clear guidance on what inputs are acceptable ('absolute .xlsx or .xlsm paths in native formats') and explicitly excludes generic spreadsheets and CareFlow exports. It also describes the subsequent workflow via job_id operations (status, review, revalidate, export, publish, get_published), giving contextual usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
4 tool updates
v0.1.0- First observed
careflow_government_forms - First observed
careflow_meeting_notes - First observed
careflow_paper_forms_to_excel - First observed
roster_copilot
TDQS
Each tool targets a distinct input type and workflow: photos of forms to Excel, audio to meeting notes, government PDFs, and rosters from workbooks. There is no overlap in purpose or input, so an agent can easily select the correct tool.
Three tools share the 'careflow_' prefix, but the fourth uses 'roster_', and none follow a verb_noun pattern. The names are descriptive and readable, but slightly inconsistent in structure and prefix.
Four tools is an ideal size for a domain-specific server, covering several distinct workflows without overwhelming the agent. Each tool has a clear role and earns its place.
Each tool provides a full workflow from input to review to export/publish, covering key NGO operation needs. Minor broader-domain gaps exist (e.g., client management, activity tracking), but the core workflows are well represented.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server that lets AI assistants use all OneSchema features exposed via the public API.
MCP server for progressive tool usage at any scale (see https://klavis.ai)
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Fillo MCP server — provision, scaffold, publish, and query forms from your coding agent.
Related MCP Servers
- AlicenseAqualityCmaintenanceA local, open-source MCP server that provides deterministic organizational tools for structured decisions, guided reflection, action planning, and transparent digital report outlines without requiring an API key.648MIT
- AlicenseNot gradedqualityBmaintenanceProduction-grade MCP server for Indian agriculture and utility workflows, enabling crop advisory, weather checks, mandi prices, and railway utilities through natural language.MIT
- AlicenseNot gradedqualityCmaintenanceProvides a sovereign, MIT-licensed MCP server for professional-service workflows, running entirely on your infrastructure with Ed25519 cryptographic signing for every action.MIT
- AlicenseNot gradedqualityCmaintenanceA sovereign, MIT-licensed MCP server for professional-service workflow automation, enabling offline-capable, cryptographically signed operations without vendor lock-in.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Wilsonnijc-bot/NGOPilot'
If you have feedback or need assistance with the MCP directory API, please join our Discord server