Repository navigation
GML-2210 Release 1.0.4 - #6
Merged
Merged
Conversation
- Publish a registry entry pointing at the released package, so clients and directories that read the registry can discover the server Refs: GML-2206
- Offer the repository as a plugin marketplace, so installing takes two commands instead of a package install and two hand-written files - Collect the connection details on a prompt, keeping the password and API token out of a file on disk and changeable without reinstalling - Let the caller narrow which tools the server offers when installing - Check at build time that the version agrees everywhere it is declared Refs: GML-2207
- Name the tigergraph-mcp version in the MCP handshake, where the SDK's version was reported before, so a session can be traced to a release Refs: GML-2207
- Accept values for the parameters an interpreted query declares, so an agent no longer has to write them into the query text Refs: GML-2304
- Let a caller set a time limit, response size cap, thread and memory limits, and replica when running an installed query - Accept any vertex ID in neighbor and degree lookups, and reject type names that are not valid identifiers before anything runs Refs: GML-2305, GML-2306
- Raise the minimum pyTigerGraph version so interpreted-query parameter values with spaces, quotes, or symbols reach the query unchanged Refs: GML-2310
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Release 1.0.4. Full detail in
CHANGELOG.md.Added
claude plugin marketplace add tigergraph/tigergraph-mcpfollowed byclaude plugin install tigergraph@tigergraphreplaces the three manual steps the docs previously prescribed: installing the package, writing a.env, and hand-writing an MCP client config. Claude Code prompts for the TigerGraph host and credentials, holds the password and API token in secure storage rather than a file on disk, and launches the server withuvx. Connection details can be changed later through Configure options without reinstalling. Requiresuvon the PATH; the existing pip and conda installs are unaffected.server.jsondescribes the published PyPI package, so MCP clients and directories that consume the registry can discover the server. Ownership is proven by a token in the README, which becomes the PyPI description.serverInfonow carries the tigergraph-mcp version rather than the SDK's, so a session can be traced to a release. The SDK constructor is probed rather than assumed, since the 1.x and 2.x signatures differ.run_queryaccepts parameters — a newparamsargument supplies values for the parameters an interpreted query declares, such asINTERPRET QUERY (INT top_k) …with{"top_k": 5}. TigerGraph's endpoint always accepted them, but the tool offered no way to pass them.run_installed_querycan bound a query's time and resources — newtimeout_ms,size_limit_bytes,thread_limit,memory_limit_mb, andreplicaarguments.Changed
pyTigerGraphversion raised to2.0.5(was2.0.4). Earlier versions garblerun_queryparameter values that contain spaces, quotes,&,%,#, or non-ASCII characters.Fixed
get_neighborsandget_node_degreehandle any vertex ID — an ID containing a double quote broke the generated query, and text after the quote was run as GSQL. IDs are now escaped, and invalid type names are rejected before anything runs.Notes for operators
The plugin offers the same tool selection shipped in 1.0.3: an optional field at install time accepts the
--allowed-toolsselectors, and leaving it empty offers all 69 tools. Serving only the tools that read cuts what an agent carries on every request by more than half.In permission rules, a skill's
allowed-tools, or a hook matcher, the plugin's server is namedplugin:tigergraph:tigergraph. A pattern likemcp__tigergraph__.*does not match a plugin-provided server.Release order
The plugin pins the package version it launches, so it only works once 1.0.4 is on PyPI. The publish order is tag, PyPI, conda, then the registry entry.
Verification
641 unit tests pass on pyTigerGraph 2.0.5. Against a live TigerGraph instance, through the MCP server:
run_queryparameters round-trip exactly, including a STRING with%,&,#, quotes and non-ASCII, a 64-bit INT above 2^53, and a VERTEX whose ID contains spaces.get_node_degreeresolves an ID with spaces, andget_neighborsrejects an injected edge type before running anything.run_installed_queryruns with time, memory, and thread limits, and the server enforcessize_limit_bytes.The end-to-end MCP workflow test passes at
d528f32against a live instance.Refs: GML-2206, GML-2207, GML-2304, GML-2305, GML-2306, GML-2310