Add comprehensive bash script tests and fix old mcp/ path references

- Created tests/test_setup_scripts.py with 19 tests covering:
  * setup_mcp.sh validation (11 tests)
  * General bash script quality (4 tests)
  * MCP path consistency across codebase (4 tests)

- Fixed old 'mcp/' references in documentation:
  * docs/B1_COMPLETE_SUMMARY.md (3 refs)
  * docs/PDF_MCP_TOOL.md (2 refs)
  * docs/MCP_SETUP.md (18 refs)
  * docs/TEST_MCP_IN_CLAUDE_CODE.md (4 refs)

These tests would have caught Issue #157 before it reached users.

Tests verify:
- Bash syntax validity
- No hardcoded paths
- Correct skill_seeker_mcp/ directory references
- Files referenced in scripts actually exist
- No deprecated backticks
- Proper error handling (set -e)

All 19 tests passing 
This commit is contained in:
yusyus
2025-10-26 17:33:39 +03:00
parent d59f5867a8
commit 962b5b9340
5 changed files with 248 additions and 27 deletions

View File

@@ -143,7 +143,7 @@ The B1 task group adds complete PDF documentation support to Skill Seeker, enabl
### ✅ B1.7: Add MCP Tool scrape_pdf
**Commit:** `3fa1046`
**File:** `mcp/server.py` (updated)
**File:** `skill_seeker_mcp/server.py` (updated)
**Documentation:** `docs/PDF_MCP_TOOL.md`
**Deliverables:**
@@ -190,7 +190,7 @@ The B1 task group adds complete PDF documentation support to Skill Seeker, enabl
|-----------|-------|-------------|
| `pdf_extractor_poc.py` | 887 | Complete PDF extractor |
| `pdf_scraper.py` | 486 | Skill builder CLI |
| `mcp/server.py` | +35 | MCP tool integration |
| `skill_seeker_mcp/server.py` | +35 | MCP tool integration |
| **Total** | **1,408** | New code |
### Documentation Added
@@ -373,7 +373,7 @@ docs/B1_COMPLETE_SUMMARY.md # This file
### Modified Files
```
mcp/server.py # +35 lines - Added scrape_pdf tool
skill_seeker_mcp/server.py # +35 lines - Added scrape_pdf tool
```
### Total Impact

View File

