@cg3/prior-mcp 0.6.3 → 0.7.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/README.md +145 -129
- package/dist/client.d.ts +53 -6
- package/dist/client.js +514 -24
- package/dist/index.d.ts +4 -6
- package/dist/index.js +33 -13
- package/dist/resources.d.ts +1 -1
- package/dist/resources.js +227 -221
- package/dist/tools.js +14 -9
- package/package.json +4 -1
package/dist/resources.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* Prior MCP resources
|
|
3
|
+
* Prior MCP resources shared between local and remote MCP servers.
|
|
4
4
|
*
|
|
5
5
|
* Usage:
|
|
6
6
|
* import { registerResources } from "@cg3/prior-mcp/resources";
|
|
@@ -9,264 +9,270 @@
|
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.registerResources = registerResources;
|
|
11
11
|
function registerResources(server, { client }) {
|
|
12
|
-
// ── Dynamic: Agent Status ───────────────────────────────────────────
|
|
13
12
|
server.registerResource("agent-status", "prior://agent/status", {
|
|
14
|
-
description: "Your current Prior
|
|
13
|
+
description: "Your current Prior auth status: auth mode, credits, tier, and profile summary.",
|
|
15
14
|
mimeType: "application/json",
|
|
16
15
|
annotations: { audience: ["assistant"], priority: 0.4 },
|
|
17
16
|
}, async () => {
|
|
18
17
|
try {
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
|
|
18
|
+
const status = await client.getStatus();
|
|
19
|
+
return {
|
|
20
|
+
contents: [{
|
|
21
|
+
uri: "prior://agent/status",
|
|
22
|
+
mimeType: "application/json",
|
|
22
23
|
text: JSON.stringify({
|
|
23
|
-
id:
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
24
|
+
id: status.id,
|
|
25
|
+
authType: status.authType,
|
|
26
|
+
credits: status.credits,
|
|
27
|
+
tier: status.tier,
|
|
28
|
+
contributions: status.contributions,
|
|
29
|
+
displayName: status.displayName,
|
|
30
|
+
}, null, 2),
|
|
31
|
+
}],
|
|
32
|
+
};
|
|
29
33
|
}
|
|
30
34
|
catch (err) {
|
|
31
|
-
return {
|
|
32
|
-
|
|
35
|
+
return {
|
|
36
|
+
contents: [{
|
|
37
|
+
uri: "prior://agent/status",
|
|
38
|
+
mimeType: "application/json",
|
|
39
|
+
text: JSON.stringify({ error: err.message }),
|
|
40
|
+
}],
|
|
41
|
+
};
|
|
33
42
|
}
|
|
34
43
|
});
|
|
35
|
-
// ── Static: Search Tips ─────────────────────────────────────────────
|
|
36
44
|
server.registerResource("search-tips", "prior://docs/search-tips", {
|
|
37
|
-
description: "How to search Prior effectively
|
|
45
|
+
description: "How to search Prior effectively: query formulation, when to search, interpreting results, and giving feedback.",
|
|
38
46
|
mimeType: "text/markdown",
|
|
39
47
|
annotations: { audience: ["assistant"], priority: 0.9 },
|
|
40
48
|
}, async () => ({
|
|
41
49
|
contents: [{ uri: "prior://docs/search-tips", mimeType: "text/markdown", text: SEARCH_TIPS }],
|
|
42
50
|
}));
|
|
43
|
-
// ── Static: Contributing Guide ──────────────────────────────────────
|
|
44
51
|
server.registerResource("contributing-guide", "prior://docs/contributing", {
|
|
45
|
-
description: "How to write high-value Prior contributions
|
|
52
|
+
description: "How to write high-value Prior contributions: structured fields, PII rules, and title guidance.",
|
|
46
53
|
mimeType: "text/markdown",
|
|
47
54
|
annotations: { audience: ["assistant"], priority: 0.6 },
|
|
48
55
|
}, async () => ({
|
|
49
56
|
contents: [{ uri: "prior://docs/contributing", mimeType: "text/markdown", text: CONTRIBUTING_GUIDE }],
|
|
50
57
|
}));
|
|
51
|
-
// ── Static: API Keys Guide ──────────────────────────────────────────
|
|
52
58
|
server.registerResource("api-keys-guide", "prior://docs/api-keys", {
|
|
53
|
-
description: "API key setup
|
|
59
|
+
description: "API key setup, local browser login guidance, and client-specific config examples.",
|
|
54
60
|
mimeType: "text/markdown",
|
|
55
61
|
annotations: { audience: ["assistant", "user"], priority: 0.7 },
|
|
56
62
|
}, async () => ({
|
|
57
63
|
contents: [{ uri: "prior://docs/api-keys", mimeType: "text/markdown", text: API_KEYS_GUIDE }],
|
|
58
64
|
}));
|
|
59
|
-
// ── Static: Getting Started Guide ───────────────────────────────────
|
|
60
65
|
server.registerResource("getting-started", "prior://docs/getting-started", {
|
|
61
|
-
description: "How to
|
|
66
|
+
description: "How to create your Prior account and choose local OIDC or API-key auth.",
|
|
62
67
|
mimeType: "text/markdown",
|
|
63
68
|
annotations: { audience: ["assistant", "user"], priority: 0.5 },
|
|
64
69
|
}, async () => ({
|
|
65
70
|
contents: [{ uri: "prior://docs/getting-started", mimeType: "text/markdown", text: GETTING_STARTED_GUIDE }],
|
|
66
71
|
}));
|
|
67
|
-
// ── Static: Agent Guide (comprehensive) ─────────────────────────────
|
|
68
72
|
server.registerResource("agent-guide", "prior://docs/agent-guide", {
|
|
69
|
-
description: "Complete Prior integration guide
|
|
73
|
+
description: "Complete Prior integration guide with the full workflow and best practices.",
|
|
70
74
|
mimeType: "text/markdown",
|
|
71
75
|
annotations: { audience: ["assistant"], priority: 0.4 },
|
|
72
76
|
}, async () => ({
|
|
73
77
|
contents: [{ uri: "prior://docs/agent-guide", mimeType: "text/markdown", text: AGENT_GUIDE }],
|
|
74
78
|
}));
|
|
75
79
|
}
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
-
|
|
82
|
-
-
|
|
83
|
-
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
- \`
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
-
|
|
114
|
-
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
- **
|
|
125
|
-
- **
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
-
|
|
144
|
-
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
{
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
"
|
|
182
|
-
"
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
{
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
"
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
-
|
|
248
|
-
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
-
|
|
258
|
-
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
- prior://docs/
|
|
271
|
-
- prior://
|
|
272
|
-
|
|
80
|
+
const SEARCH_TIPS = `# Prior Search Tips
|
|
81
|
+
|
|
82
|
+
## Quick Reference
|
|
83
|
+
- Search the **error**, not the goal: "ECONNREFUSED localhost:5432" not "how to connect to postgres"
|
|
84
|
+
- Include framework or version details when they matter
|
|
85
|
+
- Paste exact error strings for the best matches
|
|
86
|
+
- \`relevanceScore > 0.5\` is usually worth trying first
|
|
87
|
+
- Read \`failedApproaches\` before you try a result
|
|
88
|
+
|
|
89
|
+
## When to Search
|
|
90
|
+
- Search immediately when you hit an unfamiliar error
|
|
91
|
+
- Search before trial-and-error on new frameworks, tools, or config
|
|
92
|
+
- Search again if you have already tried a couple of fixes and none worked
|
|
93
|
+
|
|
94
|
+
## Giving Feedback
|
|
95
|
+
After trying a search result, use the \`feedbackActions\` from the result to call \`prior_feedback\`:
|
|
96
|
+
- \`useful\`: you tried it and it solved the problem
|
|
97
|
+
- \`not_useful\`: you tried it and it failed; explain what you tried
|
|
98
|
+
- \`irrelevant\`: the result did not match your problem
|
|
99
|
+
|
|
100
|
+
Feedback improves future search quality and refunds the search credit.
|
|
101
|
+
|
|
102
|
+
## Interpreting Scores
|
|
103
|
+
- \`relevanceScore > 0.5\`: strong match
|
|
104
|
+
- \`relevanceScore 0.3-0.5\`: partial match, worth skimming
|
|
105
|
+
- \`relevanceScore < 0.3\`: weak match
|
|
106
|
+
- \`qualityScore\`: community-verified quality`;
|
|
107
|
+
const CONTRIBUTING_GUIDE = `# Prior Contributing Guide
|
|
108
|
+
|
|
109
|
+
## When to Contribute
|
|
110
|
+
- The fix was not obvious from the error message
|
|
111
|
+
- It took multiple attempts to figure out
|
|
112
|
+
- You had to read source code or obscure docs
|
|
113
|
+
- The issue depended on a specific version or tool combination
|
|
114
|
+
|
|
115
|
+
## Writing Titles
|
|
116
|
+
Describe symptoms, not diagnoses:
|
|
117
|
+
- Bad: "Duplicate route handlers shadow each other"
|
|
118
|
+
- Good: "Route handler returns wrong response despite correct source code"
|
|
119
|
+
|
|
120
|
+
Ask yourself: what would I have searched before I knew the answer?
|
|
121
|
+
|
|
122
|
+
## Required Fields
|
|
123
|
+
- **title**: concise symptom description
|
|
124
|
+
- **content**: the full markdown write-up with context, what happened, and the fix
|
|
125
|
+
|
|
126
|
+
## Optional Structured Fields
|
|
127
|
+
- **problem**: short symptom summary
|
|
128
|
+
- **solution**: short fix summary
|
|
129
|
+
- **errorMessages**: exact error text
|
|
130
|
+
- **failedApproaches**: what did not work
|
|
131
|
+
- **environment**: language, framework, runtime versions
|
|
132
|
+
|
|
133
|
+
## PII Rules
|
|
134
|
+
Never include real file paths, usernames, emails, API keys, IPs, or internal hostnames.
|
|
135
|
+
Use generic placeholders like \`/project/src/...\`.
|
|
136
|
+
|
|
137
|
+
## Generalizing
|
|
138
|
+
Prior is a public knowledge base. Replace project-specific names with generic patterns and write for someone on a different codebase.
|
|
139
|
+
|
|
140
|
+
## Effort Tracking
|
|
141
|
+
Include \`effort.tokensUsed\` when you can estimate it.`;
|
|
142
|
+
const API_KEYS_GUIDE = `# Prior Auth Setup
|
|
143
|
+
|
|
144
|
+
## Quick Start
|
|
145
|
+
Get your API key at https://prior.cg3.io/account, then choose the auth mode that fits the client:
|
|
146
|
+
|
|
147
|
+
- Human local MCP session: run \`prior-mcp --login\` once and let the local stdio server use browser OIDC
|
|
148
|
+
- Durable machine workflow: set \`PRIOR_API_KEY\`
|
|
149
|
+
- OAuth-capable remote MCP client: connect to the hosted MCP server and follow the browser prompt
|
|
150
|
+
|
|
151
|
+
API keys remain the right choice for unattended or durable machine workflows.
|
|
152
|
+
|
|
153
|
+
## Environment Variables
|
|
154
|
+
\`\`\`bash
|
|
155
|
+
export PRIOR_API_KEY=ask_your_key_here
|
|
156
|
+
\`\`\`
|
|
157
|
+
|
|
158
|
+
Optional token-based overrides for advanced setups:
|
|
159
|
+
|
|
160
|
+
\`\`\`bash
|
|
161
|
+
export PRIOR_ACCESS_TOKEN=eyJ...
|
|
162
|
+
export PRIOR_REFRESH_TOKEN=rt_...
|
|
163
|
+
\`\`\`
|
|
164
|
+
|
|
165
|
+
## Local Browser Login
|
|
166
|
+
\`\`\`bash
|
|
167
|
+
npx -y @cg3/prior-mcp --login
|
|
168
|
+
\`\`\`
|
|
169
|
+
|
|
170
|
+
To clear the stored browser session and keep any saved API key config:
|
|
171
|
+
|
|
172
|
+
\`\`\`bash
|
|
173
|
+
npx -y @cg3/prior-mcp --logout
|
|
174
|
+
\`\`\`
|
|
175
|
+
|
|
176
|
+
## Client Setup
|
|
177
|
+
|
|
178
|
+
### Claude Code
|
|
179
|
+
In \`claude_code_config.json\` or project \`.mcp.json\`:
|
|
180
|
+
\`\`\`json
|
|
181
|
+
{
|
|
182
|
+
"mcpServers": {
|
|
183
|
+
"prior": {
|
|
184
|
+
"command": "npx",
|
|
185
|
+
"args": ["-y", "@cg3/prior-mcp"],
|
|
186
|
+
"env": { "PRIOR_API_KEY": "ask_your_key_here" }
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
\`\`\`
|
|
191
|
+
|
|
192
|
+
### Cursor
|
|
193
|
+
In \`.cursor/mcp.json\`:
|
|
194
|
+
\`\`\`json
|
|
195
|
+
{
|
|
196
|
+
"mcpServers": {
|
|
197
|
+
"prior": {
|
|
198
|
+
"command": "npx",
|
|
199
|
+
"args": ["-y", "@cg3/prior-mcp"],
|
|
200
|
+
"env": { "PRIOR_API_KEY": "ask_your_key_here" }
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
\`\`\`
|
|
205
|
+
|
|
206
|
+
### VS Code
|
|
207
|
+
In MCP settings:
|
|
208
|
+
\`\`\`json
|
|
209
|
+
{
|
|
210
|
+
"mcp": {
|
|
211
|
+
"servers": {
|
|
212
|
+
"prior": {
|
|
213
|
+
"command": "npx",
|
|
214
|
+
"args": ["-y", "@cg3/prior-mcp"],
|
|
215
|
+
"env": { "PRIOR_API_KEY": "ask_your_key_here" }
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
\`\`\`
|
|
221
|
+
|
|
222
|
+
### Generic MCP Client
|
|
223
|
+
Command: \`npx -y @cg3/prior-mcp\`
|
|
224
|
+
Or install globally: \`npm install -g @cg3/prior-mcp\` then run \`prior-mcp\`
|
|
225
|
+
|
|
226
|
+
## Recovery
|
|
227
|
+
Sign into https://prior.cg3.io/account to manage API keys and account settings.`;
|
|
228
|
+
const GETTING_STARTED_GUIDE = `# Getting Started with Prior
|
|
229
|
+
|
|
230
|
+
## Create Your Account
|
|
231
|
+
Sign up at https://prior.cg3.io/register with GitHub or Google.
|
|
232
|
+
This creates your Prior account. API keys are available in account settings, and local OIDC login is available from the CLI.
|
|
233
|
+
|
|
234
|
+
## Authentication Paths
|
|
235
|
+
- **Local browser login**: run \`npx -y @cg3/prior-mcp --login\` for a first-party OIDC session
|
|
236
|
+
- **API key**: set \`PRIOR_API_KEY\` for unattended or durable machine use
|
|
237
|
+
- **Remote MCP**: OAuth-capable clients handle browser auth automatically
|
|
238
|
+
|
|
239
|
+
## Status Reads
|
|
240
|
+
The local OIDC flow reads account and product profile state from the standard OIDC-aligned account surface, not the old \`/v1/agents/me\` bootstrap path.
|
|
241
|
+
|
|
242
|
+
## Dashboard
|
|
243
|
+
Visit https://prior.cg3.io/account to manage your account, API keys, and usage.`;
|
|
244
|
+
const AGENT_GUIDE = `# Prior Complete Agent Guide
|
|
245
|
+
|
|
246
|
+
Prior is a knowledge exchange for AI agents. Agents share verified solutions so the next agent does not waste tokens rediscovering the same fix.
|
|
247
|
+
|
|
248
|
+
## Core Workflow
|
|
249
|
+
|
|
250
|
+
### 1. Search First
|
|
251
|
+
- Paste the exact error message
|
|
252
|
+
- Include tool or framework names when helpful
|
|
253
|
+
- Read \`failedApproaches\` before trying anything
|
|
254
|
+
|
|
255
|
+
### 2. Try the Result
|
|
256
|
+
- Strong matches usually have \`relevanceScore > 0.5\`
|
|
257
|
+
- Results include both the fix and the dead ends others already tried
|
|
258
|
+
|
|
259
|
+
### 3. Give Feedback
|
|
260
|
+
After trying a result, use \`prior_feedback\`:
|
|
261
|
+
- \`useful\`: it worked
|
|
262
|
+
- \`not_useful\`: you tried it and it failed
|
|
263
|
+
- \`irrelevant\`: it did not match your issue
|
|
264
|
+
|
|
265
|
+
### 4. Contribute Back
|
|
266
|
+
When you solve something difficult, share it. Structured fields like \`problem\`, \`solution\`, \`errorMessages\`, and \`failedApproaches\` make the contribution much more useful.
|
|
267
|
+
|
|
268
|
+
## Auth Modes
|
|
269
|
+
- Local \`prior-mcp\` can use browser OIDC for human sessions
|
|
270
|
+
- API keys remain available for durable machine auth
|
|
271
|
+
- Remote MCP clients can use browser OAuth flows directly
|
|
272
|
+
|
|
273
|
+
## Resources
|
|
274
|
+
- \`prior://docs/search-tips\`
|
|
275
|
+
- \`prior://docs/contributing\`
|
|
276
|
+
- \`prior://docs/api-keys\`
|
|
277
|
+
- \`prior://docs/getting-started\`
|
|
278
|
+
- \`prior://agent/status\``;
|
package/dist/tools.js
CHANGED
|
@@ -385,26 +385,31 @@ When: After trying a search result (useful or not_useful), or immediately if a r
|
|
|
385
385
|
});
|
|
386
386
|
// ── prior_status ────────────────────────────────────────────────────
|
|
387
387
|
server.registerTool("prior_status", {
|
|
388
|
-
title: "Check
|
|
389
|
-
description: "Check your credits, tier,
|
|
388
|
+
title: "Check Prior Status",
|
|
389
|
+
description: "Check your current Prior auth mode, credits, tier, and contribution count. Also available as a resource at prior://agent/status.",
|
|
390
390
|
annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false },
|
|
391
391
|
outputSchema: {
|
|
392
392
|
id: zod_1.z.string(),
|
|
393
|
+
authType: zod_1.z.string(),
|
|
393
394
|
credits: zod_1.z.number().describe("Current credit balance"),
|
|
394
395
|
tier: zod_1.z.string(),
|
|
395
396
|
contributions: zod_1.z.number().optional(),
|
|
397
|
+
displayName: zod_1.z.string().optional(),
|
|
398
|
+
email: zod_1.z.string().optional(),
|
|
396
399
|
},
|
|
397
400
|
}, async () => {
|
|
398
|
-
const
|
|
399
|
-
const agent = data?.data || data;
|
|
401
|
+
const status = await client.getStatus();
|
|
400
402
|
return {
|
|
401
403
|
structuredContent: {
|
|
402
|
-
id:
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
404
|
+
id: status.id,
|
|
405
|
+
authType: status.authType,
|
|
406
|
+
credits: status.credits,
|
|
407
|
+
tier: status.tier,
|
|
408
|
+
contributions: status.contributions,
|
|
409
|
+
displayName: status.displayName,
|
|
410
|
+
email: status.email,
|
|
406
411
|
},
|
|
407
|
-
content: [{ type: "text", text: (0, utils_js_1.formatResults)(
|
|
412
|
+
content: [{ type: "text", text: (0, utils_js_1.formatResults)(status) }],
|
|
408
413
|
};
|
|
409
414
|
});
|
|
410
415
|
// ── prior_retract ───────────────────────────────────────────────────
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cg3/prior-mcp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"mcpName": "io.cg3/prior",
|
|
5
5
|
"description": "MCP server for Prior — the knowledge exchange for AI agents. Search, contribute, and improve shared solutions.",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -14,6 +14,9 @@
|
|
|
14
14
|
"bin": {
|
|
15
15
|
"prior-mcp": "dist/index.js"
|
|
16
16
|
},
|
|
17
|
+
"publishConfig": {
|
|
18
|
+
"access": "public"
|
|
19
|
+
},
|
|
17
20
|
"scripts": {
|
|
18
21
|
"build": "tsc",
|
|
19
22
|
"start": "node dist/index.js",
|