podkop-mcp
PYPI · PODKOP-MCP
MCP server for managing Podkop and Forkop on OpenWrt over SSH
Available components
Last scanned (3 hours ago)
Scores higher than 71% of PyPI servers
Category Cloud Infrastructure
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 Security100
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- Runs hatchling.build at install time, a recognised build step with no custom scripting around it. View diagnostics → Pass
- 1 of 35 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency100
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Cryptographically verified build provenance (signed, bound to mikel38487/podkop-mcp). View diagnostics → Pass
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 3 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability58
- AI-judged instruction clarity (fair).Partial
- Tool/resource definitions use about 3828 tokens (~81/item across 47 items; 47 tools + 0 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management0
- Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage71
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 0% of tool parameters carry a description.Fail
- 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 4 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "podkop_option_delete" implies "delete" 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 48 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
Unverified: 1 category
A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.
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.
- 5 Nov 26 +15
- Malware scan: unverified → pass ▲ security
- 4 Nov 26 −15
- Malware scan: pass → unverified ▼ security
- 3 Nov 26 +15
- Malware scan: unverified → pass ▲ security
- 1 Nov 26 60
First indexed and scored.
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 5 Nov 2026 · Analysed pypi/podkop-mcp@0.2.2
Provenance Verified
A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.
| Result | Verified |
|---|---|
| Ecosystem | pypi |
| Reason | Verified |
| Discovered via | Registry attestation endpoint |
| Source repo | mikel38487/podkop-mcp |
| Certificate issuer | https://token.actions.githubusercontent.com |
| Certificate SAN | https://github.com/mikel38487/podkop-mcp/.github/workflows/release.yml@refs/tags/v0.2.2 |
| Rekor log index | 3627760727 |
| Predicate type | PyPI publish attestation https://docs.pypi.org/attestations/publish/v1 |
| Subject digest | sha256:65fef3611dbbd3edc643af467f4ac1c259e841715e594c949229ce7dac574a60 |
Background: How many MCP packages publish verified provenance →
Install scripts 1 script
| Hook | Tier | Command |
|---|---|---|
| build_backend | allowlisted | hatchling.build |
Background: Why install scripts are a supply-chain risk →
Dependencies 35 packages
| Packages resolved | 35 |
|---|---|
| No linked repository | 1 |
| 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 →
podkop_backup_create ~42
Create a config backup on the router (dry-run by default).
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | – |
| reason | string | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_backup_list ~30
List config backups stored on the router.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_backup_restore ~50
Restore a config backup by id. Dry-run shows the action; apply=true restores and reloads.
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | – |
| backup_id | string | yes | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_child_create ~111
Create a generic Forkop 2.x child (urltest/fallback_group/link/interface/json/tunnel_peer). This is a low-level escape hatch for new 2.0 entities; domain tools and podkop_subscription_add remain the safe high-level paths. Dry-run by default.
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | – |
| child_type | string | yes | – |
| label | – | – | – |
| name | string | yes | – |
| options | – | – | – |
| section | string | yes | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_cli ~110
Run a read-only Forkop/Podkop CLI command from the allowlist. Mutating commands (start, stop, reload, list_update, subscription_update, component actions) are rejected: use dedicated tools so that backups and rollback are applied. Output is redacted unless reveal_secrets=true.
| Name | Type | Req | Description |
|---|---|---|---|
| args | – | – | – |
| command | string | yes | – |
| parse_json | boolean | – | – |
| reveal_secrets | boolean | – | – |
| target | – | – | – |
| timeout | number | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_community_lists_get ~84
Return selected and available community lists of sections. With section: the selected lists of that section plus the built-in catalogue of known names. Without section: a map for every top-level section. Names outside the catalogue are reported in unknown (custom rule-sets are allowed and never removed automatically).
| Name | Type | Req | Description |
|---|---|---|---|
| section | – | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_community_lists_update ~139
Add or remove community lists of one section as a UCI list. Names must match ^[a-z0-9_]+$; duplicates are dropped and the order of existing lists is preserved. The whole list is written at once, so no per-item add_list/del_list calls are issued. Names outside the built-in catalogue are reported in unknown but accepted. Dry-run by default; apply=true writes the config, creates a backup and reloads the service.
| Name | Type | Req | Description |
|---|---|---|---|
| add | – | – | – |
| apply | boolean | – | – |
| remove | – | – | – |
| section | string | yes | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_config_export ~70
Export the UCI config as text (backup-style). ``raw`` requires reveal_secrets=true because it contains proxy URLs and keys. By default the masked export from Forkop is returned.
| Name | Type | Req | Description |
|---|---|---|---|
| mode | string | – | – |
| reveal_secrets | boolean | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_config_get ~95
Return the full UCI configuration as structured JSON. Secrets (subscription URLs, proxy strings, keys) are masked unless reveal_secrets=true. The structure is identical for Forkop 1.x/2.x and Podkop; use podkop_sections_list for a compact view.
| Name | Type | Req | Description |
|---|---|---|---|
| include_raw | boolean | – | – |
| package | – | – | – |
| reveal_secrets | boolean | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_connections_config ~80
List routing sections with subscriptions, urltest groups, links and tunnels. Subscription URLs and proxy strings are masked unless reveal_secrets=true. This is a read-only map of how connections are configured; use podkop_subscription_* to modify them.
| Name | Type | Req | Description |
|---|---|---|---|
| reveal_secrets | boolean | – | – |
| section | – | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_connections_live ~96
List live connections with optional filters (host, source_ip, chain). ``host`` and ``chain`` are case-insensitive substrings; ``source_ip`` matches exactly or as a network prefix ("192.0.2." matches all clients in that subnet). Read-only.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | – | – | – |
| host | – | – | – |
| limit | integer | – | – |
| source_ip | – | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_core_features ~30
Return sing-box features compiled into the installed Forkop core (read-only).
| Name | Type | Req | Description |
|---|---|---|---|
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_doctor ~60
Check MCP configuration, SSH connectivity, backend and capabilities. Use this first when something does not work: it explains missing environment variables, SSH key problems and the detected Podkop/Forkop version without changing the router.
| Name | Type | Req | Description |
|---|---|---|---|
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_domain_check ~127
Check one domain: DNS resolution, FakeIP, section coverage, HTTPS probe. Resolves the domain through the router DNS (127.0.0.1) without touching the configuration. fakeip=true means the domain maps to 198.18.x.x or fc00::/18 (sing-box FakeIP ranges) and therefore goes through the proxy. probe_http runs a curl HEAD request on the router; curl failures are reported in http_error instead of raising.
| Name | Type | Req | Description |
|---|---|---|---|
| domain | string | yes | – |
| probe_http | boolean | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_domains_add ~180
Add domains to a section preserving the backend storage type. Forkop 1.x keeps section.domain as a single string: the tool never turns it into a UCI list (that would break domain_suffix matching). Forkop 2.x writes multiline destinations, Podkop uses the user_domains list. Duplicates are reported and not written again; invalid entries raise an error. Dry-run by default: the diff and UCI preview are returned and the router is untouched. With apply=true the config is written, the service is reloaded and, if verify=true, the first added domain is resolved via the router DNS to confirm it maps to a FakeIP address.
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | – |
| domains | array | yes | – |
| section | string | yes | – |
| target | – | – | – |
| verify | boolean | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_domains_find ~91
Find where a domain is covered by section entries. Checks every top-level section and returns exact matches with the entry kind (domain, zone, full, keyword, regex, ip). possible_lists shows community lists selected in sections: their content lives on the router as rule-sets, so the server cannot match a domain against them.
| Name | Type | Req | Description |
|---|---|---|---|
| domain | string | yes | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_domains_list ~99
List domains of one section, normalized plus the raw stored value. Works for all backends: Forkop 1.x keeps domain as one space-separated string, Forkop 2.x keeps one entry per line in destinations, Podkop uses the user_domains UCI list. Use the returned storage/option values to understand why entries are written the way they are.
| Name | Type | Req | Description |
|---|---|---|---|
| section | string | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_domains_remove ~72
Remove domains from a section, keeping the storage type intact. Domains that are not present are reported in not_found and do not make the call fail. Dry-run by default.
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | – |
| domains | array | yes | – |
| section | string | yes | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_domains_replace ~90
Replace the whole domain set of a section. Every entry is validated first; on Forkop 2.x comments and blank lines of the existing destinations block are preserved. Use podkop_domains_add or podkop_domains_remove for incremental changes. Dry-run by default.
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | – |
| domains | array | yes | – |
| section | string | yes | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_domains_suggest ~115
Suggest hosts seen in live connections but not covered by any section. Groups hosts from the Clash API by traffic, skips IP addresses, localhost and already covered hosts. With only_direct=true (default) only hosts whose chain is direct are suggested, i.e. traffic that currently bypasses the proxy and may need a rule. Feed the result to podkop_domains_add (suggested_section is usually main).
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | – |
| only_direct | boolean | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_health ~70
Run read-only health checks: sing-box, nftables, FakeIP and DNS. ``full=true`` additionally runs the global network check, which can take up to a minute because it tests real connectivity.
| Name | Type | Req | Description |
|---|---|---|---|
| full | boolean | – | – |
| target | – | – | – |
| timeout | number | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_import_check ~38
Validate a Forkop config file on the router without applying it (read-only).
| Name | Type | Req | Description |
|---|---|---|---|
| path | string | yes | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_installer_log ~30
Return the last Forkop installer log, redacted (read-only).
| Name | Type | Req | Description |
|---|---|---|---|
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_installer_status ~37
Return the status of the last Forkop installer run (read-only).
| Name | Type | Req | Description |
|---|---|---|---|
| offset | integer | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_lists_update ~77
Update built-in lists and/or subscriptions. This changes the router's downloaded rule sets and subscription cache, so apply=true is required. Long operations are bounded by ``timeout``.
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | – |
| kind | string | – | – |
| target | – | – | – |
| timeout | number | – | – |
| wait | boolean | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_logs ~72
Return recent router logs, filtered and redacted. ``source`` selects Forkop/Podkop journal, sing-box journal or the whole system log. Secrets in URLs are masked before returning.
| Name | Type | Req | Description |
|---|---|---|---|
| filter | – | – | – |
| lines | integer | – | – |
| source | string | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_monitor_snapshot ~79
Return a monitoring snapshot: service, system, proxies, connections, traffic. Collects everything available in one call; each part fails independently (errors are reported in check_errors instead of raising). Read-only and safe to call repeatedly.
| Name | Type | Req | Description |
|---|---|---|---|
| include_connections | boolean | – | – |
| target | – | – | – |
| top | integer | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_option_delete ~53
Delete a UCI option. Dry-run by default; apply=true writes with backup.
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | – |
| path | string | yes | – |
| reason | string | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_option_get ~50
Read a single UCI option or section by path, e.g. forkop.main.domain.
| Name | Type | Req | Description |
|---|---|---|---|
| path | string | yes | – |
| reveal_secrets | boolean | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_option_set ~110
Set a UCI option or list. Dry-run by default; apply=true writes, backs up and reloads. ``value_type=auto`` sets a list when ``value`` is a list, otherwise an option. The tool preserves the backend package and never touches other OpenWrt packages.
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | – |
| path | string | yes | – |
| reason | string | – | – |
| target | – | – | – |
| value | – | yes | – |
| value_type | string | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_proxies_list ~53
List Clash proxy groups and nodes with delays. With ``group``, returns that group's members (all) and its current selection (now). Read-only.
| Name | Type | Req | Description |
|---|---|---|---|
| group | – | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_proxy_select ~88
Select a proxy inside a Clash group (runtime change, not config). Dry-run shows what would be selected. apply=true performs the switch; on Forkop 1.x this raises BackendError because runtime selection is not supported there — that is expected behaviour.
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | – |
| group | string | yes | – |
| proxy | string | yes | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_proxy_test ~50
Run read-only proxy check and report selected-group delays. Calls check_proxy via CLI when available; falls back to reporting delays of currently selected proxies from Clash API history.
| Name | Type | Req | Description |
|---|---|---|---|
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_section_create ~112
Create a new routing section. Dry-run by default. Minimal defaults are backend-specific: Forkop gets enabled=1 and the requested action; Podkop gets connection_type=proxy. For zapret2 on Forkop 1.x you must pass nfqws2_opt in options, otherwise the generated config will be rejected by the core.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | – | – |
| apply | boolean | – | – |
| name | string | yes | – |
| options | – | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_section_delete ~80
Delete a section. Child items are deleted when cascade=true. Deleting the main section is refused unless allow_main=true; it is usually a configuration error. Dry-run by default.
| Name | Type | Req | Description |
|---|---|---|---|
| allow_main | boolean | – | – |
| apply | boolean | – | – |
| cascade | boolean | – | – |
| section | string | yes | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_section_enable ~45
Enable or disable a section without deleting it.
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | – |
| enabled | boolean | yes | – |
| section | string | yes | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_section_get ~50
Return all options of one section plus its child items.
| Name | Type | Req | Description |
|---|---|---|---|
| include_children | boolean | – | – |
| reveal_secrets | boolean | – | – |
| section | string | yes | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_section_update ~74
Update selected options of a section (partial update). Dry-run by default. Use podkop_domains_add/remove for domain lists: this tool writes raw values but does not normalize domain syntax.
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | – |
| options | object | yes | – |
| section | string | yes | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_sections_list ~88
List routing sections with action, enabled flag, domain counts and lists. This is the fastest overview of what Forkop/Podkop is doing. Child UCI sections (subscriptions, URLTest groups, links) are counted; set include_children=true to return them too.
| Name | Type | Req | Description |
|---|---|---|---|
| include_children | boolean | – | – |
| reveal_secrets | boolean | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_service_action ~97
Start, stop, restart, reload or toggle autostart of Podkop/Forkop. Dry-run by default. ``stop`` is refused in read-only mode. Use podkop_apply-style tools for config changes; this tool only controls the service lifecycle.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | – |
| apply | boolean | – | – |
| target | – | – | – |
| timeout | number | – | – |
| wait | boolean | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_status ~28
Return service, sing-box, DNS and version status of the router.
| Name | Type | Req | Description |
|---|---|---|---|
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_subscription_add ~100
Add a subscription to a section. Dry-run by default; apply=true writes. Accepts http(s):// URLs or local absolute paths (max 4096 chars). Forkop creates a child section {section}_sub_N with sensible defaults; Podkop writes subscription_url inline into the section.
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | – |
| options | – | – | – |
| section | string | yes | – |
| target | – | – | – |
| url | string | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_subscription_delete ~79
Delete a subscription by name, 1-based index, tag or raw URL. When ``section`` is given, only its children are considered. Podkop removes the subscription_url option instead. Dry-run by default.
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | – |
| identifier | string | yes | – |
| section | – | – | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_subscription_update ~82
Refresh subscription cache on the router (apply must be true). Uses async update with status polling when the backend supports it, otherwise runs the blocking subscription_update command. Bounded by ``timeout`` seconds.
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | – |
| section | – | – | – |
| target | – | – | – |
| timeout | number | – | – |
| wait | boolean | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_system_info ~34
Return model, OpenWrt version, kernel, load, memory, disk and WAN info.
| Name | Type | Req | Description |
|---|---|---|---|
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_traffic ~85
Measure traffic rate by sampling Clash connections twice. Returns download/upload bps, per-connection deltas and the top consumers. ``sample_seconds`` is clamped to 0.5..10 s. Read-only; the call blocks for the sampling interval.
| Name | Type | Req | Description |
|---|---|---|---|
| sample_seconds | number | – | – |
| target | – | – | – |
| top | integer | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
podkop_tunnel_create ~120
Create a Forkop 2.x tunnel child (WARP/WireGuard/OpenVPN/...). Dry-run by default. ``kind`` is one of warp, wireguard, amneziawg, tailscale, openvpn-client, openconnect, json. Extra backend options are passed through; secrets in preview are masked.
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | – |
| kind | string | yes | – |
| label | – | – | – |
| name | string | yes | – |
| options | – | – | – |
| section | string | yes | – |
| target | – | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
How do I install the podkop-mcp server?
podkop-mcp runs locally as a PyPI package, launched with uvx podkop-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
pypi · podkop-mcp
claude mcp add mikel38487-podkop-mcp -- uvx podkop-mcp
What is the podkop-mcp server?
podkop-mcp is listed in the public MCP registry as io.github.mikel38487/podkop-mcp. MCP server for managing Podkop and Forkop on OpenWrt over SSH. This page covers its PyPI package (podkop-mcp).
Is the podkop-mcp server safe to use?
podkop-mcp scores 75 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. Its build provenance is signed and verified. 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 podkop-mcp server expose?
podkop-mcp exposes 47 tools: podkop_doctor, podkop_status, podkop_core_features, podkop_import_check, podkop_installer_status, and 42 more. Their descriptions and schemas cost roughly 3,652 tokens of context every time the server is loaded.
Is the podkop-mcp server still maintained?
podkop-mcp is still listed as active in the MCP registry. We last reached this channel on 5 November 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 podkop-mcp server under?
podkop-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.