@kryptosai/mcp-observatory 0.26.1 → 0.27.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/COMMERCIAL.md +7 -8
- package/PRIVACY.md +5 -5
- package/README.md +37 -23
- package/TERMS.md +1 -1
- package/dist/src/checks/schema-quality.js +1 -0
- package/dist/src/checks/schema-quality.js.map +1 -1
- package/dist/src/commands/helpers.d.ts +3 -1
- package/dist/src/commands/helpers.js +2 -2
- package/dist/src/commands/helpers.js.map +1 -1
- package/dist/src/commands/init-ci.d.ts +2 -0
- package/dist/src/commands/init-ci.js +50 -9
- package/dist/src/commands/init-ci.js.map +1 -1
- package/dist/src/commands/legacy.js +18 -2
- package/dist/src/commands/legacy.js.map +1 -1
- package/dist/src/commands/scan.js +30 -9
- package/dist/src/commands/scan.js.map +1 -1
- package/dist/src/commands/setup-ci-conversion.d.ts +25 -0
- package/dist/src/commands/setup-ci-conversion.js +119 -0
- package/dist/src/commands/setup-ci-conversion.js.map +1 -0
- package/dist/src/commands/test.js +50 -3
- package/dist/src/commands/test.js.map +1 -1
- package/dist/src/findings.d.ts +20 -0
- package/dist/src/findings.js +232 -0
- package/dist/src/findings.js.map +1 -0
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/reporters/sarif.d.ts +4 -1
- package/dist/src/reporters/sarif.js +58 -37
- package/dist/src/reporters/sarif.js.map +1 -1
- package/dist/src/storage.d.ts +1 -0
- package/dist/src/storage.js +25 -0
- package/dist/src/storage.js.map +1 -1
- package/dist/src/telemetry.d.ts +3 -0
- package/dist/src/telemetry.js.map +1 -1
- package/docs/agent-runtime-quickstart.md +98 -0
- package/docs/code-scanning-launch-outreach.md +55 -0
- package/docs/feishu-lark-mcp.md +3 -3
- package/docs/github-code-scanning-for-mcp.md +94 -0
- package/docs/metrics-dashboard.md +2 -2
- package/docs/openclaw-agent-template/SOUL.md +156 -0
- package/docs/proof.md +2 -2
- package/docs/target-contribution-guide.md +139 -0
- package/docs/target-registry.md +116 -0
- package/package.json +33 -8
- package/docs/certification-campaign-template.md +0 -181
- package/docs/certification-distribution.md +0 -145
- package/docs/certification-pr-campaign.md +0 -68
- package/docs/clone-to-ci-campaign.md +0 -62
- package/docs/directory-listing-copy.md +0 -85
- package/docs/distribution-launch.md +0 -76
- package/docs/ecosystem-distribution-kit.md +0 -79
- package/docs/enterprise-outreach-playbook.md +0 -83
- package/docs/paid-pilot-offer.md +0 -74
- package/docs/project-case-study.md +0 -140
- package/docs/public-post-drafts.md +0 -98
- package/docs/publish-readiness.md +0 -79
|
@@ -1,181 +0,0 @@
|
|
|
1
|
-
# MCP Observatory Certification Campaign
|
|
2
|
-
|
|
3
|
-
Use this tracker for outbound PR waves against MCP server repositories.
|
|
4
|
-
|
|
5
|
-
## Campaign Goal
|
|
6
|
-
|
|
7
|
-
Open helpful PRs that add MCP Observatory CI checks and a public compatibility/security badge to popular MCP server projects.
|
|
8
|
-
|
|
9
|
-
One-shot campaign target:
|
|
10
|
-
|
|
11
|
-
- 50 researched repos
|
|
12
|
-
- 25 PRs opened
|
|
13
|
-
- 10 accepted checks or badges
|
|
14
|
-
- 5 public proof points added to launch materials
|
|
15
|
-
- 3 production/security pilot conversations started
|
|
16
|
-
|
|
17
|
-
## Qualification Rules
|
|
18
|
-
|
|
19
|
-
Prioritize:
|
|
20
|
-
|
|
21
|
-
- active MCP server repos
|
|
22
|
-
- clear install/run command
|
|
23
|
-
- recent commit or release in the last 90 days
|
|
24
|
-
- 100+ stars, meaningful npm downloads, directory popularity, or enterprise category
|
|
25
|
-
- developer tools, security, CI/CD, database, browser automation, SaaS, cloud, or finance servers
|
|
26
|
-
|
|
27
|
-
Skip:
|
|
28
|
-
|
|
29
|
-
- servers that require private credentials to start
|
|
30
|
-
- repos with destructive default tools
|
|
31
|
-
- abandoned repos unless they have major download volume
|
|
32
|
-
- projects that already have equivalent MCP compatibility/security CI
|
|
33
|
-
|
|
34
|
-
## Tracker
|
|
35
|
-
|
|
36
|
-
| Priority | Repo | Package/Command | Category | Stars/Downloads/Listing Signal | Activity Signal | Risk Notes | Status | PR URL | Accepted/Badge/Proof |
|
|
37
|
-
| ---: | --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
|
38
|
-
| 1 | `modelcontextprotocol/servers` | `npx -y @modelcontextprotocol/server-sequential-thinking@latest` | Reference | Official/reference signal | GitHub check passing on PR; local validation passed: 1 tool | Fork PR token is read-only, so workflow disables PR comment/status writes | pr-opened | https://github.com/modelcontextprotocol/servers/pull/4392 | Waiting for maintainer review |
|
|
39
|
-
| 2 | `modelcontextprotocol/servers` | `npx -y @modelcontextprotocol/server-filesystem .` | Filesystem | Official/reference signal | verify package location | Needs harmless temp directory target | researched | | |
|
|
40
|
-
| 3 | `upstash/context7` | `npx -y @upstash/context7-mcp@latest` | Developer Tools | 57k+ stars / major MCP docs server | Local validation passed: 2 tools | `@latest` required for npx bin resolution | pr-opened | https://github.com/upstash/context7/pull/2800 | Waiting for maintainer review |
|
|
41
|
-
| 4 | `executeautomation/mcp-playwright` | `npx -y @executeautomation/playwright-mcp-server@latest` | Browser Automation | 5k+ stars / high-interest browser MCP category | Local validation passed: 33 tools, 1 resource | Requires Chromium install; suppressed intentional `playwright_evaluate:shell-injection` finding | pr-opened | https://github.com/executeautomation/mcp-playwright/pull/225 | Waiting for maintainer review |
|
|
42
|
-
| 5 | `browserbase/mcp-server-browserbase` | `npx -y @browserbasehq/mcp-server-browserbase` | Browser Automation | Hosted browser MCP category | verify auth-free startup | May require API key; issue-only if startup requires credentials | researched | | |
|
|
43
|
-
| 6 | `smithery-ai/server-sequential-thinking` | `npx -y @smithery-ai/server-sequential-thinking` | Developer Tools | MCP directory ecosystem | verify package/repo naming | Good low-risk simple server if public package starts cleanly | researched | | |
|
|
44
|
-
| 7 | `kazuph/mcp-taskmanager` | `npx -y @kazuph/mcp-taskmanager@latest` | Developer Tools | 200+ stars / task/project MCP category | Local validation passed: 10 tools | Scoped package name corrected from tracker | pr-opened | https://github.com/kazuph/mcp-taskmanager/pull/11 | Waiting for maintainer review |
|
|
45
|
-
| 8 | `cyanheads/filesystem-mcp-server` | `node dist/index.js` | Filesystem | Filesystem MCP category | Local validation passed after fix: 10 tools | Fixed real conformance bug: advertised resources without `resources/list`; workflow uses temp sandbox | closed-unmerged | https://github.com/cyanheads/filesystem-mcp-server/pull/19 | Closed by maintainer without merge |
|
|
46
|
-
| 9 | `redis/mcp-redis` | `uvx mcp-redis` | Database | Enterprise database category | verify auth-free startup | Database target may require service; issue-only if credentials needed | researched | | |
|
|
47
|
-
| 10 | `mongodb-js/mongodb-mcp-server` | `npx -y mongodb-mcp-server` | Database | Enterprise database category | verify auth-free startup | Likely needs connection string; issue-only first | researched | | |
|
|
48
|
-
| 11 | `supabase-community/supabase-mcp` | `npx -y supabase-mcp` | Database | Enterprise/SaaS category | verify current package | Likely requires token; issue-only first | researched | | |
|
|
49
|
-
| 12 | `cloudflare/mcp-server-cloudflare` | `npx -y @cloudflare/mcp-server-cloudflare` | Cloud | Enterprise cloud category | verify package | Likely requires auth; issue-only first | researched | | |
|
|
50
|
-
| 13 | `stripe/agent-toolkit` | `npx -y @stripe/agent-toolkit` | Payments | Enterprise payments category | verify MCP mode | Likely requires API key; issue-only first | researched | | |
|
|
51
|
-
| 14 | `github/github-mcp-server` | `docker run ghcr.io/github/github-mcp-server` | Developer Tools | Major platform category | verify image/startup | Auth required for useful checks; issue-only first | researched | | |
|
|
52
|
-
| 15 | `microsoft/playwright-mcp` | `npx -y @playwright/mcp@latest` | Browser Automation | 34k+ stars / major platform category | Local validation passed: 23 tools | Uses `skipInvoke` and explicit suppressions for intentional browser-code tools | pr-opened | https://github.com/microsoft/playwright-mcp/pull/1657 | Waiting for maintainer review |
|
|
53
|
-
| 16 | `jetbrains/mcpProxy` | `npx -y @jetbrains/mcp-proxy` | Developer Tools | IDE platform category | verify package | May depend on IDE process; issue-only first | researched | | |
|
|
54
|
-
| 17 | `BrowserMCP/mcp` | `npx -y @browsermcp/mcp` | Browser Automation | 6k+ stars / browser-control MCP category | Local validation passed: 12 tools | Browser automation trust boundary; workflow is inventory/security only | pr-opened | https://github.com/BrowserMCP/mcp/pull/189 | Waiting for maintainer review |
|
|
55
|
-
| 18 | `UI5/mcp-server` | `npx -y @ui5/mcp-server` | Developer Tools | SAP/UI5 ecosystem MCP package | Local validation passed: 10 tools | Developer tooling surface; no credentials required for inventory | pr-opened | https://github.com/UI5/mcp-server/pull/348 | Waiting for maintainer review |
|
|
56
|
-
| 19 | `apify/actors-mcp-server` | `npx -y @apify/actors-mcp-server` | SaaS/API | Automation platform category | verify auth-free startup | Likely requires token; issue-only first | researched | | |
|
|
57
|
-
| 20 | `makenotion/notion-mcp-server` | `npx -y @notionhq/notion-mcp-server` | SaaS/API | Major SaaS category | Local validation passed: 24 tools | Workspace-data MCP; PR is compatibility/schema/security inventory only | pr-opened | https://github.com/makenotion/notion-mcp-server/pull/324 | Waiting for maintainer review; external Semgrep check failing |
|
|
58
|
-
| 21 | `linear/linear-mcp` | `npx -y @linear/mcp-server` | SaaS/API | Developer SaaS category | verify package | Likely requires token; issue-only first | researched | | |
|
|
59
|
-
| 22 | `sentry/sentry-mcp` | `npx -y @sentry/mcp-server` | Observability | Developer SaaS category | verify package | Likely requires token; issue-only first | researched | | |
|
|
60
|
-
| 23 | `elastic/mcp-server-elasticsearch` | `npx -y @elastic/mcp-server-elasticsearch` | Search | Enterprise search category | verify package | Likely requires service; issue-only first | researched | | |
|
|
61
|
-
| 24 | `qdrant/mcp-server-qdrant` | `uvx mcp-server-qdrant` | Vector Database | AI infra category | verify package | May require service URL; issue-only first | researched | | |
|
|
62
|
-
| 25 | `weaviate/mcp-server-weaviate` | `uvx mcp-server-weaviate` | Vector Database | AI infra category | verify package | May require service URL; issue-only first | researched | | |
|
|
63
|
-
| 26 | `antvis/mcp-server-chart` | `npx -y @antv/mcp-server-chart` | Visualization/Data | 4k+ stars / chart-generation MCP category | Local validation passed: 27 tools | Generated chart artifacts; no credentials required for inventory | pr-opened | https://github.com/antvis/mcp-server-chart/pull/312 | Waiting for maintainer review |
|
|
64
|
-
| 27 | `owner/repo` | `uvx package` | API | | | | researched | | |
|
|
65
|
-
| 28 | `owner/repo` | `npx -y package` | Database | | | | researched | | |
|
|
66
|
-
| 29 | `owner/repo` | `npx -y package` | Search | | | | researched | | |
|
|
67
|
-
| 30 | `owner/repo` | `docker run image` | Cloud | | | | researched | | |
|
|
68
|
-
| 31 | `owner/repo` | `npx -y package` | Developer Tools | | | | researched | | |
|
|
69
|
-
| 32 | `owner/repo` | `uvx package` | Security | | | | researched | | |
|
|
70
|
-
| 33 | `owner/repo` | `npx -y package` | SaaS | | | | researched | | |
|
|
71
|
-
| 34 | `owner/repo` | `npx -y package` | Data | | | | researched | | |
|
|
72
|
-
| 35 | `owner/repo` | `docker run image` | Infrastructure | | | | researched | | |
|
|
73
|
-
| 36 | `owner/repo` | `npx -y package` | Finance | | | | researched | | |
|
|
74
|
-
| 37 | `owner/repo` | `uvx package` | Browser Automation | | | | researched | | |
|
|
75
|
-
| 38 | `owner/repo` | `npx -y package` | API | | | | researched | | |
|
|
76
|
-
| 39 | `owner/repo` | `npx -y package` | Database | | | | researched | | |
|
|
77
|
-
| 40 | `owner/repo` | `docker run image` | Security | | | | researched | | |
|
|
78
|
-
| 41 | `owner/repo` | `npx -y package` | Developer Tools | | | | researched | | |
|
|
79
|
-
| 42 | `owner/repo` | `uvx package` | Data | | | | researched | | |
|
|
80
|
-
| 43 | `owner/repo` | `npx -y package` | Search | | | | researched | | |
|
|
81
|
-
| 44 | `owner/repo` | `npx -y package` | SaaS | | | | researched | | |
|
|
82
|
-
| 45 | `owner/repo` | `docker run image` | Cloud | | | | researched | | |
|
|
83
|
-
| 46 | `owner/repo` | `npx -y package` | Filesystem | | | | researched | | |
|
|
84
|
-
| 47 | `owner/repo` | `uvx package` | Security | | | | researched | | |
|
|
85
|
-
| 48 | `owner/repo` | `npx -y package` | Developer Tools | | | | researched | | |
|
|
86
|
-
| 49 | `owner/repo` | `npx -y package` | Infrastructure | | | | researched | | |
|
|
87
|
-
| 50 | `owner/repo` | `docker run image` | Browser Automation | | | | researched | | |
|
|
88
|
-
|
|
89
|
-
Statuses:
|
|
90
|
-
|
|
91
|
-
- `researched`
|
|
92
|
-
- `branch-ready`
|
|
93
|
-
- `pr-opened`
|
|
94
|
-
- `accepted`
|
|
95
|
-
- `declined`
|
|
96
|
-
- `needs-maintainer-input`
|
|
97
|
-
- `proof-captured`
|
|
98
|
-
- `pilot-lead`
|
|
99
|
-
|
|
100
|
-
## PR Checklist
|
|
101
|
-
|
|
102
|
-
- Generate the local kit first:
|
|
103
|
-
`npx @kryptosai/mcp-observatory setup-ci --all --command "<safe startup command>"`
|
|
104
|
-
- Add `.github/workflows/mcp-observatory.yml`
|
|
105
|
-
- Add `mcp-observatory.target.json` when the startup command needs args, cwd, or env placeholders
|
|
106
|
-
- Use `deep: true` and `security: true`
|
|
107
|
-
- Keep `fail-on-regression: true` unless the repo is noisy
|
|
108
|
-
- Add README badge only when it fits the repo style
|
|
109
|
-
- Include the generated maintainer PR body from `docs/mcp-observatory-pr-body.md`
|
|
110
|
-
- Do not include raw telemetry, private evidence, or sales pricing
|
|
111
|
-
- Prefer issue-only fallback when the server requires credentials, paid services, destructive tools, or unclear startup
|
|
112
|
-
|
|
113
|
-
## PR Templates
|
|
114
|
-
|
|
115
|
-
### Workflow-Only PR
|
|
116
|
-
|
|
117
|
-
```md
|
|
118
|
-
This adds a lightweight MCP Observatory check for this MCP server.
|
|
119
|
-
|
|
120
|
-
Why it helps:
|
|
121
|
-
|
|
122
|
-
- verifies MCP tools/prompts/resources still respond correctly
|
|
123
|
-
- catches schema drift and common security footguns before release
|
|
124
|
-
- posts a readable PR report for maintainers
|
|
125
|
-
- gives users a compatibility signal when evaluating MCP servers
|
|
126
|
-
|
|
127
|
-
It runs in GitHub Actions and does not require an account. If the check is too strict for this repo, `fail-on-regression: false` can be used while keeping the report visible.
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
### Workflow + Badge PR
|
|
131
|
-
|
|
132
|
-
```md
|
|
133
|
-
This adds MCP Observatory CI plus a small README badge so users can see this server is checked for MCP compatibility, schema drift, and common security issues.
|
|
134
|
-
|
|
135
|
-
The workflow runs on PRs and pushes to `main`. The badge links back to MCP Observatory for context and can be removed if it does not fit the repo style.
|
|
136
|
-
```
|
|
137
|
-
|
|
138
|
-
### Issue-Only Fallback
|
|
139
|
-
|
|
140
|
-
~~~md
|
|
141
|
-
I tried preparing a small MCP Observatory CI check for this server, but did not want to open a PR without confirming the safest startup command.
|
|
142
|
-
|
|
143
|
-
Would you accept a workflow that runs:
|
|
144
|
-
|
|
145
|
-
```bash
|
|
146
|
-
npx @kryptosai/mcp-observatory test <server command> --security --deep
|
|
147
|
-
```
|
|
148
|
-
|
|
149
|
-
The goal is to give users a visible compatibility/security signal and catch schema drift before releases.
|
|
150
|
-
~~~
|
|
151
|
-
|
|
152
|
-
## Generated PR Body Printer
|
|
153
|
-
|
|
154
|
-
After running `setup-ci --all`, print the generated maintainer copy with:
|
|
155
|
-
|
|
156
|
-
```bash
|
|
157
|
-
npm run certification:pr-body -- docs/mcp-observatory-pr-body.md
|
|
158
|
-
```
|
|
159
|
-
|
|
160
|
-
For a repo-specific body, run the command from the target branch after generating the local adoption kit.
|
|
161
|
-
|
|
162
|
-
## Proof Capture
|
|
163
|
-
|
|
164
|
-
For accepted PRs, record:
|
|
165
|
-
|
|
166
|
-
- repo
|
|
167
|
-
- PR URL
|
|
168
|
-
- category
|
|
169
|
-
- accepted date
|
|
170
|
-
- badge added: yes/no
|
|
171
|
-
- CI status
|
|
172
|
-
- quote or maintainer reaction if public
|
|
173
|
-
- whether the repo appears in Glama, PulseMCP, Smithery, or awesome-MCP lists
|
|
174
|
-
|
|
175
|
-
Use accepted PRs as proof for:
|
|
176
|
-
|
|
177
|
-
- README traction section
|
|
178
|
-
- launch posts
|
|
179
|
-
- enterprise outreach
|
|
180
|
-
- directory listing copy
|
|
181
|
-
- weekly MCP safety report
|
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
# Certification Distribution Loop
|
|
2
|
-
|
|
3
|
-
Use this when opening helpful PRs to MCP server projects. The motion is simple: run MCP Observatory, give the maintainer a useful security/compatibility check, and leave them with a badge/report they can keep.
|
|
4
|
-
|
|
5
|
-
## Offer
|
|
6
|
-
|
|
7
|
-
MCP Observatory gives MCP server maintainers:
|
|
8
|
-
|
|
9
|
-
- CI coverage for tools, prompts, resources, schema quality, and security checks
|
|
10
|
-
- A PR comment report on every change
|
|
11
|
-
- A README badge they can show publicly
|
|
12
|
-
- A local-first OSS path with no account required
|
|
13
|
-
- A paid production path only if they need hosted history, private repo reporting, support, certification, or fleet visibility
|
|
14
|
-
|
|
15
|
-
## Copy-Paste Badge
|
|
16
|
-
|
|
17
|
-
For repos that add the GitHub Action, suggest this README badge:
|
|
18
|
-
|
|
19
|
-
```md
|
|
20
|
-
[](https://github.com/KryptosAI/mcp-observatory)
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
For repos that generate a score badge, suggest:
|
|
24
|
-
|
|
25
|
-
```bash
|
|
26
|
-
npx @kryptosai/mcp-observatory badge npx -y <server-package> --output docs/mcp-health.svg
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
```md
|
|
30
|
-
[](https://github.com/KryptosAI/mcp-observatory)
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
## GitHub Action Template
|
|
34
|
-
|
|
35
|
-
Fast path:
|
|
36
|
-
|
|
37
|
-
```bash
|
|
38
|
-
npx @kryptosai/mcp-observatory setup-ci --all --command "npx -y <server-package>"
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
That creates:
|
|
42
|
-
|
|
43
|
-
- `.github/workflows/mcp-observatory.yml`
|
|
44
|
-
- `docs/mcp-observatory-badge.md`
|
|
45
|
-
- `mcp-observatory.target.json`
|
|
46
|
-
- `docs/mcp-observatory-pr-body.md`
|
|
47
|
-
- `docs/mcp-observatory-issue.md`
|
|
48
|
-
- `docs/mcp-observatory-score-badge.md`
|
|
49
|
-
|
|
50
|
-
Manual template:
|
|
51
|
-
|
|
52
|
-
```yaml
|
|
53
|
-
name: MCP Observatory
|
|
54
|
-
|
|
55
|
-
on:
|
|
56
|
-
pull_request:
|
|
57
|
-
push:
|
|
58
|
-
branches: [main]
|
|
59
|
-
|
|
60
|
-
permissions:
|
|
61
|
-
contents: read
|
|
62
|
-
pull-requests: write
|
|
63
|
-
statuses: write
|
|
64
|
-
|
|
65
|
-
jobs:
|
|
66
|
-
mcp-observatory:
|
|
67
|
-
runs-on: ubuntu-latest
|
|
68
|
-
steps:
|
|
69
|
-
- uses: actions/checkout@v6
|
|
70
|
-
- uses: KryptosAI/mcp-observatory/action@main
|
|
71
|
-
with:
|
|
72
|
-
command: npx -y <server-package>
|
|
73
|
-
deep: true
|
|
74
|
-
security: true
|
|
75
|
-
comment-on-pr: true
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
For production CI, pin the package version:
|
|
79
|
-
|
|
80
|
-
```yaml
|
|
81
|
-
- uses: KryptosAI/mcp-observatory/action@main
|
|
82
|
-
with:
|
|
83
|
-
command: npx -y <server-package>
|
|
84
|
-
package-version: 0.26.1
|
|
85
|
-
deep: true
|
|
86
|
-
security: true
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
For repos with a local target config:
|
|
90
|
-
|
|
91
|
-
```yaml
|
|
92
|
-
- uses: KryptosAI/mcp-observatory/action@main
|
|
93
|
-
with:
|
|
94
|
-
target: ./observatory-target.json
|
|
95
|
-
deep: true
|
|
96
|
-
security: true
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
## Maintainer PR Body
|
|
100
|
-
|
|
101
|
-
```md
|
|
102
|
-
This adds a lightweight MCP Observatory check for this server.
|
|
103
|
-
|
|
104
|
-
Why it helps:
|
|
105
|
-
|
|
106
|
-
- verifies MCP tools/prompts/resources still respond correctly
|
|
107
|
-
- catches schema drift and common security footguns before release
|
|
108
|
-
- posts a readable PR report for maintainers
|
|
109
|
-
- creates a public compatibility signal for users evaluating MCP servers
|
|
110
|
-
|
|
111
|
-
It runs locally/inside GitHub Actions and does not require an account. If the check is too strict for this repo, `fail-on-regression: false` can be used while keeping the PR report visible.
|
|
112
|
-
```
|
|
113
|
-
|
|
114
|
-
## Comment For Passing Repos
|
|
115
|
-
|
|
116
|
-
```md
|
|
117
|
-
Nice, this server passes MCP Observatory checks. If you want the signal in the README, you can add:
|
|
118
|
-
|
|
119
|
-
```md
|
|
120
|
-
[](https://github.com/KryptosAI/mcp-observatory)
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
That gives users a quick compatibility/security signal when they are choosing MCP servers.
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
## Targeting Order
|
|
127
|
-
|
|
128
|
-
Prioritize repos with:
|
|
129
|
-
|
|
130
|
-
- 100+ GitHub stars or visible npm downloads
|
|
131
|
-
- active releases in the last 90 days
|
|
132
|
-
- MCP servers used by developer tools, security, CI/CD, databases, browser automation, or enterprise SaaS
|
|
133
|
-
- no existing MCP compatibility/security CI
|
|
134
|
-
- clear package command that can run in GitHub Actions
|
|
135
|
-
|
|
136
|
-
Avoid drive-by PRs where the server requires private credentials, paid services, or destructive default actions.
|
|
137
|
-
|
|
138
|
-
## Directory Follow-Through
|
|
139
|
-
|
|
140
|
-
After a repo accepts the check or badge:
|
|
141
|
-
|
|
142
|
-
- ask the maintainer to mention “tested with MCP Observatory” in their MCP directory listing
|
|
143
|
-
- update the MCP Observatory launch/story docs with the accepted repo
|
|
144
|
-
- use accepted PRs as proof in enterprise outreach
|
|
145
|
-
- invite production users to hosted reporting or certification pilots
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
# Certification PR Campaign
|
|
2
|
-
|
|
3
|
-
The certification campaign creates public proof by opening small, helpful PRs that add read-only MCP Observatory checks to public MCP servers.
|
|
4
|
-
|
|
5
|
-
## Goal
|
|
6
|
-
|
|
7
|
-
Create maintainer conversations and accepted public integrations around one clear offer:
|
|
8
|
-
|
|
9
|
-
> Add MCP CI/security checks in 60 seconds.
|
|
10
|
-
|
|
11
|
-
## PR Shape
|
|
12
|
-
|
|
13
|
-
Each PR should be narrow:
|
|
14
|
-
|
|
15
|
-
- add `.github/workflows/mcp-observatory.yml`
|
|
16
|
-
- add `mcp-observatory.target.json` when needed
|
|
17
|
-
- add optional badge snippet
|
|
18
|
-
- keep permissions read-only by default
|
|
19
|
-
- avoid changing server implementation code
|
|
20
|
-
|
|
21
|
-
Generate the kit:
|
|
22
|
-
|
|
23
|
-
```bash
|
|
24
|
-
npx @kryptosai/mcp-observatory setup-ci --all --command "<safe startup command>"
|
|
25
|
-
npx @kryptosai/mcp-observatory setup-ci --doctor
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
## Target Criteria
|
|
29
|
-
|
|
30
|
-
Prioritize repos with:
|
|
31
|
-
|
|
32
|
-
- active MCP server maintenance
|
|
33
|
-
- clear package or local startup command
|
|
34
|
-
- meaningful usage, stars, directory visibility, or enterprise category
|
|
35
|
-
- safe CI startup without real credentials
|
|
36
|
-
- maintainers likely to value compatibility/security proof
|
|
37
|
-
|
|
38
|
-
Avoid repos where:
|
|
39
|
-
|
|
40
|
-
- startup requires private credentials with no fixture mode
|
|
41
|
-
- the server performs irreversible side effects during startup
|
|
42
|
-
- maintainers have already rejected third-party CI without a new reason to revisit
|
|
43
|
-
|
|
44
|
-
## Maintainer Message
|
|
45
|
-
|
|
46
|
-
```markdown
|
|
47
|
-
This PR adds a read-only MCP Observatory GitHub Action for MCP compatibility, schema drift, and common security checks.
|
|
48
|
-
|
|
49
|
-
It does not require an account and does not change runtime code. The workflow is read-only by default; maintainers can opt into PR comments/statuses later.
|
|
50
|
-
|
|
51
|
-
I used `setup-ci --doctor` to verify the adoption kit. If the startup command should use a repo-local build instead of the published package, I can adjust it.
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
## Weekly Quota
|
|
55
|
-
|
|
56
|
-
- 5 researched targets
|
|
57
|
-
- 3 opened PRs
|
|
58
|
-
- 1 follow-up on existing open PRs
|
|
59
|
-
- 1 accepted or meaningfully discussed PR converted into proof/docs
|
|
60
|
-
|
|
61
|
-
## Success Signals
|
|
62
|
-
|
|
63
|
-
- accepted workflows
|
|
64
|
-
- maintainer replies
|
|
65
|
-
- badge adoption
|
|
66
|
-
- directory mentions
|
|
67
|
-
- reference evaluations linked from maintainers
|
|
68
|
-
- inbound certification or pilot requests
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
# Clone To CI Campaign
|
|
2
|
-
|
|
3
|
-
This is the operating campaign for turning anonymous clone/download activity into durable MCP Observatory adoption.
|
|
4
|
-
|
|
5
|
-
## Campaign Promise
|
|
6
|
-
|
|
7
|
-
Add MCP CI/security checks in 60 seconds.
|
|
8
|
-
|
|
9
|
-
```bash
|
|
10
|
-
npx @kryptosai/mcp-observatory setup-ci --all --command "npx -y <server-package>"
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
## Strategy Map
|
|
14
|
-
|
|
15
|
-
| Strategy | Move | Success Signal |
|
|
16
|
-
| --- | --- | --- |
|
|
17
|
-
| Passive credibility | Link `CLONED_THIS.md`, proof docs, badges, and sample reports from README/npm | higher repo views per clone |
|
|
18
|
-
| Product-led conversion | Prompt `setup-ci` after `test`, `scan`, `diff`, `score`, and `lock verify`; expose `setup-ci --doctor` | more `setup-ci` sessions |
|
|
19
|
-
| Ecosystem distribution | Submit directory/listing copy and Action examples to MCP/devtool/security indexes | more qualified clones/downloads |
|
|
20
|
-
| Authority | Publish safety field reports and reference evaluations | backlinks, citations, inbound issues |
|
|
21
|
-
| Certification | Open small read-only CI PRs against public MCP servers | merged PRs, maintainer replies, badge adoption |
|
|
22
|
-
| Revenue | Offer private readiness reviews and hosted history to high-signal teams | pilot calls and paid reviews |
|
|
23
|
-
|
|
24
|
-
## Weekly Loop
|
|
25
|
-
|
|
26
|
-
1. Refresh the local metrics dashboard.
|
|
27
|
-
2. Record clone/download/view and `setup-ci` conversion.
|
|
28
|
-
3. Pick 5 public MCP repos for certification PRs.
|
|
29
|
-
4. Submit or refresh 3 directory/listing entries.
|
|
30
|
-
5. Publish one short public note from the safety findings.
|
|
31
|
-
6. Draft private outreach to 3 high-signal accounts using sanitized evidence only.
|
|
32
|
-
7. Generate a sanitized sample enterprise report for pilot conversations:
|
|
33
|
-
`npx @kryptosai/mcp-observatory enterprise-report --sample --format html --output reports/sample-enterprise-report.html`
|
|
34
|
-
|
|
35
|
-
## Public Copy
|
|
36
|
-
|
|
37
|
-
Short:
|
|
38
|
-
|
|
39
|
-
> MCP Observatory adds CI, compatibility, drift, and security checks for MCP servers before agents depend on them.
|
|
40
|
-
|
|
41
|
-
Clone conversion:
|
|
42
|
-
|
|
43
|
-
> Cloned this? Add MCP CI in 60 seconds with `setup-ci --all`.
|
|
44
|
-
|
|
45
|
-
Security-team angle:
|
|
46
|
-
|
|
47
|
-
> Treat MCP servers like production dependencies: check startup, schema quality, tool safety, drift, and CI history before agents use them.
|
|
48
|
-
|
|
49
|
-
## Metrics
|
|
50
|
-
|
|
51
|
-
Track these in the local dashboard:
|
|
52
|
-
|
|
53
|
-
- GitHub clones
|
|
54
|
-
- npm downloads
|
|
55
|
-
- GitHub views
|
|
56
|
-
- local validation sessions
|
|
57
|
-
- `setup-ci` sessions
|
|
58
|
-
- clone/download to CI conversion
|
|
59
|
-
- latest version adoption
|
|
60
|
-
- external CI sessions
|
|
61
|
-
|
|
62
|
-
The primary campaign goal is not raw clones. It is increasing `setup-ci` sessions and accepted CI/badge integrations.
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
# Directory And Marketplace Listing Copy
|
|
2
|
-
|
|
3
|
-
## Standard Positioning
|
|
4
|
-
|
|
5
|
-
MCP Observatory is the CI and security gate for MCP servers before agents depend on them.
|
|
6
|
-
|
|
7
|
-
## Short Description
|
|
8
|
-
|
|
9
|
-
CI, security checks, schema drift detection, lock files, reports, and badges for MCP servers.
|
|
10
|
-
|
|
11
|
-
## Medium Description
|
|
12
|
-
|
|
13
|
-
MCP Observatory is a CLI, GitHub Action, and MCP server for testing MCP servers before agents depend on them. It checks tools, prompts, resources, schema quality, security footguns, regressions, and drift, then generates lock files, reports, and badges maintainers can share.
|
|
14
|
-
|
|
15
|
-
## Long Description
|
|
16
|
-
|
|
17
|
-
MCP Observatory gives MCP servers production safety rails: one-command CI setup, compatibility checks, security analysis, schema drift detection, lock-file verification, record/replay/verify workflows, PR comments, health score badges, and static enterprise reports. It can run as a CLI, inside GitHub Actions, or as an MCP server that lets agents inspect other MCP servers.
|
|
18
|
-
|
|
19
|
-
Free for local OSS use. Paid pilots are available for hosted reporting, private repo CI history, recurring security reports, certification, support, and fleet visibility.
|
|
20
|
-
|
|
21
|
-
For security and platform teams, see the MCP Server Security Field Guide and MCP Server Safety Index for agent security, AI supply chain security, and production MCP server review guidance.
|
|
22
|
-
|
|
23
|
-
## Primary CTA
|
|
24
|
-
|
|
25
|
-
Add MCP CI in one command:
|
|
26
|
-
|
|
27
|
-
```bash
|
|
28
|
-
npx @kryptosai/mcp-observatory setup-ci --all --command "npx -y my-mcp-server"
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
## Tags
|
|
32
|
-
|
|
33
|
-
### GitHub Topics
|
|
34
|
-
|
|
35
|
-
- `mcp`
|
|
36
|
-
- `model-context-protocol`
|
|
37
|
-
- `mcp-server`
|
|
38
|
-
- `mcp-testing`
|
|
39
|
-
- `mcp-security`
|
|
40
|
-
- `mcp-ci`
|
|
41
|
-
- `schema-drift`
|
|
42
|
-
- `developer-tools`
|
|
43
|
-
- `security`
|
|
44
|
-
- `github-action`
|
|
45
|
-
|
|
46
|
-
### Directory Tags
|
|
47
|
-
|
|
48
|
-
- MCP
|
|
49
|
-
- Model Context Protocol
|
|
50
|
-
- Security
|
|
51
|
-
- Developer Tools
|
|
52
|
-
- Testing
|
|
53
|
-
- CI/CD
|
|
54
|
-
- Schema Drift
|
|
55
|
-
- Regression Testing
|
|
56
|
-
- AI Agents
|
|
57
|
-
|
|
58
|
-
### npm Keywords
|
|
59
|
-
|
|
60
|
-
- `mcp`
|
|
61
|
-
- `mcp-server`
|
|
62
|
-
- `model-context-protocol`
|
|
63
|
-
- `mcp-testing`
|
|
64
|
-
- `mcp-security`
|
|
65
|
-
- `mcp-ci`
|
|
66
|
-
- `schema-drift`
|
|
67
|
-
- `github-action`
|
|
68
|
-
- `developer-tools`
|
|
69
|
-
- `security`
|
|
70
|
-
- `agent-security`
|
|
71
|
-
- `ai-supply-chain`
|
|
72
|
-
- `production-monitoring`
|
|
73
|
-
- `enterprise-report`
|
|
74
|
-
|
|
75
|
-
## Links
|
|
76
|
-
|
|
77
|
-
- README: `https://github.com/KryptosAI/mcp-observatory#readme`
|
|
78
|
-
- GitHub Action: `https://github.com/KryptosAI/mcp-observatory/tree/main/action`
|
|
79
|
-
- Security field guide: `https://github.com/KryptosAI/mcp-observatory/blob/main/docs/mcp-security-field-guide.md`
|
|
80
|
-
- Reference evaluations: `https://github.com/KryptosAI/mcp-observatory/blob/main/docs/reference-evaluations.md`
|
|
81
|
-
- Safety index: `https://github.com/KryptosAI/mcp-observatory/blob/main/docs/mcp-server-safety-index.md`
|
|
82
|
-
- Lock files: `https://github.com/KryptosAI/mcp-observatory/blob/main/docs/mcp-lock-files.md`
|
|
83
|
-
- Certification guide: `https://github.com/KryptosAI/mcp-observatory/blob/main/docs/certification-distribution.md`
|
|
84
|
-
- Proof: `https://github.com/KryptosAI/mcp-observatory/blob/main/docs/proof.md`
|
|
85
|
-
- Commercial pilots: `https://github.com/KryptosAI/mcp-observatory/blob/main/COMMERCIAL.md`
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
# Distribution And Pilot Launch
|
|
2
|
-
|
|
3
|
-
Use this as the reversible launch motion for MCP Observatory commercialization.
|
|
4
|
-
|
|
5
|
-
For the release gate and publication checklist, see [Publish And Distribution Readiness](./publish-readiness.md).
|
|
6
|
-
For listing copy, use [Directory And Marketplace Listing Copy](./directory-listing-copy.md).
|
|
7
|
-
For public proof, use [MCP Observatory Proof](./proof.md).
|
|
8
|
-
|
|
9
|
-
## Positioning
|
|
10
|
-
|
|
11
|
-
MCP Observatory is the CI and security gate for MCP servers before agents depend on them.
|
|
12
|
-
|
|
13
|
-
## Public Surface Checklist
|
|
14
|
-
|
|
15
|
-
- README pricing and enterprise CTA
|
|
16
|
-
- npm description and keywords
|
|
17
|
-
- GitHub repository homepage pointing to the README or commercial page
|
|
18
|
-
- MCP directory listings updated with production/security language
|
|
19
|
-
- Launch post published
|
|
20
|
-
- Badge or certification language available for passing servers
|
|
21
|
-
- Certification distribution loop published at [`docs/certification-distribution.md`](./certification-distribution.md)
|
|
22
|
-
|
|
23
|
-
## Launch Post Draft
|
|
24
|
-
|
|
25
|
-
MCP servers are becoming production dependencies. If an agent depends on a server, that server needs regression tests, security checks, and drift gates before it breaks workflows.
|
|
26
|
-
|
|
27
|
-
MCP Observatory scans MCP servers, verifies capabilities, detects schema drift, records/replays sessions, and can run in CI or as an MCP server itself.
|
|
28
|
-
|
|
29
|
-
Free for local OSS use. Paid pilots are available for hosted reporting, private repo CI, recurring security reports, certification, support, and fleet visibility.
|
|
30
|
-
|
|
31
|
-
Production MCP usage? Contact william@banksey.com.
|
|
32
|
-
|
|
33
|
-
## Outreach Template
|
|
34
|
-
|
|
35
|
-
Subject: MCP production testing and security checks
|
|
36
|
-
|
|
37
|
-
Hi,
|
|
38
|
-
|
|
39
|
-
I noticed signals that your team may be evaluating or using MCP servers. MCP Observatory is the CI and security gate for MCP servers before agents depend on them.
|
|
40
|
-
|
|
41
|
-
We are running a small number of production pilots for hosted reports, private repo CI, recurring security reviews, certification, support, and fleet visibility.
|
|
42
|
-
|
|
43
|
-
Would it be useful to compare what your MCP servers look like today and where regressions or production risk could show up?
|
|
44
|
-
|
|
45
|
-
William
|
|
46
|
-
|
|
47
|
-
## Helpful Maintainer PR Motion
|
|
48
|
-
|
|
49
|
-
For popular MCP server repositories, open small PRs that add:
|
|
50
|
-
|
|
51
|
-
- `.github/workflows/mcp-observatory.yml`
|
|
52
|
-
- optional README badge
|
|
53
|
-
- a short PR body explaining the security/compatibility benefit
|
|
54
|
-
|
|
55
|
-
Frame this as free OSS safety infrastructure:
|
|
56
|
-
|
|
57
|
-
> I added a lightweight MCP Observatory check so users can see this server is tested for compatibility, schema drift, and common security issues. It runs in GitHub Actions, comments a readable report on PRs, and does not require an account.
|
|
58
|
-
|
|
59
|
-
Use the full template in [`certification-distribution.md`](./certification-distribution.md).
|
|
60
|
-
|
|
61
|
-
Track each outbound wave with [`certification-campaign-template.md`](./certification-campaign-template.md).
|
|
62
|
-
|
|
63
|
-
## Account Ranking Inputs
|
|
64
|
-
|
|
65
|
-
Rank prospects with:
|
|
66
|
-
|
|
67
|
-
- Company domain or GitHub organization
|
|
68
|
-
- Evidence source: git email domain, git remote URL, hostname domain, CI provider
|
|
69
|
-
- Event count and unique sessions
|
|
70
|
-
- Commands used
|
|
71
|
-
- Targets or servers seen
|
|
72
|
-
- Production signals: CI, private repo naming, repeated scans, security checks, matrix scans
|
|
73
|
-
- Confidence: high, medium, low
|
|
74
|
-
- Tier recommendation: Team, Business, Enterprise, Strategic
|
|
75
|
-
|
|
76
|
-
Do not publish raw emails. Keep account evidence internal.
|