@@ -58,7 +58,7 @@ Step-by-step guide to set up the Skill Seeker MCP server with Claude Code.
cd /path/to/Skill_Seekers
# Install MCP server dependencies
pip3 install -r mcp/requirements.txt
pip3 install -r skill_seeker_mcp/requirements.txt
# Install CLI tool dependencies (for scraping)
pip3 install requests beautifulsoup4
@@ -73,7 +73,7 @@ Successfully installed mcp-0.9.0 requests-2.31.0 beautifulsoup4-4.12.3
```bash
# Test MCP server can start
timeout 3 python3 mcp/server.py || echo "Server OK (timeout expected)"
timeout 3 python3 skill_seeker_mcp/server.py || echo "Server OK (timeout expected)"
# Should exit cleanly or timeout (both are normal)
```
@@ -134,7 +134,7 @@ nano ~/.config/claude-code/mcp.json
"skill-seeker": {
"command": "python3",
"args": [
"/Users/username/Projects/Skill_Seekers/mcp/server.py"
"/Users/username/Projects/Skill_Seekers/skill_seeker_mcp/server.py"
],
"cwd": "/Users/username/Projects/Skill_Seekers",
"env": {}
@@ -157,7 +157,7 @@ nano ~/.config/claude-code/mcp.json
"skill-seeker": {
"command": "python3",
"args": [
"/Users/username/Projects/Skill_Seekers/mcp/server.py"
"/Users/username/Projects/Skill_Seekers/skill_seeker_mcp/server.py"
],
"cwd": "/Users/username/Projects/Skill_Seekers"
}
@@ -317,7 +317,7 @@ Claude: [Scraping starts...]
3. **Test server manually:**
```bash
cd /path/to/Skill_Seekers
python3 mcp/server.py
python3 skill_seeker_mcp/server.py
# Should start without errors
```
@@ -333,14 +333,14 @@ Claude: [Scraping starts...]
**Solution:**
```bash
pip3 install -r mcp/requirements.txt
pip3 install -r skill_seeker_mcp/requirements.txt
```
### Issue: "Permission denied" when running server
**Solution:**
```bash
chmod +x mcp/server.py
chmod +x skill_seeker_mcp/server.py
```
### Issue: Tools appear but don't work
@@ -399,7 +399,7 @@ chmod +x mcp/server.py
"mcpServers": {
"skill-seeker": {
"command": "python3",
"args": ["/path/to/Skill_Seekers/mcp/server.py"],
"args": ["/path/to/Skill_Seekers/skill_seeker_mcp/server.py"],
"cwd": "/path/to/Skill_Seekers",
"env": {
"ANTHROPIC_API_KEY": "sk-ant-...",
@@ -419,7 +419,7 @@ If you have multiple Python versions:
"mcpServers": {
"skill-seeker": {
"command": "/usr/local/bin/python3.11",
"args": ["/path/to/Skill_Seekers/mcp/server.py"],
"args": ["/path/to/Skill_Seekers/skill_seeker_mcp/server.py"],
"cwd": "/path/to/Skill_Seekers"
}
}
@@ -435,7 +435,7 @@ To use a Python virtual environment:
cd /path/to/Skill_Seekers
python3 -m venv venv
source venv/bin/activate
pip install -r mcp/requirements.txt
pip install -r skill_seeker_mcp/requirements.txt
pip install requests beautifulsoup4
which python3
# Copy this path for config
@@ -446,7 +446,7 @@ which python3
"mcpServers": {
"skill-seeker": {
"command": "/path/to/Skill_Seekers/venv/bin/python3",
"args": ["/path/to/Skill_Seekers/mcp/server.py"],
"args": ["/path/to/Skill_Seekers/skill_seeker_mcp/server.py"],
"cwd": "/path/to/Skill_Seekers"
}
}
@@ -464,7 +464,7 @@ Enable verbose logging:
"command": "python3",
"args": [
"-u",
"/path/to/Skill_Seekers/mcp/server.py"
"/path/to/Skill_Seekers/skill_seeker_mcp/server.py"
],
"cwd": "/path/to/Skill_Seekers",
"env": {
@@ -487,7 +487,7 @@ Enable verbose logging:
"skill-seeker": {
"command": "python3",
"args": [
"/Users/username/Projects/Skill_Seekers/mcp/server.py"
"/Users/username/Projects/Skill_Seekers/skill_seeker_mcp/server.py"
],
"cwd": "/Users/username/Projects/Skill_Seekers"
}
@@ -503,7 +503,7 @@ Enable verbose logging:
"skill-seeker": {
"command": "python3",
"args": [
"/Users/username/Projects/Skill_Seekers/mcp/server.py"
"/Users/username/Projects/Skill_Seekers/skill_seeker_mcp/server.py"
],
"cwd": "/Users/username/Projects/Skill_Seekers",
"env": {
@@ -525,7 +525,7 @@ Enable verbose logging:
cd ~/Projects
git clone https://github.com/yusufkaraaslan/Skill_Seekers.git
cd Skill_Seekers
pip3 install -r mcp/requirements.txt
pip3 install -r skill_seeker_mcp/requirements.txt
pip3 install requests beautifulsoup4
# 2. Configure
@@ -536,7 +536,7 @@ cat > ~/.config/claude-code/mcp.json << 'EOF'
"skill-seeker": {
"command": "python3",
"args": [
"/Users/username/Projects/Skill_Seekers/mcp/server.py"
"/Users/username/Projects/Skill_Seekers/skill_seeker_mcp/server.py"
],
"cwd": "/Users/username/Projects/Skill_Seekers"
}
@@ -593,7 +593,7 @@ After successful setup:
```
SETUP:
1. Install dependencies: pip3 install -r mcp/requirements.txt
1. Install dependencies: pip3 install -r skill_seeker_mcp/requirements.txt
2. Configure: ~/.config/claude-code/mcp.json
3. Restart Claude Code
@@ -609,7 +609,7 @@ GENERATE SKILL:
TROUBLESHOOTING:
- Check: cat ~/.config/claude-code/mcp.json
- Test: python3 mcp/server.py
- Test: python3 skill_seeker_mcp/server.py
- Logs: ~/Library/Logs/Claude Code/
```

View File

@@ -165,7 +165,7 @@ Returns `TextContent` with:
### MCP Server Changes
**Location:** `mcp/server.py`
**Location:** `skill_seeker_mcp/server.py`
**Changes:**
1. Added `scrape_pdf` to `list_tools()` (lines 220-249)
@@ -304,7 +304,7 @@ Error: json.decoder.JSONDecodeError: Expecting value: line 1 column 1
```bash
# 1. Start MCP server
python3 mcp/server.py
python3 skill_seeker_mcp/server.py
# 2. Test with MCP client or via Claude Code

View File

@@ -45,7 +45,7 @@ Add this configuration (replace `/path/to/` with your actual path):
"skill-seeker": {
"command": "python3",
"args": [
"/mnt/1ece809a-2821-4f10-aecb-fcdf34760c0b/Git/Skill_Seekers/mcp/server.py"
"/mnt/1ece809a-2821-4f10-aecb-fcdf34760c0b/Git/Skill_Seekers/skill_seeker_mcp/server.py"
],
"cwd": "/mnt/1ece809a-2821-4f10-aecb-fcdf34760c0b/Git/Skill_Seekers"
}
@@ -245,7 +245,7 @@ Expected result: `output/svelte.zip` ready to upload to Claude!
2. Verify server can start:
```bash
cd /path/to/Skill_Seekers
python3 mcp/server.py
python3 skill_seeker_mcp/server.py
# Should start without errors (Ctrl+C to exit)
```
@@ -264,13 +264,13 @@ Expected result: `output/svelte.zip` ready to upload to Claude!
### Issue: "Permission Denied"
```bash
chmod +x mcp/server.py
chmod +x skill_seeker_mcp/server.py
```
### Issue: "Module Not Found"
```bash
pip3 install -r mcp/requirements.txt
pip3 install -r skill_seeker_mcp/requirements.txt
pip3 install requests beautifulsoup4
```