bn-facebook-mcp-server 0.0.1

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 (51) hide show
  1. package/README.md +245 -0
  2. package/dist/debug-middleware.d.ts +12 -0
  3. package/dist/debug-middleware.d.ts.map +1 -0
  4. package/dist/debug-middleware.js +36 -0
  5. package/dist/debug-middleware.js.map +1 -0
  6. package/dist/facebook-api-client.d.ts +68 -0
  7. package/dist/facebook-api-client.d.ts.map +1 -0
  8. package/dist/facebook-api-client.js +206 -0
  9. package/dist/facebook-api-client.js.map +1 -0
  10. package/dist/index.d.ts +9 -0
  11. package/dist/index.d.ts.map +1 -0
  12. package/dist/index.js +132 -0
  13. package/dist/index.js.map +1 -0
  14. package/dist/schemas.d.ts +81 -0
  15. package/dist/schemas.d.ts.map +1 -0
  16. package/dist/schemas.js +170 -0
  17. package/dist/schemas.js.map +1 -0
  18. package/dist/tool-loader.d.ts +35 -0
  19. package/dist/tool-loader.d.ts.map +1 -0
  20. package/dist/tool-loader.js +125 -0
  21. package/dist/tool-loader.js.map +1 -0
  22. package/dist/tool-registry.d.ts +44 -0
  23. package/dist/tool-registry.d.ts.map +1 -0
  24. package/dist/tool-registry.js +54 -0
  25. package/dist/tool-registry.js.map +1 -0
  26. package/dist/tools/index.d.ts +5 -0
  27. package/dist/tools/index.d.ts.map +1 -0
  28. package/dist/tools/index.js +6 -0
  29. package/dist/tools/index.js.map +1 -0
  30. package/dist/tools/instagram.d.ts +9 -0
  31. package/dist/tools/instagram.d.ts.map +1 -0
  32. package/dist/tools/instagram.js +9 -0
  33. package/dist/tools/instagram.js.map +1 -0
  34. package/dist/tools/pages.d.ts +8 -0
  35. package/dist/tools/pages.d.ts.map +1 -0
  36. package/dist/tools/pages.js +8 -0
  37. package/dist/tools/pages.js.map +1 -0
  38. package/dist/tools/system.d.ts +7 -0
  39. package/dist/tools/system.d.ts.map +1 -0
  40. package/dist/tools/system.js +7 -0
  41. package/dist/tools/system.js.map +1 -0
  42. package/dist/tools/user.d.ts +105 -0
  43. package/dist/tools/user.d.ts.map +1 -0
  44. package/dist/tools/user.js +139 -0
  45. package/dist/tools/user.js.map +1 -0
  46. package/dist/types.d.ts +111 -0
  47. package/dist/types.d.ts.map +1 -0
  48. package/dist/types.js +5 -0
  49. package/dist/types.js.map +1 -0
  50. package/package.json +46 -0
  51. package/tools.json +108 -0
