mcp-registry/io.github.bdentech/chieflab · v0.3.0
As of 2026-10-18 04:58 UTC, the Bdentech Chieflab MCP server is up with a Glimind reliability score of 97/100 (grade A). Over the last 30 days it answered 100% of Glimind's liveness checks. It had 6 outages in 90 days, with a median recovery of 5 minutes.
Open execution contract for agents doing business work. 6 operators, one MIT-licensed spec.
Claude Code
claude mcp add --transport http bdentech-chieflab-mcp-server https://api.chieflab.io/api/mcp
Claude Desktop · Windsurf · Cline (mcpServers JSON)
{
"mcpServers": {
"bdentech-chieflab-mcp-server": {
"type": "http",
"url": "https://api.chieflab.io/api/mcp"
}
}
}
Third-party server, listed as discovered. Review its source before installing.
45 of 45 tool(s) carry no readOnlyHint/destructiveHint annotations.
Annotate read-only tools with {"readOnlyHint": true}. Agents and gateways can then run them without a confirmation prompt, and route around destructive ones. How to fix →
45 tools on one server. Tool-selection accuracy drops as the menu grows, and some clients (e.g. Cursor) cap the number of active tools.
Group tools by task into smaller servers or toolsets, and merge near-duplicates behind one tool with a mode parameter. How to fix →
14 tool(s) look like they change state (create/send/delete/pay…) but declare no destructiveHint.
Set annotations {"readOnlyHint": false, "destructiveHint": true|false, "idempotentHint": …}. Clients use these to ask the user before a side effect and to auto-approve safe reads. How to fix →
21 parameter(s) across 10 tool(s) have no description.
Add a "description" to each parameter with its format and an example ("ISO 8601 date, e.g. 2026-10-17"). This is the commonest cause of wrong arguments on the first call. How to fix →
1 tool(s) have parameters with no type (no type/enum/anyOf/$ref).
Give every parameter a "type" (or "enum"/"anyOf"). Untyped parameters make models guess — strings for numbers, objects for arrays. How to fix →
Negotiates MCP 2025-03-26. Structured output, tool output schemas and elicitation arrived in 2025-06-18.
Upgrade the MCP SDK and negotiate 2025-06-18 or newer. How to fix →
Handshake + tools/list takes ~1,818 ms.
Serve tools/list from memory, keep the process warm, and host close to your users. Every new agent session pays this before its first call.
No tool declares an outputSchema.
Declare outputSchema and return structuredContent (MCP 2025-06-18+). Agents can then parse results without guessing, and chain tools reliably. How to fix →
Paste-ready definitions with the problems above fixed. Changes marked verify need a human look. 10 tool(s) still need parameter descriptions written by someone who knows the API. All of them as JSON: /v1/readiness/mcp-registry%2Fio.github.bdentech%2Fchieflab/fixes
{
"name": "chieflab_approve_action",
"description": "[chieflab_* alias of chiefmo_approve_action] Approve one ChiefMO publish/send action so its executor can fire. USE WHEN the user — in IDE chat — said 'approve <channel>' (e.g. 'approve linkedin', 'approve hn'), 'approve all', 'ship it', 'go ahead', or otherwise greenlit a specific draft you rendered. Match the user's words to the channel, look up agentGuide.renderInChat[channel].actionId from the launch response, and call this tool with that actionId. This is the IDE-native approval path — no ne",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Legacy alias for actionId."
},
"subject": {
"type": "string",
"description": "P74. For autoExecute on email: subject line override."
},
"actionId": {
"type": "string",
"description": "The action id from publishActions[].id in a launch_product response. Preferred."
},
"mediaUrls": {
"type": "array",
"items": {
"type": "string"
},
"description": "P74. Optional media URLs for the social post — auto-uploaded to Zernio's CDN before publishing."
},
"platforms": {
"type": "array",
"items": {
"type": "object"
},
"description": "P74. For autoExecute on social channels: Zernio platform descriptors, e.g. [{platform: 'linkedin', accountId: '<id>'}]. Required when autoExecute=true and mode=oauth_connector."
},
"recipients": {
"type": "array",
"items": {
"type": "string"
},
"description": "P74. For autoExecute on email: recipient email addresses."
},
"autoExecute": {
"type": "boolean",
"description": "P74. When true AND the action's executionMatrix.mode is oauth_connector / api_key_connector / native_api AND the connector is ready, the approve handler immediately invokes chieflab_execute_approved_action with the inputs you supply. The response includes the executor result + the unified proof ledger. Defaults to false (preserves the prior contract — agent calls execute_approved_action explicitly)."
}
}
},
"annotations": {
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false
}
}{
"name": "chieflab_check_measurement_due",
"description": "P71 — measurement queue inspector. USE WHEN the agent wants to know which executed actions are ready for their 24h readback (regardless of how they were executed — native connector OR manual paste). Lists actions where metadata.proof.measurementDueAt <= now AND metadata.proof.measuredAt is unset. Returns: [{actionId, runId, channel, executedAt, measurementDueAt, artifactUrl, executionStatus, recommendedNextTool}]. Pairs with chiefmo_post_launch_review which the cron also calls automatically; thi",
"inputSchema": {
"type": "object",
"properties": {
"runId": {
"type": "string",
"description": "Optional. Restrict to one run."
},
"workspaceId": {
"type": "string",
"description": "Optional workspace id."
}
}
},
"annotations": {
"readOnlyHint": true
}
}{
"name": "chieflab_connector_status",
"description": "USE WHEN the user just completed a connector OAuth flow and you want to confirm it succeeded — 'did my connection work?', 'is my Zernio/HubSpot/Stripe connected?'. Returns status: pending | connected | failed for the given connectionId.",
"inputSchema": {
"type": "object",
"required": [
"connectionId"
],
"properties": {
"workspaceId": {
"type": "string"
},
"connectionId": {
"type": "string"
}
}
},
"annotations": {
"readOnlyHint": true
}
}Get an email or webhook when this server's readiness drops by 10+ points, tool-poisoning text appears, or a tool breaks:
curl -X POST https://glimind.com/v1/subscriptions -H 'content-type: application/json' -d '{"tools":["mcp-registry/io.github.bdentech/chieflab"],"email":"[email protected]"}'Agents: watch_tool({"toolId": "mcp-registry/io.github.bdentech/chieflab"}) over MCP.
chieflab_get_users_after_build ~711 tokenschieflab_regenerate_visual_asset ~539 tokenschieflab_approve_action ~524 tokenschieflab_use_manual_fallback ~483 tokenschieflab_execute_approved_action ~477 tokensStatic checks of the advertised tools/list (schema, descriptions, annotations, tool-poisoning patterns, names, size) plus observed protocol, uptime, latency and contract changes. Read-only: no tool is ever called. Weights: schema 15, docs 20, safety 15, efficiency 15, compatibility 15, protocol 5, reliability 10, stability 5. Token counts are estimates (~3.6 characters per token).
Operator? Fix these, then re-check live. Embed the readiness badge:
[](https://glimind.com/server/mcp-registry%2Fio.github.bdentech%2Fchieflab?ref=badge)
<a href="https://glimind.com/server/mcp-registry%2Fio.github.bdentech%2Fchieflab?ref=badge"><img src="https://glimind.com/v1/readiness/badge/mcp-registry%2Fio.github.bdentech%2Fchieflab.svg" alt="MCP agent-readiness"></a>
.. image:: https://glimind.com/v1/readiness/badge/mcp-registry%2Fio.github.bdentech%2Fchieflab.svg :target: https://glimind.com/server/mcp-registry%2Fio.github.bdentech%2Fchieflab?ref=badge :alt: MCP agent-readiness
Glimind records every version of this server's tool definitions in a signed, append-only transparency log. Current manifest sha256:e8010420130b40b5…, first seen 2026-10-17, included at leaf 16267 of 20,390. Version history · verify what your client received.
Compare: most reliable other servers · most reliable knowledge servers · most reliable devops servers · most reliable productivity servers · most reliable communication servers
Glimind tells agents whether a server is up right now and how to call it, then fails over to a live alternative when it isn't.
Claude Code
claude mcp add --transport http glimind https://glimind.com/mcp
Claude Desktop · Windsurf · Cline (mcpServers JSON)
{
"mcpServers": {
"glimind": {
"type": "http",
"url": "https://glimind.com/mcp"
}
}
}
As of 2026-10-18 04:58 UTC, the Bdentech Chieflab MCP server is up with a Glimind reliability score of 97/100 (grade A). Over the last 30 days it answered 100% of Glimind's liveness checks. It had 6 outages in 90 days, with a median recovery of 5 minutes.
Bdentech Chieflab MCP server advertises 45 tools, including chieflab_approve_action, chieflab_boot, chieflab_brain_summary, chieflab_check_measurement_due, chieflab_connect_provider.
Point your MCP client at this streamable-http endpoint: https://api.chieflab.io/api/mcp
Glimind scanned all 45 tool definitions for tool-poisoning patterns — hidden or invisible characters, instructions that override the model, concealment from the user, requests to read credential or MCP config files, conversation exfiltration and cross-tool shadowing — and found none. This checks what the server tells the model, not what its code does; review the source before granting access to sensitive data.
Status page: 90-day uptime, every outage and how long it lasted.
Claim this listing to get the Verified operator marker, a remediation checklist and owner analytics, or embed the live badge from any of the tool pages above. Maintainers: alerts, deploy attestation and monthly reports.
Status is an automated estimate from Glimind's liveness checks (handshake and tool listing only; no tool is ever called) and may lag or differ from your network. Glimind is not affiliated with this server or its operator. Operator? Request a correction or opt out at https://glimind.com/opt-out.