@pharaoh-so/mcp 0.3.12 → 0.3.14
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/inspect-tools.json +29 -25
- package/package.json +1 -1
package/inspect-tools.json
CHANGED
|
@@ -724,46 +724,46 @@
|
|
|
724
724
|
},
|
|
725
725
|
{
|
|
726
726
|
"name": "pharaoh_account",
|
|
727
|
-
"description": "View your Pharaoh subscription status and manage billing. Toggle PR Guard and trigger graph refreshes.\n\nCALL THIS WHEN:\n• You want to check your subscription status\n• You need to update payment method, view invoices, or cancel\n• You want to know what plan you're on\n• You want to change which repo is active on the free tier\n• You want to enable or disable PR Guard on a repo\n• You want to refresh a repo's graph (re-map with latest code)\n• You want to open the Pharaoh dashboard to manage repos and settings visually",
|
|
727
|
+
"description": "View your Pharaoh subscription status and manage billing. Toggle PR Guard and trigger graph refreshes.\n\nPick one action and provide its fields. Each action has its own required and\noptional parameters; invalid combinations are rejected at parse time.\n\n• status — full account overview (plan, subscriptions, PR Guard, dashboard URL)\n• set_free_repo { repo } — change which repo is active on the free tier\n• refresh_repo { repo, full? } — re-map a single repo you own\n• refresh_all { force?, full? } — re-map every repo across your accessible orgs\n• enable_pr_guard { repos: [...] } — enable PR Guard on one or more repos, returns full status\n• disable_pr_guard { repos: [...] } — disable PR Guard on one or more repos, returns full status\n\nCALL THIS WHEN:\n• You want to check your subscription status\n• You need to update payment method, view invoices, or cancel\n• You want to know what plan you're on\n• You want to change which repo is active on the free tier\n• You want to enable or disable PR Guard on a repo\n• You want to refresh a repo's graph (re-map with latest code)\n• You want to open the Pharaoh dashboard to manage repos and settings visually\n\nFlag reference:\n force = skip smart-skip (already-on-current-version check). Bulk refresh only.\n full = force full remap, bypassing incremental diff. Use after schema changes.",
|
|
728
728
|
"inputSchema": {
|
|
729
729
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
730
730
|
"type": "object",
|
|
731
731
|
"properties": {
|
|
732
|
-
"
|
|
733
|
-
"
|
|
734
|
-
"
|
|
735
|
-
|
|
736
|
-
"
|
|
737
|
-
|
|
732
|
+
"action": {
|
|
733
|
+
"type": "string",
|
|
734
|
+
"enum": [
|
|
735
|
+
"status",
|
|
736
|
+
"set_free_repo",
|
|
737
|
+
"refresh_repo",
|
|
738
|
+
"refresh_all",
|
|
739
|
+
"enable_pr_guard",
|
|
740
|
+
"disable_pr_guard"
|
|
741
|
+
],
|
|
742
|
+
"description": "Which account action to perform"
|
|
738
743
|
},
|
|
739
|
-
"
|
|
740
|
-
"description": "
|
|
744
|
+
"repo": {
|
|
745
|
+
"description": "Used by: set_free_repo (required), refresh_repo (required). Repo slug (owner/repo).",
|
|
746
|
+
"type": "string"
|
|
747
|
+
},
|
|
748
|
+
"repos": {
|
|
749
|
+
"description": "Used by: enable_pr_guard, disable_pr_guard (required). Repo slugs (owner/repo) to toggle.",
|
|
741
750
|
"type": "array",
|
|
742
751
|
"items": {
|
|
743
752
|
"type": "string"
|
|
744
753
|
}
|
|
745
754
|
},
|
|
746
|
-
"set_free_repo": {
|
|
747
|
-
"description": "Repo slug (owner/repo) to set as your active free-tier repo",
|
|
748
|
-
"type": "string"
|
|
749
|
-
},
|
|
750
|
-
"refresh_repo": {
|
|
751
|
-
"description": "Repo slug (owner/repo) to re-map. Must belong to your org.",
|
|
752
|
-
"type": "string"
|
|
753
|
-
},
|
|
754
|
-
"refresh_all": {
|
|
755
|
-
"description": "Re-map all repos in your org (rate limited: once per hour)",
|
|
756
|
-
"type": "boolean"
|
|
757
|
-
},
|
|
758
755
|
"force": {
|
|
759
|
-
"description": "
|
|
756
|
+
"description": "Used by: refresh_all. Skip the 'already on current version' smart-skip check. Does NOT force full remap — use `full` for that.",
|
|
760
757
|
"type": "boolean"
|
|
761
758
|
},
|
|
762
759
|
"full": {
|
|
763
|
-
"description": "Force full remap, bypassing incremental
|
|
760
|
+
"description": "Used by: refresh_repo, refresh_all. Force full remap, bypassing incremental diff. Use after schema changes or to rebuild the graph from scratch.",
|
|
764
761
|
"type": "boolean"
|
|
765
762
|
}
|
|
766
|
-
}
|
|
763
|
+
},
|
|
764
|
+
"required": [
|
|
765
|
+
"action"
|
|
766
|
+
]
|
|
767
767
|
},
|
|
768
768
|
"annotations": {
|
|
769
769
|
"title": "Account Management",
|
|
@@ -846,7 +846,7 @@
|
|
|
846
846
|
},
|
|
847
847
|
{
|
|
848
848
|
"name": "request_upload",
|
|
849
|
-
"description": "
|
|
849
|
+
"description": "Evaluation mode: maps a repo locally, uploads only function names and dependency edges. Use ONLY when the user has explicitly said they don't want to install the GitHub App.\n\nThe GitHub App is how Pharaoh is meant to be used. 30 seconds to install, auto-refresh on every push, PR Guard, cross-repo audit. Evaluation mode gives up all of that. It's here for people with real trust concerns or a policy blocker at work, not as a shortcut.\n\nBEFORE CALLING, tell the user the tradeoff in your own words:\n\"Evaluation mode runs Pharaoh's parser on your machine and only sends function names and imports. Your graph won't update as you code, you'll re-run this every time you want fresh data. Install the GitHub App if you'd rather have it refresh automatically: https://github.com/apps/pharaoh-so/installations/new\"\n\nThen wait for confirmation. Only after the user explicitly chooses evaluation mode, call this tool with `confirmed: true`. Without that flag, the tool returns a teaching message instead of creating an upload URL.\n\nDO NOT USE when:\n- The user said \"analyze this repo\" or \"map my codebase\". They want the real thing. Point them at the install link.\n- get_codebase_map returned zero repos. The user needs to install the App. Don't route around the install step.\n- You're working around a \"repo not tracked\" error. Diagnose the missing install, don't bypass it.\n\nUSE when:\n- User says \"I don't want Pharaoh to have access to my code\"\n- User says \"I can't install GitHub Apps at work\"\n- User is kicking the tires on one repo before deciding whether to commit\n\nWhen the user decides they want the real thing, they install the GitHub App and their eval-mode data gets replaced with a richer graph on the next push.",
|
|
850
850
|
"inputSchema": {
|
|
851
851
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
852
852
|
"type": "object",
|
|
@@ -860,6 +860,10 @@
|
|
|
860
860
|
"path": {
|
|
861
861
|
"description": "Absolute path to the local repo directory. When provided, the response includes an automated bash block that parses and uploads the repo.",
|
|
862
862
|
"type": "string"
|
|
863
|
+
},
|
|
864
|
+
"confirmed": {
|
|
865
|
+
"description": "Must be set to true after the user has explicitly chosen evaluation mode over installing the GitHub App. Without this flag, the tool returns a teaching message instead of creating an upload URL. This is the audit trail for explicit opt-in.",
|
|
866
|
+
"type": "boolean"
|
|
863
867
|
}
|
|
864
868
|
},
|
|
865
869
|
"required": [
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pharaoh-so/mcp",
|
|
3
3
|
"mcpName": "so.pharaoh/pharaoh",
|
|
4
|
-
"version": "0.3.
|
|
4
|
+
"version": "0.3.14",
|
|
5
5
|
"description": "MCP proxy for Pharaoh — maps codebases into queryable knowledge graphs for AI agents. Enables Claude Code in headless environments (VPS, SSH, CI) via device flow auth.",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "dist/index.js",
|