@50heads/mcp 2026.1009.1 → 2026.1013.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +31 -0
- package/README.md +137 -27
- package/dist/cli.js +6807 -2723
- package/dist/index.js +6755 -2664
- package/dist/snippets.js +1 -1
- package/dist/types/account.d.ts +1 -1
- package/dist/types/actions.d.ts +1 -1
- package/dist/types/approvals.d.ts +14 -0
- package/dist/types/apps.d.ts +9 -4
- package/dist/types/cli/stdio.d.ts +1142 -30
- package/dist/types/constants.d.ts +93 -24
- package/dist/types/draft.d.ts +10 -1
- package/dist/types/errors.d.ts +1 -1
- package/dist/types/generated/skill.d.ts +2 -2
- package/dist/types/manifest.d.ts +26 -6
- package/dist/types/organization.d.ts +47 -0
- package/dist/types/pricing.d.ts +3 -5
- package/dist/types/public.d.ts +1 -1
- package/dist/types/results.d.ts +8 -1
- package/dist/types/schemas.d.ts +968 -6
- package/dist/types/server.d.ts +5 -3
- package/dist/types/tasks.d.ts +2 -2
- package/dist/types/tool-schema.d.ts +64 -0
- package/dist/types/webhooks.d.ts +35 -0
- package/dist/types/workspace-apps.d.ts +13 -0
- package/package.json +4 -3
- package/server.json +19 -5
- package/skills/50heads/SKILL.md +20 -15
- package/skills/50heads/references/pricing.md +2 -2
- package/skills/50heads/references/question-types.md +14 -10
- package/skills/50heads/references/tools.md +76 -15
- package/skills/50heads/scripts/estimate.py +1 -1
- package/skills/50heads.zip +0 -0
package/dist/snippets.js
CHANGED
|
@@ -9,7 +9,7 @@ function configSnippets(options = {}) {
|
|
|
9
9
|
{
|
|
10
10
|
client: "claude-desktop",
|
|
11
11
|
title: "Claude (claude.ai and Claude Desktop)",
|
|
12
|
-
where: "Settings, Connectors, Add custom connector. Paste the URL and sign in when asked. On Team and Enterprise plans an owner adds it for the
|
|
12
|
+
where: "Settings, Connectors, Add custom connector. Paste the URL and sign in when asked. On Team and Enterprise plans an owner adds it for the organization first.",
|
|
13
13
|
auth: "oauth",
|
|
14
14
|
format: "text",
|
|
15
15
|
body: url,
|
package/dist/types/account.d.ts
CHANGED
|
@@ -17,6 +17,6 @@ export declare function accountMoney(api: (tag: string) => Client, canReadAccoun
|
|
|
17
17
|
currency: (explicit?: Currency | null) => Promise<Currency>;
|
|
18
18
|
/** Both, in parallel. */
|
|
19
19
|
money: (explicit?: Currency | null) => Promise<Money>;
|
|
20
|
-
/** Records a currency already read (
|
|
20
|
+
/** Records a currency already read (estimate, action balance), so no second request is made. */
|
|
21
21
|
remember(c: Currency): void;
|
|
22
22
|
};
|
package/dist/types/actions.d.ts
CHANGED
|
@@ -33,7 +33,7 @@ export declare function answersPage(api: Client, questionId: string, filter: Ans
|
|
|
33
33
|
}): Promise<GetAnswersOutput>;
|
|
34
34
|
/**
|
|
35
35
|
* The portal composer's query parameters (apps/web/app/lib/portal/composer.ts draftFromForm and
|
|
36
|
-
* the ask loader). Documented in the help
|
|
36
|
+
* the ask loader). Documented in the help center and on /docs/mcp; keep the three in step.
|
|
37
37
|
*/
|
|
38
38
|
export declare function buildAskLink(portalUrl: string, input: BuildAskLinkInput): {
|
|
39
39
|
url: string;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Spend approvals in the MCP server (E16): an ask that an organization's policy holds is not an
|
|
3
|
+
* error. The credits are held, a person is asked, and the tool returns the question as a task in
|
|
4
|
+
* `input_required` with the approval's address and deadline. Everything here is a pure function,
|
|
5
|
+
* so server.ts only has to catch the API's `approval_required` answer and call it.
|
|
6
|
+
*/
|
|
7
|
+
import type { ApprovalRequired } from "@50heads/shared";
|
|
8
|
+
import type { AskOutput } from "./schemas.js";
|
|
9
|
+
/** The tool's structured output for an ask that waits. */
|
|
10
|
+
export declare function heldOutput(held: ApprovalRequired, etaMinutes: number): AskOutput & {
|
|
11
|
+
approval: NonNullable<AskOutput["approval"]>;
|
|
12
|
+
};
|
|
13
|
+
/** What to tell the model: it waits, nothing goes to heads yet, and where a person decides. */
|
|
14
|
+
export declare function heldSummary(held: ApprovalRequired, waitingOnTask: boolean): string;
|
package/dist/types/apps.d.ts
CHANGED
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* MCP Apps (io.modelcontextprotocol/apps) views: the quote card for `estimate` and the
|
|
3
|
-
* view for `
|
|
2
|
+
* MCP Apps (io.modelcontextprotocol/apps) views: the quote card for `estimate` (action quote) and the
|
|
3
|
+
* results view for `results` (actions get and wait) and the results resource. Each is one self-contained HTML document:
|
|
4
4
|
* brand tokens inline, no external requests (fonts fall back to the brand's stacks), under
|
|
5
|
-
* 30 KB.
|
|
5
|
+
* 30 KB. A tool carries one view for all its actions, so each view draws only the result it was
|
|
6
|
+
* made for (a quote, a results object) and hides itself for any other action's reply. They talk to the host over the MCP Apps postMessage protocol and also read
|
|
6
7
|
* `window.openai.toolOutput` on hosts that expose it.
|
|
7
8
|
*/
|
|
8
9
|
export declare const APP_MIME_TYPE = "text/html;profile=mcp-app";
|
|
9
10
|
export declare const RESULTS_VIEW_URI = "ui://50heads/results.html";
|
|
10
11
|
export declare const QUOTE_VIEW_URI = "ui://50heads/quote.html";
|
|
11
|
-
/**
|
|
12
|
+
/**
|
|
13
|
+
* The results view: winner line (or the verdict pill for a go rule), bars with pairwise ranges,
|
|
14
|
+
* confidence, who beats whom, a follow-up button. Verdict pills are Ink and Line, never Tomato
|
|
15
|
+
* or Lime: Tomato asks, Lime pays.
|
|
16
|
+
*/
|
|
12
17
|
export declare function resultsViewHtml(): string;
|
|
13
18
|
/**
|
|
14
19
|
* The quote card: cost and time in one sentence, credits and pool, fixes, an ask button. The
|