package/tools.json ADDED
@@ -0,0 +1,108 @@
1
+ {
2
+ "get_me": {
3
+ "name": "get_me",
4
+ "description": "Get the current user's Facebook profile information.\n\n**Use Cases:**\n- Verify the authenticated user\n- Get user's name, email, profile picture\n- Check what user data is accessible\n\n**Required Permission:** public_profile (always granted)\n**Optional Permission:** email (for email field)\n\n**Returns:** User profile with id, name, email (if permitted), profile picture URL.",
5
+ "inputSchema": {
6
+ "type": "object",
7
+ "properties": {
8
+ "fields": {
9
+ "type": "string",
10
+ "description": "Comma-separated list of user profile fields.\n\n**Default:** \"id,name,email,first_name,last_name,picture.width(200).height(200)\"\n\n**Available Fields:**\n- id - Facebook user ID\n- name - Full name\n- email - Primary email (requires email permission)\n- first_name, last_name - Name parts\n- picture - Profile picture URL\n- birthday, gender, hometown, location (if permissions allow)"
11
+ }
12
+ }
13
+ }
14
+ },
15
+ "get_friends": {
16
+ "name": "get_friends",
17
+ "description": "Get list of user's Facebook friends.\n\n**Use Cases:**\n- See friends who also use the app\n- Get friend profile info\n\n**Required Permission:** user_friends\n\n**Note:** Only returns friends who have also authorized the app.\n\n**Returns:** Array of friends with id, name, and profile picture.",
18
+ "inputSchema": {
19
+ "type": "object",
20
+ "properties": {
21
+ "limit": {
22
+ "type": "number",
23
+ "description": "Maximum friends to retrieve (1-100).\n\n**Default:** 25"
24
+ },
25
+ "fields": {
26
+ "type": "string",
27
+ "description": "Comma-separated list of friend fields.\n\n**Default:** \"id,name,picture\""
28
+ }
29
+ }
30
+ }
31
+ },
32
+ "get_photos": {
33
+ "name": "get_photos",
34
+ "description": "Get user's uploaded photos.\n\n**Use Cases:**\n- Browse user's photo albums\n- Get photo URLs and metadata\n\n**Required Permission:** user_photos\n\n**Returns:** Array of photos with id, name, URLs, and timestamps.",
35
+ "inputSchema": {
36
+ "type": "object",
37
+ "properties": {
38
+ "limit": {
39
+ "type": "number",
40
+ "description": "Maximum photos to retrieve (1-100).\n\n**Default:** 25"
41
+ },
42
+ "fields": {
43
+ "type": "string",
44
+ "description": "Comma-separated list of photo fields.\n\n**Default:** \"id,name,picture,created_time,link,images\""
45
+ }
46
+ }
47
+ }
48
+ },
49
+ "get_user_posts": {
50
+ "name": "get_user_posts",
51
+ "description": "Get user's timeline posts.\n\n**Use Cases:**\n- Browse user's posts\n- Analyze engagement metrics\n- Get post content and media\n\n**Required Permission:** user_posts\n\n**Returns:** Array of posts with content, engagement metrics, and timestamps.",
52
+ "inputSchema": {
53
+ "type": "object",
54
+ "properties": {
55
+ "limit": {
56
+ "type": "number",
57
+ "description": "Maximum posts to retrieve (1-100).\n\n**Default:** 25"
58
+ },
59
+ "fields": {
60
+ "type": "string",
61
+ "description": "Comma-separated list of post fields.\n\n**Default:** \"id,message,story,created_time,full_picture,permalink_url,shares,likes.summary(true),comments.summary(true)\""
62
+ }
63
+ }
64
+ }
65
+ },
66
+ "get_videos": {
67
+ "name": "get_videos",
68
+ "description": "Get user's uploaded videos.\n\n**Use Cases:**\n- Browse user's video library\n- Get video URLs and metadata\n\n**Required Permission:** user_videos\n\n**Returns:** Array of videos with id, title, description, and thumbnails.",
69
+ "inputSchema": {
70
+ "type": "object",
71
+ "properties": {
72
+ "limit": {
73
+ "type": "number",
74
+ "description": "Maximum videos to retrieve (1-100).\n\n**Default:** 25"
75
+ },
76
+ "fields": {
77
+ "type": "string",
78
+ "description": "Comma-separated list of video fields.\n\n**Default:** \"id,title,description,created_time,permalink_url,thumbnails,length\""
79
+ }
80
+ }
81
+ }
82
+ },
83
+ "get_likes": {
84
+ "name": "get_likes",
85
+ "description": "Get pages/things the user has liked.\n\n**Use Cases:**\n- See user's interests\n- Get liked page information\n\n**Required Permission:** user_likes\n\n**Returns:** Array of liked pages with id, name, category, and fan count.",
86
+ "inputSchema": {
87
+ "type": "object",
88
+ "properties": {
89
+ "limit": {
90
+ "type": "number",
91
+ "description": "Maximum liked pages to retrieve (1-100).\n\n**Default:** 25"
92
+ },
93
+ "fields": {
94
+ "type": "string",
95
+ "description": "Comma-separated list of page fields.\n\n**Default:** \"id,name,category,picture,fan_count\""
96
+ }
97
+ }
98
+ }
99
+ },
100
+ "get_permissions": {
101
+ "name": "get_permissions",
102
+ "description": "Get list of permissions granted to the current access token.\n\n**Use Cases:**\n- Verify what data you can access\n- Debug permission-related errors\n- Check if user granted required permissions\n\n**No parameters required.**\n\n**Returns:** Array of permission objects with name and status (granted/declined).",
103
+ "inputSchema": {
104
+ "type": "object",
105
+ "properties": {}
106
+ }
107
+ }
108
+ }