@glie/mcp-polaris 0.10.0 → 0.12.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/index.js +28 -5
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -442,7 +442,7 @@ var TOOLS = [
|
|
|
442
442
|
},
|
|
443
443
|
{
|
|
444
444
|
name: "polaris.task.schedule",
|
|
445
|
-
description: "Schedule a mkt creative for publication:
|
|
445
|
+
description: "Schedule a mkt creative for publication: release \u2192 agendado, and the publisher takes it to `done` when its time arrives. The creative must be bound to an active social account (resolved from its market + channel) and have a publish_at in the future. Its copy is frozen while scheduled \u2014 editing it requires unscheduling first.",
|
|
446
446
|
inputSchema: objSchema({ id: intSchema() }, ["id"]),
|
|
447
447
|
call: async (args) => (await apiCall("POST", `/api/tasks/${args.id}/schedule`)).body
|
|
448
448
|
},
|
|
@@ -454,9 +454,12 @@ var TOOLS = [
|
|
|
454
454
|
},
|
|
455
455
|
{
|
|
456
456
|
name: "polaris.task.mark_published",
|
|
457
|
-
description: "The creative has gone out: `release` \u2192 `done`,
|
|
458
|
-
inputSchema: objSchema({
|
|
459
|
-
|
|
457
|
+
description: "The creative has gone out: `release` \u2192 `done`, with the link of the post. The link is what closes it \u2014 without one it waits in `release` \u2014 except a newsletter, which goes out by email and closes without a link. This is the LAST transition, not a shortcut: approve it into `release` first (cleared to go out), then mark it published once it actually has. A creative never reaches `done` through polaris.task.transition. Human-only; use it when the post went out outside the scheduler.",
|
|
458
|
+
inputSchema: objSchema({
|
|
459
|
+
id: intSchema(),
|
|
460
|
+
permalink: strSchema("The http(s) address of the published post. Optional only for a newsletter.")
|
|
461
|
+
}, ["id"]),
|
|
462
|
+
call: async (args) => (await apiCall("POST", `/api/tasks/${args.id}/mark-published`, typeof args.permalink === "string" ? { permalink: args.permalink } : {})).body
|
|
460
463
|
},
|
|
461
464
|
{
|
|
462
465
|
name: "polaris.task.dep_add",
|
|
@@ -766,10 +769,30 @@ var TOOLS = [
|
|
|
766
769
|
},
|
|
767
770
|
{
|
|
768
771
|
name: "polaris.presence.list",
|
|
769
|
-
description: "Where a product exists in the world: the channels it publishes on and the directories it is listed in, each with its state (missing \u2192 exists \u2192 connected).
|
|
772
|
+
description: "Where a product exists in the world: the channels it publishes on and the directories it is listed in, each with its state (missing \u2192 exists \u2192 connected). Where a creative may go is polaris.destination.list, which is read from these. Each row carries what the catalogue knows in `place`: read `place.actor` before planning work there \u2014 `agent` means there is a publishing tool, `human` means a person does it and records where, and `place.final_state` says how far this particular place can ever get.",
|
|
770
773
|
inputSchema: objSchema({ key: strSchema("project key") }, ["key"]),
|
|
771
774
|
call: async (args) => (await apiCall("GET", `/api/projects/${args.key}/presences`)).body
|
|
772
775
|
},
|
|
776
|
+
{
|
|
777
|
+
name: "polaris.destination.list",
|
|
778
|
+
description: "Where a creative may go: the product's destinations. A destination is a presence \u2014 a place in a market where the product is \u2014 on a place pieces are made for, and each says its market, the formats it takes and how it goes out (`by_hand` always, `polaris` when a publishing adapter and an active account make it possible). `meta.not_plannable` says why any other presence is not a destination. Plan pieces only for these.",
|
|
779
|
+
inputSchema: objSchema({ key: strSchema("project key") }, ["key"]),
|
|
780
|
+
call: async (args) => (await apiCall("GET", `/api/projects/${args.key}/destinations`)).body
|
|
781
|
+
},
|
|
782
|
+
{
|
|
783
|
+
name: "polaris.social_account.list",
|
|
784
|
+
description: "The social accounts connected to publish through: a product's (`key`), or the organization's own when `key` is left out \u2014 the company's identity, which publishes as the company and not as a product. Each account says its channel, handle, market and timezone, whether it is `schedulable` (market and timezone set), and whether its credential needs a person (`token_expired`). No credential ever comes back. Connecting is a person's job, through the provider's consent screen; read this to know where a creative can go.",
|
|
785
|
+
inputSchema: objSchema({
|
|
786
|
+
key: strSchema("project key; leave it out for the organization's own accounts")
|
|
787
|
+
}),
|
|
788
|
+
call: async (args) => (await apiCall("GET", args.key ? `/api/projects/${args.key}/social-accounts` : "/api/org-social-accounts")).body
|
|
789
|
+
},
|
|
790
|
+
{
|
|
791
|
+
name: "polaris.org_presence.list",
|
|
792
|
+
description: "Where the COMPANY exists in the world, as opposed to one of its products: the organization's own entries (Crunchbase, the GitHub organization, Apple Business) and its own social networks. Same shape as polaris.presence.list.",
|
|
793
|
+
inputSchema: objSchema({}),
|
|
794
|
+
call: async () => (await apiCall("GET", "/api/org-presences")).body
|
|
795
|
+
},
|
|
773
796
|
{
|
|
774
797
|
name: "polaris.place.list",
|
|
775
798
|
description: "The catalogue of places a product can exist in \u2014 every social network, paid surface, syndication platform, app store and software directory the studio knows about. The world's list, not ours: read it to decide WHERE a product should be. Each entry says what the place is, who acts there (`actor`: agent = there is a publishing tool; human = a person does it and records where), how far it can get (`final_state`), WHY it is worth being there (`note`), and the URL that was verified (`source`). Whether we are actually there is a PRESENCE \u2014 polaris.presence.list.",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@glie/mcp-polaris",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.12.0",
|
|
4
4
|
"description": "Model Context Protocol (stdio) server exposing Polaris, glie's ops platform, as native tools in Claude Code and any MCP client.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "glie <carlos@glie.ai>",
|