Symvanta
Qué hace este MCP
Indexes GitHub repositories into a code graph for symbol lookup, dependency and caller analysis, architecture questions, change impact, source access, and repository history.
Herramientas
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['owner', 'repo_name'], 'properties': {'owner': {'type': 'string', 'pattern': '^[a-zA-Z0-9\\-_.]+$', 'maxLength': 255, 'minLength': 1, 'description': 'GitHub owner (user or org)'}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'repo_name': {'type': 'string', 'pattern': '^[a-zA-Z0-9\\-_.]+$', 'maxLength': 255, 'minLength': 1, 'description': 'Repository name'}, 'default_branch': {'type': 'string', 'maxLength': 255, 'minLength': 1, 'description': 'Default branch (default main)'}, 'installation_id': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'Private repository: id of a GitHub App installation from list_installations that covers it. Refused (installation_lacks_repository) when the installation does not grant access.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['op'], 'properties': {'id': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'update: record id (from adr list or find_node decisions).'}, 'op': {'enum': ['record', 'list', 'update'], 'type': 'string', 'description': 'record: create a decision record. list: read records. update: amend or supersede one.'}, 'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'list: max records (default 20).'}, 'title': {'type': 'string', 'maxLength': 200, 'minLength': 3, 'description': 'record: short imperative title, e.g. "No pgvector".'}, 'status': {'enum': ['proposed', 'accepted', 'superseded', 'deprecated'], 'type': 'string', 'description': 'record/update: lifecycle status.'}, 'context': {'type': 'string', 'maxLength': 20000, 'description': 'Why (constraints, alternatives rejected).'}, 'decision': {'type': 'string', 'maxLength': 20000, 'minLength': 3, 'description': 'record: what was decided.'}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'filePath': {'type': 'string', 'maxLength': 2000, 'minLength': 1, 'description': 'Anchor: repo-relative file path.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Repository full name, e.g. "owner/repo". Omit when the project has one repository.'}, 'symbolPath': {'type': 'string', 'maxLength': 2000, 'minLength': 1, 'description': 'Anchor: symbolPath as find_node / locate returns.'}, 'consequences': {'type': 'string', 'maxLength': 20000, 'description': 'Trade-offs accepted.'}, 'supersededById': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'update: id of the replacement record.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'limit': {'type': 'integer', 'default': 10, 'maximum': 30, 'minimum': 1, 'description': 'Max candidate symbols fed to synthesis (default 10, max 30).'}, 'query': {'type': 'string', 'minLength': 1, 'description': 'Alias of question.'}, 'scope': {'enum': ['repo', 'all'], 'type': 'string', 'default': 'repo', 'description': 'repo (default) = single-repo. all = cross-repo; repositoryIds narrows, omit spans all.'}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'question': {'type': 'string', 'minLength': 1, 'description': 'The behavior question, e.g. "how does X work".'}, 'commitSha': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,40}$', 'description': 'Pin reads to one indexed revision (7-40 hex). Graph tools error with revision_not_indexed when it is not an indexed revision of the scoped repository, or revision_not_servable when that revision\'s graph was superseded by a later reindex, and echo the revision served back as commitSha; source ops read git objects, so any commit works there. Exception: a kept revision (revisions rows flagged architectureSnapshot) still serves map view:"architecture" as a preserved snapshot.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Repository full name, e.g. "owner/repo". Omit when the project has one repository.'}, 'repositoryIds': {'type': 'array', 'items': {'type': 'string', 'minLength': 1, 'description': 'Encoded repository id from list_repositories.'}, 'maxItems': 50, 'minItems': 1, 'description': 'scope:all only. Restrict to these encoded repository ids.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['calls'], 'properties': {'calls': {'type': 'array', 'items': {'type': 'object', 'required': ['tool', 'args'], 'properties': {'args': {'type': 'object', 'description': 'Arguments for the call', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'tool': {'type': 'string', 'minLength': 1, 'description': 'Tool name to call'}}}, 'maxItems': 10, 'minItems': 1, 'description': "Calls to run in parallel; each uses the bundle's project/repository scope unless its args.repository names another one."}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'commitSha': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,40}$', 'description': 'Pin reads to one indexed revision (7-40 hex). Graph tools error with revision_not_indexed when it is not an indexed revision of the scoped repository, or revision_not_servable when that revision\'s graph was superseded by a later reindex, and echo the revision served back as commitSha; source ops read git objects, so any commit works there. Exception: a kept revision (revisions rows flagged architectureSnapshot) still serves map view:"architecture" as a preserved snapshot.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Repository full name, e.g. "owner/repo". Omit when the project has one repository.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['task'], 'properties': {'task': {'type': 'string', 'maxLength': 1024, 'minLength': 3, 'description': 'Natural-language task. Returns ranked files with symbols and matching snippets, no LLM call.'}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'commitSha': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,40}$', 'description': 'Pin reads to one indexed revision (7-40 hex). Graph tools error with revision_not_indexed when it is not an indexed revision of the scoped repository, or revision_not_servable when that revision\'s graph was superseded by a later reindex, and echo the revision served back as commitSha; source ops read git objects, so any commit works there. Exception: a kept revision (revisions rows flagged architectureSnapshot) still serves map view:"architecture" as a preserved snapshot.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Repository full name, e.g. "owner/repo". Omit when the project has one repository.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['name'], 'properties': {'name': {'type': 'string', 'maxLength': 255, 'minLength': 1, 'description': 'Project name. The slug is derived from it and made unique within the workspace.'}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'base': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,40}$', 'description': 'Base revision (7-40 hex). Omit for the previous indexed.'}, 'head': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,40}$', 'description': "Head revision (7-40 hex). Omit for the session's effective revision."}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Repository full name, e.g. "owner/repo". Omit when the project has one repository.'}, 'expansionLimit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Cap on impacted nodes (default 25); totals always reported.'}, 'includeCrossRepo': {'type': 'boolean', 'description': 'Include cross-repo fallout (default true).'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['description'], 'properties': {'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'description': {'type': 'string', 'maxLength': 2000, 'minLength': 3, 'description': 'Natural-language description of the intended change.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['path'], 'properties': {'path': {'type': 'string', 'minLength': 1, 'description': 'Route path, e.g. "/api/users/:id". Partial paths match.'}, 'method': {'type': 'string', 'minLength': 1, 'description': 'HTTP method filter, e.g. GET or POST.'}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'commitSha': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,40}$', 'description': 'Pin reads to one indexed revision (7-40 hex). Graph tools error with revision_not_indexed when it is not an indexed revision of the scoped repository, or revision_not_servable when that revision\'s graph was superseded by a later reindex, and echo the revision served back as commitSha; source ops read git objects, so any commit works there. Exception: a kept revision (revisions rows flagged architectureSnapshot) still serves map view:"architecture" as a preserved snapshot.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Repository full name, e.g. "owner/repo". Omit when the project has one repository.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['selectors'], 'properties': {'limit': {'type': 'integer', 'default': 5, 'maximum': 20, 'minimum': 1, 'description': 'Max results (default 5, max 20).'}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'commitSha': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,40}$', 'description': 'Pin reads to one indexed revision (7-40 hex). Graph tools error with revision_not_indexed when it is not an indexed revision of the scoped repository, or revision_not_servable when that revision\'s graph was superseded by a later reindex, and echo the revision served back as commitSha; source ops read git objects, so any commit works there. Exception: a kept revision (revisions rows flagged architectureSnapshot) still serves map view:"architecture" as a preserved snapshot.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'selectors': {'type': 'array', 'items': {'type': 'object', 'properties': {'nodeId': {'type': 'string', 'minLength': 1, 'description': 'Graph node id from a prior result.'}, 'symbol': {'type': 'string', 'minLength': 1, 'description': 'Symbol name, e.g. a function or class name.'}, 'filePath': {'type': 'string', 'minLength': 1, 'description': 'Repo-relative file path holding the symbol.'}, 'symbolPath': {'type': 'string', 'minLength': 1, 'description': 'Full symbolPath as find_node/locate returns.'}}}, 'maxItems': 10, 'minItems': 1, 'description': 'Symbols to resolve (1-10), each by nodeId, symbol, symbolPath, or filePath.'}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Repository full name, e.g. "owner/repo". Omit when the project has one repository.'}, 'sourceMode': {'enum': ['none', 'signature'], 'type': 'string', 'description': 'With includeSource: "signature" returns the declaration only.'}, 'includeSource': {'type': 'boolean', 'default': False, 'description': 'Attach source for resolved nodes.'}, 'expansionLimit': {'type': 'integer', 'default': 15, 'maximum': 100, 'minimum': 1, 'description': 'Cap on expanded related nodes (default 15, max 100).'}, 'includeHeritage': {'type': 'boolean', 'default': True, 'description': 'Default true. Include a compact heritage field for a class/interface/struct/protocol. false skips it on bulk scans.'}, 'includeCommunity': {'type': 'boolean', 'default': False, 'description': "Attach the symbol's Louvain module (community name). Off by default (extra edge lookup)."}, 'includeCrossRepo': {'type': 'boolean', 'default': False, 'description': 'With includeHeritage on, walk cross-repo heritage edges. No-op when includeHeritage is off.'}, 'includeSummaries': {'type': 'boolean', 'default': False, 'description': 'Attach generated summaries when available.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Repository full name, e.g. "owner/repo". Omit when the project has one repository.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['op'], 'properties': {'op': {'enum': ['commits', 'commit', 'recently_changed'], 'type': 'string', 'description': 'commits: recent commits (metadata + file list). commit: one commit in detail. recently_changed: most-changed files over the window.'}, 'sha': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,64}$', 'description': 'op:commit. The commit to read (7-64 hex).'}, 'path': {'type': 'string', 'description': 'Restrict to commits touching this repo-relative path.'}, 'limit': {'type': 'integer', 'maximum': 200, 'minimum': 1, 'description': 'Max rows (default 50, max 200).'}, 'since': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$', 'description': 'ISO datetime lower bound.'}, 'until': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$', 'description': 'ISO datetime upper bound.'}, 'author': {'type': 'string', 'description': 'Filter by author name or email substring.'}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Repository full name, e.g. "owner/repo". Omit when the project has one repository.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Repository full name, e.g. "owner/repo". Omit when the project has one repository.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'repository': {'type': 'string', 'maxLength': 512, 'minLength': 1, 'description': 'The checkout\'s GitHub remote as "owner/name" (a clone URL is accepted). Binds the session to the project holding it; workspace.attached=false means it is not indexed.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['op'], 'properties': {'op': {'enum': ['packages', 'version'], 'type': 'string', 'description': "packages: list indexed packages. version: resolve one specifier's indexed version."}, 'limit': {'type': 'integer', 'default': 50, 'maximum': 200, 'minimum': 1, 'description': 'op:packages. Max rows (default 50, max 200).'}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'specifier': {'type': 'string', 'maxLength': 255, 'minLength': 1, 'description': 'op:version. Package specifier, e.g. "react".'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['filePath'], 'properties': {'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'filePath': {'type': 'string', 'minLength': 1, 'description': 'Repo-relative file path to list symbols for.'}, 'commitSha': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,40}$', 'description': 'Pin reads to one indexed revision (7-40 hex). Graph tools error with revision_not_indexed when it is not an indexed revision of the scoped repository, or revision_not_servable when that revision\'s graph was superseded by a later reindex, and echo the revision served back as commitSha; source ops read git objects, so any commit works there. Exception: a kept revision (revisions rows flagged architectureSnapshot) still serves map view:"architecture" as a preserved snapshot.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Repository full name, e.g. "owner/repo". Omit when the project has one repository.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['selector'], 'properties': {'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'selector': {'type': 'string', 'minLength': 1, 'description': 'Symbol name to match against test suite names.'}, 'commitSha': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,40}$', 'description': 'Pin reads to one indexed revision (7-40 hex). Graph tools error with revision_not_indexed when it is not an indexed revision of the scoped repository, or revision_not_servable when that revision\'s graph was superseded by a later reindex, and echo the revision served back as commitSha; source ops read git objects, so any commit works there. Exception: a kept revision (revisions rows flagged architectureSnapshot) still serves map view:"architecture" as a preserved snapshot.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Repository full name, e.g. "owner/repo". Omit when the project has one repository.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'kind': {'enum': ['module', 'class', 'function', 'interface', 'endpoint', 'schema', 'struct', 'enum', 'protocol', 'actor', 'extension', 'initializer', 'property', 'package', 'product', 'target', 'project', 'workspace', 'test_suite', 'test_case', 'test_hook', 'community', 'cycle', 'resource'], 'type': 'string', 'description': 'mode:symbol. Filter by node kind.'}, 'mode': {'enum': ['text', 'symbol', 'semantic', 'file', 'config', 'codebase'], 'type': 'string', 'description': 'Force a mode. Omit + bare query = AUTO-ROUTE (text, then semantic on empty). queries without a mode implies text.'}, 'name': {'type': 'string', 'minLength': 1, 'description': 'mode:file. Filename fragment; defaults to query.'}, 'layer': {'type': 'string', 'maxLength': 32, 'minLength': 1, 'description': 'mode:symbol. Scope to one layer (e.g. browser, node, common, test).'}, 'limit': {'type': 'integer', 'default': 20, 'maximum': 200, 'minimum': 1, 'description': 'Max results. Per-mode caps apply (text 200/20, symbol 20, semantic 5, file 10, config 20/20, codebase 20/10).'}, 'query': {'type': 'string', 'minLength': 1, 'description': 'Search term or NL query. Required for symbol/semantic/codebase; text/config: query or queries; file: query or name.'}, 'queries': {'type': 'array', 'items': {'type': 'string', 'minLength': 1}, 'maxItems': 10, 'minItems': 1, 'description': 'text/config. Up to 10 terms; interleaved, deduped, each tagged matchedQuery. Without an explicit mode, implies mode:text. Accepts a JSON-array string.'}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'commitSha': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,40}$', 'description': 'Pin an indexed revision (text/symbol/semantic/config; ignored by file/codebase).'}, 'pathsOnly': {'type': 'boolean', 'description': 'mode:text. "filePath:lineNumber" only, no snippets (~5x fewer tokens).'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'maxPerFile': {'type': 'integer', 'default': 5, 'maximum': 1000, 'minimum': 0, 'description': 'mode:text. Cap occurrences/file (default 5; capped file carries moreInFileTruncated). 0 = uncapped.'}, 'pathPrefix': {'type': 'string', 'minLength': 1, 'description': 'text/symbol/config. Restrict to paths under this prefix.'}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Single-repo scope (not codebase; that is project-wide, use repositoryIds).'}, 'includeTests': {'type': 'boolean', 'default': False, 'description': 'text/symbol/semantic. Include test files. Default false ranks them last; auto-on for test queries.'}, 'repositoryIds': {'type': 'array', 'items': {'type': 'string', 'minLength': 1, 'description': 'Encoded repository id from list_repositories.'}, 'maxItems': 50, 'minItems': 1, 'description': 'mode:codebase. Narrow to these repository ids; omit to scan all.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'path': {'type': 'string', 'minLength': 1, 'description': 'Repo-relative subtree (e.g. "src/v1/mcp"). Omit for the whole repo.'}, 'view': {'enum': ['tree', 'architecture'], 'type': 'string', 'description': '"tree" (default): file/symbol skeleton. "architecture": module map with hubs, coupling, cycles. Module names come from generated summaries: cite a module by its id (the member-set hash printed in the header), which is stable across calls and reindexes.'}, 'density': {'enum': ['compact', 'full'], 'type': 'string', 'description': '"compact" (default): classes/methods/functions/endpoints. "full" adds properties.'}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'maxDepth': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Drop files deeper than this many path segments. Omit for no cap.'}, 'commitSha': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,40}$', 'description': 'Pin reads to one indexed revision (7-40 hex). Graph tools error with revision_not_indexed when it is not an indexed revision of the scoped repository, or revision_not_servable when that revision\'s graph was superseded by a later reindex, and echo the revision served back as commitSha; source ops read git objects, so any commit works there. Exception: a kept revision (revisions rows flagged architectureSnapshot) still serves map view:"architecture" as a preserved snapshot.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Repository full name, e.g. "owner/repo". Omit when the project has one repository.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'maximum': 20, 'minimum': 1, 'description': 'Max results (max 20).'}, 'query': {'type': 'string', 'minLength': 1, 'description': 'Substring to match against symbol names (no ranking).'}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Repository full name, e.g. "owner/repo". Omit when the project has one repository.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['op'], 'properties': {'op': {'enum': ['use', 'clear', 'index_working_tree', 'use_project', 'clear_project'], 'type': 'string', 'description': 'use: pin reads to a tracked branch. clear: revert to the default branch. index_working_tree: overlay uncommitted edits on a synthetic revision and pin it. use_project: bind this session to projectId so calls without projectId resolve there. clear_project: revert to the workspace default project.'}, 'branch': {'type': 'string', 'maxLength': 255, 'minLength': 1, 'description': 'op:use. The tracked branch to pin.'}, 'baseSha': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,40}$', 'description': 'Indexed base your edits sit on. Omit for the default-branch tip.'}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Repository full name, e.g. "owner/repo". Omit when the project has one repository.'}, 'changedFiles': {'type': 'array', 'items': {'type': 'object', 'required': ['path', 'content'], 'properties': {'path': {'type': 'string', 'maxLength': 1024, 'minLength': 1, 'description': 'Repo-relative file path.'}, 'content': {'type': 'string', 'maxLength': 262144, 'description': 'Full current file content.'}}}, 'maxItems': 100, 'minItems': 1, 'description': 'Changed/added files with current contents, repo-relative paths.'}, 'deletedPaths': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1024, 'minLength': 1}, 'maxItems': 200, 'description': 'Repo-relative deleted paths.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['repositoryId'], 'properties': {'force': {'type': 'boolean', 'description': 'Re-parse every file AND re-run the SCIP indexer subprocesses even if unchanged at HEAD (for a parser fix without a version bump)'}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'commit_sha': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,40}$', 'description': 'Pin to a commit (omit for latest)'}, 'repositoryId': {'type': 'string', 'minLength': 1, 'description': 'Encoded repository ID (from list_repositories/add_repository)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'kind': {'enum': ['callers', 'dependencies', 'blast_radius', 'implementers', 'heritage', 'chain', 'path'], 'type': 'string', 'default': 'callers', 'description': 'Relationship to traverse. See the tool description for each kind.'}, 'depth': {'type': 'integer', 'maximum': 6, 'minimum': 1, 'description': 'chain. Chain length.'}, 'limit': {'type': 'integer', 'default': 5, 'maximum': 20, 'minimum': 1, 'description': 'Per-selector candidate cap (not heritage/chain).'}, 'intent': {'type': 'string', 'maxLength': 200, 'minLength': 1, 'description': 'Rerank by trigram similarity (not heritage/chain).'}, 'nodeId': {'type': 'string', 'minLength': 1, 'description': 'Start node for chain (OR selectors[0]).'}, 'minimal': {'type': 'boolean', 'default': False, 'description': '{id,name,filePath,startLine}-only, ~50% cheaper; not heritage/chain.'}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'maxDepth': {'type': 'integer', 'maximum': 10, 'minimum': 1, 'description': 'Max depth for heritage; also caps the kind:path walk (clamped to <=6).'}, 'maxPaths': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'chain. Cap on returned paths.'}, 'commitSha': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,40}$', 'description': 'Pin reads to one indexed revision (7-40 hex). Graph tools error with revision_not_indexed when it is not an indexed revision of the scoped repository, or revision_not_servable when that revision\'s graph was superseded by a later reindex, and echo the revision served back as commitSha; source ops read git objects, so any commit works there. Exception: a kept revision (revisions rows flagged architectureSnapshot) still serves map view:"architecture" as a preserved snapshot.'}, 'direction': {'enum': ['upstream', 'downstream', 'both'], 'type': 'string', 'default': 'both', 'description': "chain. 'downstream' leaves, 'upstream' entry points, 'both' (default)."}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'selectors': {'type': 'array', 'items': {'type': 'object', 'properties': {'nodeId': {'type': 'string', 'minLength': 1, 'description': 'Graph node id from a prior result.'}, 'symbol': {'type': 'string', 'minLength': 1, 'description': 'Symbol name, e.g. a function or class name.'}, 'filePath': {'type': 'string', 'minLength': 1, 'description': 'Repo-relative file path holding the symbol.'}, 'symbolPath': {'type': 'string', 'minLength': 1, 'description': 'Full symbolPath as find_node/locate returns.'}}}, 'maxItems': 10, 'minItems': 1, 'description': 'Symbols to traverse from (1-10). heritage uses selectors[0]; chain: OR nodeId.'}, 'edgeFilter': {'enum': ['calls', 'imports', 'calls_imports'], 'type': 'string', 'default': 'calls_imports', 'description': "chain. 'calls' | 'imports' | 'calls_imports' (default)."}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Repository full name, e.g. "owner/repo". Omit when the project has one repository.'}, 'granularity': {'enum': ['file', 'site'], 'type': 'string', 'default': 'file', 'description': "callers/blast_radius. 'file' one row/file, 'site' one row/node."}, 'expansionLimit': {'type': 'integer', 'default': 15, 'maximum': 100, 'minimum': 1, 'description': 'Caps returned count (not heritage/chain). Default 15.'}, 'landmarkFilter': {'type': 'string', 'maxLength': 200, 'minLength': 1, 'description': 'chain. Keep only paths through a node matching this.'}, 'terminalFilter': {'type': 'string', 'maxLength': 200, 'minLength': 1, 'description': 'chain. Restrict to paths ending at a node matching this.'}, 'includeCrossRepo': {'type': 'boolean', 'description': 'Walk cross-repo edges. Default true for blast_radius, false otherwise.'}, 'staysWithinClass': {'type': 'boolean', 'description': 'chain. Surface intra-class dispatch order.'}, 'pruneSetupMethods': {'type': 'boolean', 'description': 'chain. Drop framework bootstrap steps.'}, 'followPolymorphism': {'type': 'boolean', 'description': 'chain. Walk polymorphic dispatch edges (default false; untraversed hops in polymorphicBranchPoints).'}, 'minimalImplementers': {'type': 'boolean', 'default': False, 'description': 'Alias of minimal for implementers.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'op': {'enum': ['read', 'list', 'grep', 'tree', 'stat', 'blame', 'diff'], 'type': 'string', 'description': 'See the tool description for each op. Omitted: inferred from the other args (pattern -> grep, fromSha/toSha -> diff, filePath/path -> read, nothing -> list).'}, 'glob': {'type': 'string', 'description': 'grep: limit to files matching this glob.'}, 'path': {'type': 'string', 'description': 'list/tree/diff: dir path in the repo (default root). On read/stat/blame it is read as filePath, on grep as pathPrefix.'}, 'limit': {'type': 'integer', 'maximum': 500, 'minimum': 1, 'description': 'grep: max matches.'}, 'query': {'type': 'string', 'minLength': 1, 'description': 'grep: alias for pattern.'}, 'toSha': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,40}$', 'description': 'diff: target commit (required), reachable from the indexed branch.'}, 'ifHash': {'type': 'string', 'minLength': 1, 'description': "read: a prior read's hash; if it still matches, returns {unchanged:true}, no content."}, 'compact': {'type': 'boolean', 'default': False, 'description': 'read: strip blank/comment-only lines (heuristic; content no longer maps 1:1 to lines).'}, 'endLine': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'read/blame: last line, 1-based.'}, 'fromSha': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,40}$', 'description': 'diff: base commit (required), reachable from the indexed branch.'}, 'pattern': {'type': 'string', 'minLength': 1, 'description': 'grep: ripgrep pattern (required; `query` is accepted as an alias).'}, 'feedback': {'type': 'object', 'required': ['answerId', 'outcome'], 'properties': {'outcome': {'enum': ['useful', 'dead_end', 'corrected'], 'type': 'string', 'description': 'How the answer worked out.'}, 'answerId': {'type': 'string', 'maxLength': 36, 'minLength': 36, 'description': 'answer_id from a previous ask_codebase response'}, 'correction': {'type': 'string', 'maxLength': 2000, 'description': 'Only when the user corrected the answer'}}, 'description': 'Optional: report how a previous answer worked out; piggybacks on any call.'}, 'filePath': {'type': 'string', 'minLength': 1, 'description': 'read/stat/blame: the file to open (required; `path` is accepted as an alias).'}, 'maxDepth': {'type': 'integer', 'maximum': 10, 'minimum': 1, 'description': 'tree: max recursion depth, default 3.'}, 'commitSha': {'type': 'string', 'pattern': '^[0-9a-fA-F]{7,40}$', 'description': 'Pin reads to one indexed revision (7-40 hex). Graph tools error with revision_not_indexed when it is not an indexed revision of the scoped repository, or revision_not_servable when that revision\'s graph was superseded by a later reindex, and echo the revision served back as commitSha; source ops read git objects, so any commit works there. Exception: a kept revision (revisions rows flagged architectureSnapshot) still serves map view:"architecture" as a preserved snapshot.'}, 'projectId': {'type': 'string', 'minLength': 1, 'description': 'Project id from init/list_projects. Omit for the active project.'}, 'startLine': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'read/blame: first line, 1-based.'}, 'pathPrefix': {'type': 'string', 'description': 'grep: limit to files under this prefix.'}, 'repository': {'type': 'string', 'minLength': 1, 'description': 'Repository full name, e.g. "owner/repo". Omit when the project has one repository.'}}}
Cambios recientes en herramientas
Servidores MCP similares
Thousand API
Provides deterministic data conversion, validation, JSON transformation, statistical calculations, date and schedule utilities, i…
HubVibe: Pay-per-Call Tools for AI Agents: Web Search, Email Verify, KYC, Stocks, Crypto, News, Data
Offers paid utilities for web audits, HTTP fetching and extraction, BigQuery analysis, LLM processing, code execution, blockchain…
Blixtworks
Offers pay-per-call utilities for text, image processing and analysis, data conversion, validation, web inspection, cryptography,…
Qiniso
Provides deterministic formatting, parsing, holiday and tax lookups, address handling, and checksum or structure validation for i…
Scalix Cloud
Provides managed databases, SQL tools, container builds, persistent Linux machines, domains, scheduled functions, storage, and pr…
RationalBloks
Creates, deploys, manages, and searches schema-based REST API projects and Neo4j knowledge graphs across staging and production e…
RationalBloks
Creates, deploys, manages, and queries REST API and Neo4j graph projects from JSON schemas, including graph data modeling, versio…
Wakatime
Provides WakaTime coding-activity data, including durations, projects, commits, goals, heartbeats, editor usage, leaders, and use…