mcp-code-indexer 3.1.1__tar.gz → 3.1.3__tar.gz
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.
- {mcp_code_indexer-3.1.1/src/mcp_code_indexer.egg-info → mcp_code_indexer-3.1.3}/PKG-INFO +3 -3
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/README.md +2 -2
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/pyproject.toml +1 -1
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/database/database.py +1 -58
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/git_hook_handler.py +1 -7
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/server/mcp_server.py +10 -28
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3/src/mcp_code_indexer.egg-info}/PKG-INFO +3 -3
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/LICENSE +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/MANIFEST.in +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/docs/api-reference.md +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/docs/architecture.md +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/docs/configuration.md +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/docs/contributing.md +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/docs/database-resilience.md +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/docs/git-hook-setup.md +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/docs/monitoring.md +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/docs/performance-tuning.md +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/requirements.txt +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/setup.cfg +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/setup.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/__init__.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/__main__.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/ask_handler.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/claude_api_handler.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/cleanup_manager.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/data/stop_words_english.txt +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/database/__init__.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/database/connection_health.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/database/exceptions.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/database/models.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/database/retry_executor.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/deepask_handler.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/error_handler.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/file_scanner.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/logging_config.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/main.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/middleware/__init__.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/middleware/error_middleware.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/migrations/001_initial.sql +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/migrations/002_performance_indexes.sql +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/migrations/003_project_overviews.sql +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/migrations/004_remove_branch_dependency.sql +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/migrations/005_remove_git_remotes.sql +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/query_preprocessor.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/server/__init__.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/tiktoken_cache/9b5ad71b2ce5302211f9c61530b329a4922fc6a4 +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/token_counter.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/tools/__init__.py +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer.egg-info/SOURCES.txt +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer.egg-info/dependency_links.txt +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer.egg-info/entry_points.txt +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer.egg-info/requires.txt +0 -0
- {mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: mcp-code-indexer
|
3
|
-
Version: 3.1.
|
3
|
+
Version: 3.1.3
|
4
4
|
Summary: MCP server that tracks file descriptions across codebases, enabling AI agents to efficiently navigate and understand code through searchable summaries and token-aware overviews.
|
5
5
|
Author: MCP Code Indexer Contributors
|
6
6
|
Maintainer: MCP Code Indexer Contributors
|
@@ -59,8 +59,8 @@ Dynamic: requires-python
|
|
59
59
|
|
60
60
|
# MCP Code Indexer 🚀
|
61
61
|
|
62
|
-
[](https://badge.fury.io/py/mcp-code-indexer)
|
63
|
+
[](https://pypi.org/project/mcp-code-indexer/)
|
64
64
|
[](https://opensource.org/licenses/MIT)
|
65
65
|
|
66
66
|
A production-ready **Model Context Protocol (MCP) server** that revolutionizes how AI agents navigate and understand codebases. Built for high-concurrency environments with advanced database resilience, the server provides instant access to intelligent descriptions, semantic search, and context-aware recommendations while maintaining 800+ writes/sec throughput.
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# MCP Code Indexer 🚀
|
2
2
|
|
3
|
-
[](https://badge.fury.io/py/mcp-code-indexer)
|
4
|
+
[](https://pypi.org/project/mcp-code-indexer/)
|
5
5
|
[](https://opensource.org/licenses/MIT)
|
6
6
|
|
7
7
|
A production-ready **Model Context Protocol (MCP) server** that revolutionizes how AI agents navigate and understand codebases. Built for high-concurrency environments with advanced database resilience, the server provides instant access to intelligent descriptions, semantic search, and context-aware recommendations while maintaining 800+ writes/sec throughput.
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
4
4
|
|
5
5
|
[project]
|
6
6
|
name = "mcp-code-indexer"
|
7
|
-
version = "3.1.
|
7
|
+
version = "3.1.3"
|
8
8
|
description = "MCP server that tracks file descriptions across codebases, enabling AI agents to efficiently navigate and understand code through searchable summaries and token-aware overviews."
|
9
9
|
readme = "README.md"
|
10
10
|
license = {text = "MIT"}
|
@@ -910,64 +910,7 @@ class DatabaseManager:
|
|
910
910
|
row = await cursor.fetchone()
|
911
911
|
return row['count'] if row else 0
|
912
912
|
|
913
|
-
|
914
|
-
|
915
|
-
async def inherit_from_upstream(self, project: Project, target_branch: str = "main") -> int:
|
916
|
-
"""
|
917
|
-
Inherit file descriptions from upstream repository.
|
918
|
-
|
919
|
-
Args:
|
920
|
-
project: Target project that should inherit descriptions
|
921
|
-
target_branch: Branch to inherit descriptions into
|
922
|
-
|
923
|
-
Returns:
|
924
|
-
Number of descriptions inherited
|
925
|
-
"""
|
926
|
-
if not project.upstream_origin:
|
927
|
-
return 0
|
928
|
-
|
929
|
-
# Find upstream project
|
930
|
-
upstream_project = await self.find_project_by_origin(project.upstream_origin)
|
931
|
-
if not upstream_project:
|
932
|
-
logger.debug(f"No upstream project found for {project.upstream_origin}")
|
933
|
-
return 0
|
934
|
-
|
935
|
-
# Get upstream descriptions
|
936
|
-
upstream_descriptions = await self.get_all_file_descriptions(
|
937
|
-
upstream_project.id, target_branch
|
938
|
-
)
|
939
|
-
|
940
|
-
if not upstream_descriptions:
|
941
|
-
logger.debug(f"No upstream descriptions found in branch {target_branch}")
|
942
|
-
return 0
|
943
|
-
|
944
|
-
# Get existing descriptions to avoid overwriting
|
945
|
-
existing_descriptions = await self.get_all_file_descriptions(
|
946
|
-
project.id, target_branch
|
947
|
-
)
|
948
|
-
existing_paths = {desc.file_path for desc in existing_descriptions}
|
949
|
-
|
950
|
-
# Create new descriptions for files that don't exist locally
|
951
|
-
inherited_descriptions = []
|
952
|
-
for upstream_desc in upstream_descriptions:
|
953
|
-
if upstream_desc.file_path not in existing_paths:
|
954
|
-
new_desc = FileDescription(
|
955
|
-
project_id=project.id,
|
956
|
-
branch=target_branch,
|
957
|
-
file_path=upstream_desc.file_path,
|
958
|
-
description=upstream_desc.description,
|
959
|
-
file_hash=None, # Don't copy hash as local file may differ
|
960
|
-
last_modified=datetime.utcnow(),
|
961
|
-
version=1,
|
962
|
-
source_project_id=upstream_project.id # Track inheritance source
|
963
|
-
)
|
964
|
-
inherited_descriptions.append(new_desc)
|
965
|
-
|
966
|
-
if inherited_descriptions:
|
967
|
-
await self.batch_create_file_descriptions(inherited_descriptions)
|
968
|
-
logger.info(f"Inherited {len(inherited_descriptions)} descriptions from upstream")
|
969
|
-
|
970
|
-
return len(inherited_descriptions)
|
913
|
+
|
971
914
|
|
972
915
|
|
973
916
|
|
@@ -471,8 +471,6 @@ Return ONLY a JSON object:
|
|
471
471
|
# Try to find existing project
|
472
472
|
project = await self.db_manager.find_matching_project(
|
473
473
|
project_info["projectName"],
|
474
|
-
project_info.get("remoteOrigin"),
|
475
|
-
project_info.get("upstreamOrigin"),
|
476
474
|
project_info["folderPath"]
|
477
475
|
)
|
478
476
|
|
@@ -494,8 +492,6 @@ Return ONLY a JSON object:
|
|
494
492
|
# Try to find existing project
|
495
493
|
project = await self.db_manager.find_matching_project(
|
496
494
|
project_info["projectName"],
|
497
|
-
project_info.get("remoteOrigin"),
|
498
|
-
project_info.get("upstreamOrigin"),
|
499
495
|
project_info["folderPath"]
|
500
496
|
)
|
501
497
|
|
@@ -833,9 +829,7 @@ Return ONLY a JSON object:
|
|
833
829
|
# Get or create project
|
834
830
|
project = await self.db_manager.get_or_create_project(
|
835
831
|
project_info["projectName"],
|
836
|
-
project_info["folderPath"]
|
837
|
-
project_info.get("remoteOrigin"),
|
838
|
-
project_info.get("upstreamOrigin")
|
832
|
+
project_info["folderPath"]
|
839
833
|
)
|
840
834
|
|
841
835
|
# Update file descriptions
|
@@ -248,14 +248,7 @@ class MCPCodeIndexServer:
|
|
248
248
|
"description": "Absolute path to the project folder on disk"
|
249
249
|
},
|
250
250
|
|
251
|
-
|
252
|
-
"type": "string",
|
253
|
-
"description": "Git remote origin URL if available"
|
254
|
-
},
|
255
|
-
"upstreamOrigin": {
|
256
|
-
"type": "string",
|
257
|
-
"description": "Upstream repository URL if this is a fork"
|
258
|
-
},
|
251
|
+
|
259
252
|
"filePath": {
|
260
253
|
"type": "string",
|
261
254
|
"description": "Relative path to the file from project root"
|
@@ -273,8 +266,7 @@ class MCPCodeIndexServer:
|
|
273
266
|
"properties": {
|
274
267
|
"projectName": {"type": "string", "description": "The name of the project"},
|
275
268
|
"folderPath": {"type": "string", "description": "Absolute path to the project folder on disk"},
|
276
|
-
|
277
|
-
"upstreamOrigin": {"type": "string", "description": "Upstream repository URL if this is a fork"},
|
269
|
+
|
278
270
|
"filePath": {"type": "string", "description": "Relative path to the file from project root"},
|
279
271
|
"description": {"type": "string", "description": "Detailed description of the file's contents"},
|
280
272
|
"fileHash": {"type": "string", "description": "SHA-256 hash of the file contents (optional)"}
|
@@ -291,8 +283,7 @@ class MCPCodeIndexServer:
|
|
291
283
|
"properties": {
|
292
284
|
"projectName": {"type": "string", "description": "The name of the project"},
|
293
285
|
"folderPath": {"type": "string", "description": "Absolute path to the project folder on disk"},
|
294
|
-
|
295
|
-
"upstreamOrigin": {"type": "string", "description": "Upstream repository URL if this is a fork"},
|
286
|
+
|
296
287
|
"tokenLimit": {"type": "integer", "description": "Optional token limit override (defaults to server configuration)"}
|
297
288
|
},
|
298
289
|
"required": ["projectName", "folderPath"],
|
@@ -307,8 +298,7 @@ class MCPCodeIndexServer:
|
|
307
298
|
"properties": {
|
308
299
|
"projectName": {"type": "string", "description": "The name of the project"},
|
309
300
|
"folderPath": {"type": "string", "description": "Absolute path to the project folder on disk"},
|
310
|
-
|
311
|
-
"upstreamOrigin": {"type": "string", "description": "Upstream repository URL if this is a fork"},
|
301
|
+
|
312
302
|
"limit": {"type": "integer", "description": "Maximum number of missing files to return (optional)"}
|
313
303
|
},
|
314
304
|
"required": ["projectName", "folderPath"],
|
@@ -323,8 +313,7 @@ class MCPCodeIndexServer:
|
|
323
313
|
"properties": {
|
324
314
|
"projectName": {"type": "string", "description": "The name of the project"},
|
325
315
|
"folderPath": {"type": "string", "description": "Absolute path to the project folder on disk"},
|
326
|
-
|
327
|
-
"upstreamOrigin": {"type": "string", "description": "Upstream repository URL if this is a fork"},
|
316
|
+
|
328
317
|
"query": {"type": "string", "description": "Search query (e.g., 'authentication middleware', 'database models')"},
|
329
318
|
"maxResults": {"type": "integer", "default": 20, "description": "Maximum number of results to return"}
|
330
319
|
},
|
@@ -339,9 +328,7 @@ class MCPCodeIndexServer:
|
|
339
328
|
"type": "object",
|
340
329
|
"properties": {
|
341
330
|
"projectName": {"type": "string", "description": "The name of the project"},
|
342
|
-
"folderPath": {"type": "string", "description": "Absolute path to the project folder on disk"}
|
343
|
-
"remoteOrigin": {"type": "string", "description": "Git remote origin URL if available"},
|
344
|
-
"upstreamOrigin": {"type": "string", "description": "Upstream repository URL if this is a fork"}
|
331
|
+
"folderPath": {"type": "string", "description": "Absolute path to the project folder on disk"}
|
345
332
|
},
|
346
333
|
"required": ["projectName", "folderPath"],
|
347
334
|
"additionalProperties": False
|
@@ -354,9 +341,7 @@ class MCPCodeIndexServer:
|
|
354
341
|
"type": "object",
|
355
342
|
"properties": {
|
356
343
|
"projectName": {"type": "string", "description": "The name of the project"},
|
357
|
-
"folderPath": {"type": "string", "description": "Absolute path to the project folder on disk"}
|
358
|
-
"remoteOrigin": {"type": "string", "description": "Git remote origin URL if available"},
|
359
|
-
"upstreamOrigin": {"type": "string", "description": "Upstream repository URL if this is a fork"}
|
344
|
+
"folderPath": {"type": "string", "description": "Absolute path to the project folder on disk"}
|
360
345
|
},
|
361
346
|
"required": ["projectName", "folderPath"],
|
362
347
|
"additionalProperties": False
|
@@ -404,8 +389,7 @@ src/
|
|
404
389
|
"properties": {
|
405
390
|
"projectName": {"type": "string", "description": "The name of the project"},
|
406
391
|
"folderPath": {"type": "string", "description": "Absolute path to the project folder on disk"},
|
407
|
-
|
408
|
-
"upstreamOrigin": {"type": "string", "description": "Upstream repository URL if this is a fork"},
|
392
|
+
|
409
393
|
"overview": {"type": "string", "description": "Comprehensive narrative overview of the codebase (10-30k tokens recommended)"}
|
410
394
|
},
|
411
395
|
"required": ["projectName", "folderPath", "overview"],
|
@@ -420,8 +404,7 @@ src/
|
|
420
404
|
"properties": {
|
421
405
|
"projectName": {"type": "string", "description": "The name of the project"},
|
422
406
|
"folderPath": {"type": "string", "description": "Absolute path to the project folder on disk"},
|
423
|
-
|
424
|
-
"upstreamOrigin": {"type": "string", "description": "Upstream repository URL if this is a fork"},
|
407
|
+
|
425
408
|
"limit": {"type": "integer", "default": 200, "description": "Number of top terms to return"}
|
426
409
|
},
|
427
410
|
"required": ["projectName", "folderPath"],
|
@@ -445,8 +428,7 @@ src/
|
|
445
428
|
"properties": {
|
446
429
|
"projectName": {"type": "string", "description": "The name of the project"},
|
447
430
|
"folderPath": {"type": "string", "description": "Absolute path to the project folder on disk"},
|
448
|
-
|
449
|
-
"upstreamOrigin": {"type": "string", "description": "Upstream repository URL if this is a fork"},
|
431
|
+
|
450
432
|
"searchWord": {"type": "string", "description": "Single word to search for in the overview"}
|
451
433
|
},
|
452
434
|
"required": ["projectName", "folderPath", "searchWord"],
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: mcp-code-indexer
|
3
|
-
Version: 3.1.
|
3
|
+
Version: 3.1.3
|
4
4
|
Summary: MCP server that tracks file descriptions across codebases, enabling AI agents to efficiently navigate and understand code through searchable summaries and token-aware overviews.
|
5
5
|
Author: MCP Code Indexer Contributors
|
6
6
|
Maintainer: MCP Code Indexer Contributors
|
@@ -59,8 +59,8 @@ Dynamic: requires-python
|
|
59
59
|
|
60
60
|
# MCP Code Indexer 🚀
|
61
61
|
|
62
|
-
[](https://badge.fury.io/py/mcp-code-indexer)
|
63
|
+
[](https://pypi.org/project/mcp-code-indexer/)
|
64
64
|
[](https://opensource.org/licenses/MIT)
|
65
65
|
|
66
66
|
A production-ready **Model Context Protocol (MCP) server** that revolutionizes how AI agents navigate and understand codebases. Built for high-concurrency environments with advanced database resilience, the server provides instant access to intelligent descriptions, semantic search, and context-aware recommendations while maintaining 800+ writes/sec throughput.
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/claude_api_handler.py
RENAMED
File without changes
|
File without changes
|
{mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/data/stop_words_english.txt
RENAMED
File without changes
|
File without changes
|
{mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/database/connection_health.py
RENAMED
File without changes
|
{mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/database/exceptions.py
RENAMED
File without changes
|
File without changes
|
{mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/database/retry_executor.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/middleware/__init__.py
RENAMED
File without changes
|
File without changes
|
{mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/migrations/001_initial.sql
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer/query_preprocessor.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer.egg-info/dependency_links.txt
RENAMED
File without changes
|
{mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer.egg-info/entry_points.txt
RENAMED
File without changes
|
{mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer.egg-info/requires.txt
RENAMED
File without changes
|
{mcp_code_indexer-3.1.1 → mcp_code_indexer-3.1.3}/src/mcp_code_indexer.egg-info/top_level.txt
RENAMED
File without changes
|