mcp-code-indexer 3.4.2__tar.gz → 3.4.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.
Files changed (35) hide show
  1. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/PKG-INFO +3 -3
  2. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/README.md +2 -2
  3. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/pyproject.toml +1 -1
  4. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/database/connection_health.py +2 -7
  5. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/main.py +2 -0
  6. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/server/mcp_server.py +9 -10
  7. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/LICENSE +0 -0
  8. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/__init__.py +0 -0
  9. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/__main__.py +0 -0
  10. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/ask_handler.py +0 -0
  11. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/claude_api_handler.py +0 -0
  12. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/cleanup_manager.py +0 -0
  13. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/data/stop_words_english.txt +0 -0
  14. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/database/__init__.py +0 -0
  15. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/database/database.py +0 -0
  16. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/database/exceptions.py +0 -0
  17. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/database/models.py +0 -0
  18. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/database/retry_executor.py +0 -0
  19. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/deepask_handler.py +0 -0
  20. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/error_handler.py +0 -0
  21. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/file_scanner.py +0 -0
  22. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/git_hook_handler.py +0 -0
  23. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/logging_config.py +0 -0
  24. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/middleware/__init__.py +0 -0
  25. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/middleware/error_middleware.py +0 -0
  26. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/migrations/001_initial.sql +0 -0
  27. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/migrations/002_performance_indexes.sql +0 -0
  28. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/migrations/003_project_overviews.sql +0 -0
  29. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/migrations/004_remove_branch_dependency.sql +0 -0
  30. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/migrations/005_remove_git_remotes.sql +0 -0
  31. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/query_preprocessor.py +0 -0
  32. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/server/__init__.py +0 -0
  33. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/tiktoken_cache/9b5ad71b2ce5302211f9c61530b329a4922fc6a4 +0 -0
  34. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/token_counter.py +0 -0
  35. {mcp_code_indexer-3.4.2 → mcp_code_indexer-3.4.3}/src/mcp_code_indexer/tools/__init__.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: mcp-code-indexer
3
- Version: 3.4.2
3
+ Version: 3.4.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
  License: MIT
6
6
  Keywords: mcp,model-context-protocol,code-indexer,ai-tools,codebase-navigation,file-descriptions,llm-tools
@@ -40,8 +40,8 @@ Description-Content-Type: text/markdown
40
40
 
41
41
  # MCP Code Indexer 🚀
42
42
 
43
- [![PyPI version](https://badge.fury.io/py/mcp-code-indexer.svg?33)](https://badge.fury.io/py/mcp-code-indexer)
44
- [![Python](https://img.shields.io/pypi/pyversions/mcp-code-indexer.svg?33)](https://pypi.org/project/mcp-code-indexer/)
43
+ [![PyPI version](https://badge.fury.io/py/mcp-code-indexer.svg?34)](https://badge.fury.io/py/mcp-code-indexer)
44
+ [![Python](https://img.shields.io/pypi/pyversions/mcp-code-indexer.svg?34)](https://pypi.org/project/mcp-code-indexer/)
45
45
  [![License](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
46
46
 
47
47
  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
- [![PyPI version](https://badge.fury.io/py/mcp-code-indexer.svg?33)](https://badge.fury.io/py/mcp-code-indexer)
4
- [![Python](https://img.shields.io/pypi/pyversions/mcp-code-indexer.svg?33)](https://pypi.org/project/mcp-code-indexer/)
3
+ [![PyPI version](https://badge.fury.io/py/mcp-code-indexer.svg?34)](https://badge.fury.io/py/mcp-code-indexer)
4
+ [![Python](https://img.shields.io/pypi/pyversions/mcp-code-indexer.svg?34)](https://pypi.org/project/mcp-code-indexer/)
5
5
  [![License](https://img.shields.io/badge/License-MIT-blue.svg)](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 = "poetry.core.masonry.api"
4
4
 
5
5
  [tool.poetry]
6
6
  name = "mcp-code-indexer"
7
- version = "3.4.2"
7
+ version = "3.4.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
  authors = ["MCP Code Indexer Contributors"]
10
10
  maintainers = ["MCP Code Indexer Contributors"]
@@ -336,13 +336,8 @@ class ConnectionHealthMonitor:
336
336
  if retry_executor:
337
337
  health_status["retry_statistics"] = retry_executor.get_retry_stats()
338
338
 
339
- # Include database-level statistics if available
340
- if hasattr(self.database_manager, "get_database_stats"):
341
- try:
342
- db_stats = self.database_manager.get_database_stats()
343
- health_status["database_statistics"] = db_stats
344
- except Exception as e:
345
- logger.warning(f"Failed to get database statistics: {e}")
339
+ # Avoid circular dependency - don't include database stats here
340
+ # (they are included separately in the comprehensive diagnostics)
346
341
 
347
342
  return health_status
348
343
 
@@ -321,6 +321,7 @@ async def handle_runcommand(args: argparse.Namespace) -> None:
321
321
  "update_codebase_overview": server._handle_update_codebase_overview,
322
322
  "get_word_frequency": server._handle_get_word_frequency,
323
323
  "search_codebase_overview": server._handle_search_codebase_overview,
324
+ "check_database_health": server._handle_check_database_health,
324
325
  }
325
326
 
326
327
  if tool_name not in tool_handlers:
@@ -333,6 +334,7 @@ async def handle_runcommand(args: argparse.Namespace) -> None:
333
334
  }
334
335
  },
335
336
  )
337
+
336
338
  error_result = {
337
339
  "error": {"code": -32601, "message": f"Unknown tool: {tool_name}"}
338
340
  }
@@ -1337,16 +1337,15 @@ class MCPCodeIndexServer:
1337
1337
  database_stats = self.db_manager.get_database_stats()
1338
1338
 
1339
1339
  return {
1340
- "comprehensive_diagnostics": comprehensive_diagnostics,
1341
- "database_statistics": database_stats,
1342
- "configuration": {
1343
- **self.db_config,
1344
- "retry_executor_config": (
1345
- self.db_manager._retry_executor.config.__dict__
1346
- if hasattr(self.db_manager, "_retry_executor")
1347
- and self.db_manager._retry_executor
1348
- else {}
1349
- ),
1340
+ "is_healthy": comprehensive_diagnostics.get("current_status", {}).get("is_healthy", True),
1341
+ "status": comprehensive_diagnostics.get("current_status", {}),
1342
+ "performance": {
1343
+ "avg_response_time_ms": comprehensive_diagnostics.get("metrics", {}).get("avg_response_time_ms", 0),
1344
+ "success_rate": comprehensive_diagnostics.get("current_status", {}).get("recent_success_rate_percent", 100)
1345
+ },
1346
+ "database": {
1347
+ "total_operations": database_stats.get("retry_executor", {}).get("total_operations", 0),
1348
+ "pool_size": database_stats.get("connection_pool", {}).get("current_size", 0)
1350
1349
  },
1351
1350
  "server_info": {
1352
1351
  "token_limit": self.token_limit,