@hoststack.dev/mcp 0.23.0 → 0.24.0
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/dist/hoststack-mcp.js +25 -1
- package/dist/hoststack-mcp.js.map +1 -1
- package/dist/index.js +25 -1
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/hoststack-mcp.js
CHANGED
|
@@ -8,7 +8,7 @@ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
|
8
8
|
import { HostStack } from "@hoststack.dev/sdk";
|
|
9
9
|
|
|
10
10
|
// src/version.ts
|
|
11
|
-
var MCP_VERSION = true ? "0.
|
|
11
|
+
var MCP_VERSION = true ? "0.24.0" : "0.0.0-dev";
|
|
12
12
|
var USER_AGENT = `hoststack-mcp/${MCP_VERSION}`;
|
|
13
13
|
|
|
14
14
|
// src/api-client.ts
|
|
@@ -4020,6 +4020,7 @@ defineTool({
|
|
|
4020
4020
|
' - type: "web_service" | "private_service" | "worker" | "cron_job" | "static_site".',
|
|
4021
4021
|
" - docker_image (optional): pre-built image ref to deploy instead of building from source.",
|
|
4022
4022
|
" - github_repo_id (optional): connect a previously-linked GitHub repo by numeric id.",
|
|
4023
|
+
" - git_repo_url (optional): a PUBLIC https git URL, for a repo that is not connected through GitHub. Private repos do not work here \u2014 they need a provider connection, because this field carries no credentials and embedding them in the URL is rejected. Mutually exclusive with github_repo_id and docker_image.",
|
|
4023
4024
|
' - branch (optional): git branch (default "main").',
|
|
4024
4025
|
" - install_command / build_command / start_command (optional): build/run shell commands. start_command is required for web/private services without a docker_image.",
|
|
4025
4026
|
" - cron_schedule (optional): cron expression \u2014 required for cron_job.",
|
|
@@ -4045,6 +4046,9 @@ defineTool({
|
|
|
4045
4046
|
"Pre-built APPLICATION image ref. Mutually exclusive with github_repo_id. Not for databases \u2014 use create_database for postgres/redis/mysql/mariadb/mongodb."
|
|
4046
4047
|
),
|
|
4047
4048
|
github_repo_id: z19.number().int().positive().optional().describe("Linked GitHub repo numeric id. Mutually exclusive with docker_image."),
|
|
4049
|
+
git_repo_url: z19.string().max(2048).optional().describe(
|
|
4050
|
+
"Public https git URL. No embedded credentials \u2014 private repos need a provider connection. Mutually exclusive with github_repo_id and docker_image."
|
|
4051
|
+
),
|
|
4048
4052
|
branch: z19.string().max(200).optional().describe('Git branch (default "main").'),
|
|
4049
4053
|
install_command: z19.string().max(1e3).optional().describe("Install shell command."),
|
|
4050
4054
|
build_command: z19.string().max(1e3).optional().describe("Build shell command."),
|
|
@@ -4076,6 +4080,7 @@ defineTool({
|
|
|
4076
4080
|
};
|
|
4077
4081
|
if (args2.docker_image !== void 0) input.dockerImage = args2.docker_image;
|
|
4078
4082
|
if (args2.github_repo_id !== void 0) input.githubRepoId = args2.github_repo_id;
|
|
4083
|
+
if (args2.git_repo_url !== void 0) input.gitRepoUrl = args2.git_repo_url;
|
|
4079
4084
|
if (args2.branch !== void 0) input.branch = args2.branch;
|
|
4080
4085
|
if (args2.install_command !== void 0) input.installCommand = args2.install_command;
|
|
4081
4086
|
if (args2.build_command !== void 0) input.buildCommand = args2.build_command;
|
|
@@ -4740,6 +4745,11 @@ defineTool({
|
|
|
4740
4745
|
" - scale_cpu_threshold, scale_memory_threshold (optional): integer 10\u2013100 \u2014 autoscale trigger percentage.",
|
|
4741
4746
|
" - scale_requests_per_sec_threshold (optional): integer 1\u201310000 \u2014 autoscale on request rate instead of (or alongside) CPU and memory. Pass null to stop scaling on request rate.",
|
|
4742
4747
|
" - build_timeout_seconds (optional): integer 60\u20131800 \u2014 how long a build may run before it is killed. Raise it for a service whose build legitimately takes longer than the default; pass null to go back to the default.",
|
|
4748
|
+
" - plan (optional): move the service to a different size tier. This is the supported way to grow past the current tier's ceiling \u2014 memory_mb and cpu_shares are CLAMPED to the tier, so raising them alone does nothing once you are at the top of it. Memory and CPU apply to the running container where possible; disk grows on the next recreate. Changing tier changes what the service costs.",
|
|
4749
|
+
" - docker_image (optional): repoint an image-backed service at a different image. Takes effect on the next deploy \u2014 this writes the reference, it does not pull. Pass null to clear it.",
|
|
4750
|
+
" - cron_schedule (optional): the schedule for a cron_job service. Pass null to clear it.",
|
|
4751
|
+
' - publish_path (optional): the directory a static_site publishes (e.g. "dist"). Pass null to clear it.',
|
|
4752
|
+
' - runtime (optional): runtime hint ("node" | "bun" | "python" | \u2026), normally auto-detected from the repo. Set it when the detection is wrong.',
|
|
4743
4753
|
` - log_filter_rules (optional): list of { pattern, action } rules applied at read time \u2014 to get_service_logs (tail AND count) and to the dashboard's live stream alike. Pattern matches the message by case-insensitive substring, literally (a % or _ is not a wildcard); action is "drop" (filter out) or "downgrade" (flip stderr \u2192 stdout so it stops looking like an error). Stored lines are never altered, so removing a rule re-exposes everything it was hiding. Pass [] to clear all rules. Capped at 50 rules.`,
|
|
4744
4754
|
"",
|
|
4745
4755
|
"Returns: { service?: Service, config?: ServiceConfig } \u2014 whichever rows were touched.",
|
|
@@ -4782,6 +4792,15 @@ defineTool({
|
|
|
4782
4792
|
scale_memory_threshold: z19.number().int().min(10).max(100).optional().describe("Autoscale memory trigger percentage (10\u2013100)."),
|
|
4783
4793
|
scale_requests_per_sec_threshold: z19.number().int().min(1).max(1e4).nullable().optional().describe("Autoscale request-rate trigger (1\u201310000 req/s). null stops using it."),
|
|
4784
4794
|
build_timeout_seconds: z19.number().int().min(60).max(1800).nullable().optional().describe("Kill a build that runs longer than this (60\u20131800s). null = default."),
|
|
4795
|
+
plan: z19.enum(SERVICE_PLANS).optional().describe(
|
|
4796
|
+
"Move to a different size tier. memory_mb and cpu_shares are clamped to the tier, so this is what raises the ceiling. Changes cost."
|
|
4797
|
+
),
|
|
4798
|
+
docker_image: z19.string().max(500).nullable().optional().describe(
|
|
4799
|
+
"Repoint an image-backed service. Applies on the next deploy. null clears it."
|
|
4800
|
+
),
|
|
4801
|
+
cron_schedule: z19.string().max(100).nullable().optional().describe("Cron expression for a cron_job service. null clears it."),
|
|
4802
|
+
publish_path: z19.string().max(500).nullable().optional().describe('Static-site output directory, e.g. "dist". null clears it.'),
|
|
4803
|
+
runtime: z19.string().max(50).optional().describe("Runtime hint (node/bun/python/\u2026). Normally auto-detected."),
|
|
4785
4804
|
log_filter_rules: z19.array(
|
|
4786
4805
|
z19.object({
|
|
4787
4806
|
pattern: z19.string().min(1).max(200),
|
|
@@ -4805,6 +4824,10 @@ defineTool({
|
|
|
4805
4824
|
if (args2.auto_deploy !== void 0) serviceUpdate["autoDeploy"] = args2.auto_deploy;
|
|
4806
4825
|
if (args2.health_check_path !== void 0)
|
|
4807
4826
|
serviceUpdate["healthCheckPath"] = args2.health_check_path;
|
|
4827
|
+
if (args2.plan !== void 0) serviceUpdate["plan"] = args2.plan;
|
|
4828
|
+
if (args2.cron_schedule !== void 0) serviceUpdate["cronSchedule"] = args2.cron_schedule;
|
|
4829
|
+
if (args2.publish_path !== void 0) serviceUpdate["publishPath"] = args2.publish_path;
|
|
4830
|
+
if (args2.runtime !== void 0) serviceUpdate["runtime"] = args2.runtime;
|
|
4808
4831
|
const configUpdate = {};
|
|
4809
4832
|
if (args2.health_check_enabled !== void 0)
|
|
4810
4833
|
configUpdate["healthCheckEnabled"] = args2.health_check_enabled;
|
|
@@ -4840,6 +4863,7 @@ defineTool({
|
|
|
4840
4863
|
configUpdate["scaleRequestsPerSecThreshold"] = args2.scale_requests_per_sec_threshold;
|
|
4841
4864
|
if (args2.build_timeout_seconds !== void 0)
|
|
4842
4865
|
configUpdate["buildTimeoutSeconds"] = args2.build_timeout_seconds;
|
|
4866
|
+
if (args2.docker_image !== void 0) configUpdate["dockerImage"] = args2.docker_image;
|
|
4843
4867
|
if (args2.log_filter_rules !== void 0) {
|
|
4844
4868
|
configUpdate["logFilterRules"] = args2.log_filter_rules;
|
|
4845
4869
|
}
|