schwab_mcp 0.1.0

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 (42) hide show
  1. checksums.yaml +7 -0
  2. data/.copilotignore +3 -0
  3. data/.rspec +3 -0
  4. data/.rubocop.yml +8 -0
  5. data/CHANGELOG.md +5 -0
  6. data/CODE_OF_CONDUCT.md +132 -0
  7. data/LICENSE.txt +21 -0
  8. data/README.md +157 -0
  9. data/Rakefile +12 -0
  10. data/exe/schwab_mcp +19 -0
  11. data/exe/schwab_token_refresh +38 -0
  12. data/exe/schwab_token_reset +49 -0
  13. data/lib/schwab_mcp/loggable.rb +31 -0
  14. data/lib/schwab_mcp/logger.rb +62 -0
  15. data/lib/schwab_mcp/option_chain_filter.rb +213 -0
  16. data/lib/schwab_mcp/orders/iron_condor_order.rb +87 -0
  17. data/lib/schwab_mcp/orders/order_factory.rb +40 -0
  18. data/lib/schwab_mcp/orders/vertical_order.rb +62 -0
  19. data/lib/schwab_mcp/redactor.rb +210 -0
  20. data/lib/schwab_mcp/resources/.keep +0 -0
  21. data/lib/schwab_mcp/tools/cancel_order_tool.rb +226 -0
  22. data/lib/schwab_mcp/tools/get_market_hours_tool.rb +104 -0
  23. data/lib/schwab_mcp/tools/get_order_tool.rb +263 -0
  24. data/lib/schwab_mcp/tools/get_price_history_tool.rb +203 -0
  25. data/lib/schwab_mcp/tools/help_tool.rb +406 -0
  26. data/lib/schwab_mcp/tools/list_account_orders_tool.rb +295 -0
  27. data/lib/schwab_mcp/tools/list_account_transactions_tool.rb +311 -0
  28. data/lib/schwab_mcp/tools/list_movers_tool.rb +125 -0
  29. data/lib/schwab_mcp/tools/list_schwab_accounts_tool.rb +162 -0
  30. data/lib/schwab_mcp/tools/option_chain_tool.rb +274 -0
  31. data/lib/schwab_mcp/tools/option_strategy_finder_tool.rb +378 -0
  32. data/lib/schwab_mcp/tools/place_order_tool.rb +305 -0
  33. data/lib/schwab_mcp/tools/preview_order_tool.rb +259 -0
  34. data/lib/schwab_mcp/tools/quote_tool.rb +77 -0
  35. data/lib/schwab_mcp/tools/quotes_tool.rb +110 -0
  36. data/lib/schwab_mcp/tools/replace_order_tool.rb +312 -0
  37. data/lib/schwab_mcp/tools/schwab_account_details_tool.rb +208 -0
  38. data/lib/schwab_mcp/version.rb +5 -0
  39. data/lib/schwab_mcp.rb +107 -0
  40. data/sig/schwab_mcp.rbs +4 -0
  41. data/start_mcp_server.sh +4 -0
  42. metadata +115 -0
metadata ADDED
@@ -0,0 +1,115 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: schwab_mcp
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Joseph Platta
8
+ bindir: exe
9
+ cert_chain: []
10
+ date: 2025-07-17 00:00:00.000000000 Z
11
+ dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: mcp
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - ">="
17
+ - !ruby/object:Gem::Version
18
+ version: '0'
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - ">="
24
+ - !ruby/object:Gem::Version
25
+ version: '0'
26
+ - !ruby/object:Gem::Dependency
27
+ name: schwab_rb
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: '0'
40
+ description: A Model Context Protocol server that provides Claude with access to Schwab
41
+ trading API for quotes and market data
42
+ email:
43
+ - jwplatta@gmail.com
44
+ executables:
45
+ - schwab_mcp
46
+ - schwab_token_refresh
47
+ - schwab_token_reset
48
+ extensions: []
49
+ extra_rdoc_files: []
50
+ files:
51
+ - ".copilotignore"
52
+ - ".rspec"
53
+ - ".rubocop.yml"
54
+ - CHANGELOG.md
55
+ - CODE_OF_CONDUCT.md
56
+ - LICENSE.txt
57
+ - README.md
58
+ - Rakefile
59
+ - exe/schwab_mcp
60
+ - exe/schwab_token_refresh
61
+ - exe/schwab_token_reset
62
+ - lib/schwab_mcp.rb
63
+ - lib/schwab_mcp/loggable.rb
64
+ - lib/schwab_mcp/logger.rb
65
+ - lib/schwab_mcp/option_chain_filter.rb
66
+ - lib/schwab_mcp/orders/iron_condor_order.rb
67
+ - lib/schwab_mcp/orders/order_factory.rb
68
+ - lib/schwab_mcp/orders/vertical_order.rb
69
+ - lib/schwab_mcp/redactor.rb
70
+ - lib/schwab_mcp/resources/.keep
71
+ - lib/schwab_mcp/tools/cancel_order_tool.rb
72
+ - lib/schwab_mcp/tools/get_market_hours_tool.rb
73
+ - lib/schwab_mcp/tools/get_order_tool.rb
74
+ - lib/schwab_mcp/tools/get_price_history_tool.rb
75
+ - lib/schwab_mcp/tools/help_tool.rb
76
+ - lib/schwab_mcp/tools/list_account_orders_tool.rb
77
+ - lib/schwab_mcp/tools/list_account_transactions_tool.rb
78
+ - lib/schwab_mcp/tools/list_movers_tool.rb
79
+ - lib/schwab_mcp/tools/list_schwab_accounts_tool.rb
80
+ - lib/schwab_mcp/tools/option_chain_tool.rb
81
+ - lib/schwab_mcp/tools/option_strategy_finder_tool.rb
82
+ - lib/schwab_mcp/tools/place_order_tool.rb
83
+ - lib/schwab_mcp/tools/preview_order_tool.rb
84
+ - lib/schwab_mcp/tools/quote_tool.rb
85
+ - lib/schwab_mcp/tools/quotes_tool.rb
86
+ - lib/schwab_mcp/tools/replace_order_tool.rb
87
+ - lib/schwab_mcp/tools/schwab_account_details_tool.rb
88
+ - lib/schwab_mcp/version.rb
89
+ - sig/schwab_mcp.rbs
90
+ - start_mcp_server.sh
91
+ homepage: https://github.com/jwplatta/schwab_mcp
92
+ licenses:
93
+ - MIT
94
+ metadata:
95
+ homepage_uri: https://github.com/jwplatta/schwab_mcp
96
+ source_code_uri: https://github.com/jwplatta/schwab_mcp
97
+ changelog_uri: https://github.com/jwplatta/schwab_mcp/blob/main/CHANGELOG.md
98
+ rdoc_options: []
99
+ require_paths:
100
+ - lib
101
+ required_ruby_version: !ruby/object:Gem::Requirement
102
+ requirements:
103
+ - - ">="
104
+ - !ruby/object:Gem::Version
105
+ version: 3.1.0
106
+ required_rubygems_version: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ requirements: []
112
+ rubygems_version: 3.6.3
113
+ specification_version: 4
114
+ summary: MCP server for Schwab API integration
115
+ test_files: []