io.github.AdithyaVardan1/panini-connector-mcp
NPM · PANINI-CONNECTOR-MCP · SCANNED SEP 20
Install + verify the panini-connector SDK on self-hosted sites, driven by AI agents.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security98
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- No install/post-install scripts declared.Pass
- 31 of 97 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency19
- Repository check failed: the declared repository URL returned HTTP 404. See how to fix → View diagnostics → Fail
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 64 days ago).Pass
- Security-disclosure policy not yet verified: we couldn't inspect the source repository.Unverified
Schema Quality & AI Usability75
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 947 tokens (~157/item across 6 items; 6 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management87
- Stability observed for 26 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety75
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 0 of 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "publish_test_post" implies "publish" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
- An AI judge read all 6 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the io.github.AdithyaVardan1/panini-connector-mcp server?
io.github.AdithyaVardan1/panini-connector-mcp runs locally as an npm package, launched with npx -y panini-connector-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · panini-connector-mcp
claude mcp add adithyavardan1-panini-connector-mcp -- npx -y panini-connector-mcp
{
"mcpServers": {
"adithyavardan1-panini-connector-mcp": {
"command": "npx",
"args": [
"-y",
"panini-connector-mcp"
]
}
}
} {
"servers": {
"adithyavardan1-panini-connector-mcp": {
"command": "npx",
"args": [
"-y",
"panini-connector-mcp"
]
}
}
} codex mcp add adithyavardan1-panini-connector-mcp -- npx -y panini-connector-mcp
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"adithyavardan1-panini-connector-mcp": {
"type": "local",
"command": [
"npx",
"-y",
"panini-connector-mcp"
],
"enabled": true
}
}
} openclaw mcp add adithyavardan1-panini-connector-mcp --command npx --arg -y --arg panini-connector-mcp
mcp_servers:
adithyavardan1-panini-connector-mcp:
command: "npx"
args: ["-y", "panini-connector-mcp"] {
"McpServers": {
"adithyavardan1-panini-connector-mcp": {
"Transport": "stdio",
"Command": "npx",
"Arguments": [
"-y",
"panini-connector-mcp"
]
}
}
} assistant mcp add adithyavardan1-panini-connector-mcp -t stdio -c npx -a -y panini-connector-mcp
{
"mcpServers": {
"adithyavardan1-panini-connector-mcp": {
"command": "npx",
"args": [
"-y",
"panini-connector-mcp"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 19 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.
- 18 Sept 26 −3
- Stability: pass → 0.80 functional
- 17 Sept 26 0
- Stability: 0.97 → pass security
- 16 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.
- 14 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 87 to 90. That category is still filling its 30-day observation window: 26 days of observed history at the previous scan, 27 at this one. The score rises as the window fills, whether or not the server changes.
- 12 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.
- 11 Sept 26 −3
- Stability: pass → 0.80 functional
- 10 Sept 26 0
- Stability: 0.97 → pass security
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 20 Sept 2026 · Analysed npm/panini-connector-mcp@0.1.3
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | npm |
Background: How many MCP packages publish verified provenance →
Dependencies 97 packages
| Packages resolved | 97 |
|---|---|
| Stale | 31 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
generate_shared_secret Generate shared secret ~62
Generate a cryptographically-random 32-byte hex secret. Use this as the SEO_CONNECTOR_SECRET env var on the customer site AND paste the same value into the Panini dashboard "Shared secret" field — both sides must match for HMAC signatures to verify.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| length_bytes | number | yes | Number of raw bytes before hex-encoding |
| secret | string | yes | 64-character hex string (32 raw bytes) |
No examples provided.
get_envelope_schema Get envelope schema ~81
Return the raw HTTP envelope contract Panini uses to POST to customer sites. Use this when the customer stack is NOT Node or Python (e.g. Laravel, Rails, Go, .NET, Rust) and you need to hand-implement the connector in their language. Includes request/response shapes, HMAC verification pseudocode, and a Laravel example.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| hmac_pseudocode | string | yes | – |
| http_method | string | yes | – |
| laravel_example | string | yes | – |
| replay_window_seconds | number | yes | – |
| request_body_shape | object | yes | – |
| request_headers | object | yes | – |
| response_errors | object | yes | – |
| response_ping | object | yes | – |
| response_success | object | yes | – |
No examples provided.
install_panini_connector Install panini-connector on a site ~355
Given the customer's stack (language + framework + storage), returns the exact commands, code, and env vars to wire panini-connector into their self-hosted site. The AI agent should: (1) call this tool, (2) run the install_command in the project root, (3) write each file to the path shown, (4) prompt the user to set the env_vars on their hosting platform, (5) tell them to redeploy, then (6) call verify_panini_connector to confirm the setup works end-to-end.
| Name | Type | Req | Description |
|---|---|---|---|
| existing_table | string | – | Name of the customer's existing blog/posts table (e.g. "blog_posts"). For supabase/postgres, seeds the toRow mapping. For custom_db, seeds the SQL. Defaults to "blog_posts". |
| framework | string | yes | The customer's web framework. next_app = Next.js App Router, next_pages = Next.js Pages Router. Must match `language`: node → next_app|next_pages|express; python → fastapi|django|flask. |
| language | string | yes | The customer site's runtime language. |
| storage | string | yes | Where posts land. supabase = Supabase via PostgREST. postgres = direct Postgres DSN. custom_db = MySQL/Mongo/MSSQL/CosmosDB/CMS — SDK generates a StorageAdapter class scaffold. memory = ephemeral in-… |
| url_template | string | – | URL where published posts appear on the customer site. Use {slug} and/or {id} placeholders. Example: "https://mysite.com/blog/{slug}". Defaults to "https://yoursite.com/blog/{slug}". |
| Name | Type | Req | Description |
|---|---|---|---|
| env_vars | string | yes | – |
| files | array | yes | – |
| install_command | string | yes | – |
| post_install_note | string | – | – |
| verify_command | string | yes | – |
No examples provided.
list_connected_sites List Panini-connected sites ~128
List every site integration the authenticated user has connected to Panini across all their businesses. Covers OAuth-based connections (WordPress, Shopify, Ghost, Webflow, HubSpot, Wix, Framer, GitHub PR) and custom webhooks. Returns id, platform, site_url, connection status, and last verify timestamp per integration — the id is what you pass to publish_test_post. Requires PANINI_API_KEY env var.
| Name | Type | Req | Description |
|---|---|---|---|
| business_id | string | – | Optional — restrict the list to a single business_id. Omit to get every integration across all businesses the user has access to. |
| Name | Type | Req | Description |
|---|---|---|---|
| count | number | yes | – |
| error | string | – | – |
| integrations | array | yes | – |
| ok | boolean | yes | – |
No examples provided.
publish_test_post Publish a test post through a Panini integration ~105
Send a clearly-marked test post ("Panini MCP integration test — safe to delete") through a connected integration. Confirms the whole publish pipeline (auth → CMS API → response shape) works BEFORE a real content activity fires. Pass the integration_id from list_connected_sites. Returns the created post URL on success, or a diagnostic error string on failure. The user must manually delete the test post afterward.
| Name | Type | Req | Description |
|---|---|---|---|
| integration_id | string | yes | The integration id from list_connected_sites. |
| Name | Type | Req | Description |
|---|---|---|---|
| error | string | – | – |
| external_id | string | – | – |
| external_url | string | – | – |
| hint | string | – | – |
| ok | boolean | yes | – |
No examples provided.
verify_panini_connector Verify a deployed panini-connector endpoint ~216
Fire all 4 HMAC-signed operations (ping, create_post, update_post, delete_post) at the customer's deployed connector URL. Returns per-op status + diagnostics. Call this AFTER install_panini_connector's code has been written + env vars set + site redeployed, to confirm the round-trip works. If any op fails, the response_body will contain the customer's handler error text — enough to debug (wrong secret? missing table column? RLS policy? etc.). Cleans up after itself by deleting the smoke-test post.
| Name | Type | Req | Description |
|---|---|---|---|
| secret | string | yes | The SEO_CONNECTOR_SECRET value set as an env var on the customer site. Must match byte-for-byte or all signatures will 401. |
| timeout_ms | integer | – | Per-op HTTP timeout in ms. Default 10000. |
| url | string | yes | The full HTTPS URL of the deployed connector endpoint. Must end with the mount path (usually "/api/seo-connector"). Example: "https://mysite.com/api/seo-connector" |
| Name | Type | Req | Description |
|---|---|---|---|
| ok | boolean | yes | – |
| ops | array | yes | – |
| summary | string | yes | – |
| url | string | yes | – |
No examples provided.
What is the io.github.AdithyaVardan1/panini-connector-mcp server?
io.github.AdithyaVardan1/panini-connector-mcp is listed in the public MCP registry as io.github.AdithyaVardan1/panini-connector-mcp. Install + verify the panini-connector SDK on self-hosted sites, driven by AI agents. This page covers its npm package (panini-connector-mcp).
Is the io.github.AdithyaVardan1/panini-connector-mcp server safe to use?
io.github.AdithyaVardan1/panini-connector-mcp scores 75 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 20 September 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the io.github.AdithyaVardan1/panini-connector-mcp server expose?
io.github.AdithyaVardan1/panini-connector-mcp exposes 6 tools: install_panini_connector, verify_panini_connector, generate_shared_secret, get_envelope_schema, list_connected_sites, publish_test_post. Their descriptions and schemas cost roughly 947 tokens of context every time the server is loaded.
Is the io.github.AdithyaVardan1/panini-connector-mcp server still maintained?
io.github.AdithyaVardan1/panini-connector-mcp is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the io.github.AdithyaVardan1/panini-connector-mcp server under?
io.github.AdithyaVardan1/panini-connector-mcp declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.